Hegel
0.11.4
Property-based testing for C++
Loading...
Searching...
No Matches
formats.h
1
#pragma once
2
3
#include <string>
4
5
#include "hegel/core.h"
6
7
namespace
hegel::generators
{
8
9
// =============================================================================
10
// Parameter structs
11
// =============================================================================
12
16
struct
DomainsParams
{
17
size_t
max_length
= 255;
18
};
19
23
struct
IpAddressesParams
{
24
std::optional<int>
v
;
25
};
26
30
struct
UuidsParams
{
32
std::optional<int>
version
;
33
};
34
37
47
Generator<std::string>
emails
();
48
58
Generator<std::string>
domains
(
DomainsParams
params = {});
59
68
Generator<std::string>
urls
();
69
71
74
89
Generator<std::string>
ip_addresses
(
IpAddressesParams
params = {});
90
102
Generator<std::string>
uuids
(
UuidsParams
params = {});
103
105
108
118
Generator<std::string>
dates
();
119
129
Generator<std::string>
times
();
130
142
Generator<std::string>
datetimes
();
143
145
146
}
// namespace hegel::generators
hegel::generators::Generator
The base class of all generators.
Definition
core.h:67
hegel::generators
Hegel generators.
Definition
core.h:17
hegel::generators::domains
Generator< std::string > domains(DomainsParams params={})
Generate valid domain names.
hegel::generators::uuids
Generator< std::string > uuids(UuidsParams params={})
Generate UUIDs in canonical hyphenated form.
hegel::generators::datetimes
Generator< std::string > datetimes()
Generate datetimes.
hegel::generators::times
Generator< std::string > times()
Generate times of day.
hegel::generators::emails
Generator< std::string > emails()
Generate valid email addresses.
hegel::generators::ip_addresses
Generator< std::string > ip_addresses(IpAddressesParams params={})
Generate IP addresses.
hegel::generators::dates
Generator< std::string > dates()
Generate calendar dates.
hegel::generators::urls
Generator< std::string > urls()
Generate valid URLs.
hegel::generators::DomainsParams
Parameters for domains() generator.
Definition
formats.h:16
hegel::generators::DomainsParams::max_length
size_t max_length
Maximum domain name length.
Definition
formats.h:17
hegel::generators::IpAddressesParams
Parameters for ip_addresses() generator.
Definition
formats.h:23
hegel::generators::IpAddressesParams::v
std::optional< int > v
IP version: 4, 6, or nullopt for both.
Definition
formats.h:24
hegel::generators::UuidsParams
Parameters for uuids() generator.
Definition
formats.h:30
hegel::generators::UuidsParams::version
std::optional< int > version
RFC 4122 version to force (1-5), or nullopt for any version.
Definition
formats.h:32
include
hegel
generators
formats.h
Generated by
1.15.0