TTS v3.0.0
The Tiny Test System
 
Loading...
Searching...
No Matches
tts::as_signed_integer< G > Struct Template Reference

Converts a generator to produce integer values. More...

Detailed Description

template<typename G>
struct tts::as_signed_integer< G >

Converts a generator to produce integer values.

This generator adapter takes a generator g and produces signed integer values by generating values using g and converting them to integers. The conversion is done by interpreting the generated values as integers of the same size as the base type of the target type.

Example

#define TTS_MAIN // No need for main()
#include <tts/tts.hpp>
TTS_CASE_WITH("Test tts::ramp generator",
(float, double),
tts::randoms {-10, 10}
})
<typename T>(T value)
{
TTS_EXPECT(std::is_integral_v<decltype(value)>);
TTS_EXPECT(std::is_signed_v<decltype(value)>);
TTS_LESS_EQUAL(value, T {10});
TTS_GREATER_EQUAL(value, T {-10});
};
#define TTS_EXPECT(EXPR,...)
Check if a given expression evaluates to true.
Definition basic.hpp:43
#define TTS_LESS_EQUAL(LHS, RHS,...)
Performs less-or-equal-than comparison between two expressions.
Definition relation.hpp:218
#define TTS_GREATER_EQUAL(LHS, RHS,...)
Performs greater-or-equal-than comparison between two expressions.
Definition relation.hpp:239
#define TTS_CASE_WITH(ID, TYPES,...)
Introduces a template test case providing dynamically generated data to the test code.
Definition case.hpp:207
auto constexpr typename_
Evaluates to an object containing the name of the type T in readable form.
Definition typename.hpp:153
Converts a generator to produce integer values.
Definition generator.hpp:610
Random generator between two bounds using realistic_distribution.
Definition generator.hpp:523
Template Parameters
GType of the generator to adapt