22 {
23 complex_data_option opt = complex_data_option_empty();
24 assert(!complex_data_option_is_present(&opt));
25
26
27 assert(!complex_data_option_get(&opt));
28 assert(!complex_data_option_get_const(&opt));
29
30 bool was_present_1 = complex_data_option_replace(
31 &opt, (
struct complex_data){.x = 42, .y = 3.14, .description = strdup(
"A complex data")});
32 assert(!was_present_1);
33
34 assert(complex_data_option_is_present(&opt));
35 assert(complex_data_option_get(&opt));
36
37 bool was_present_2 = complex_data_option_replace(
38 &opt,
39 (
struct complex_data){.x = 100, .y = 2.71, .description = strdup(
"Another complex data")});
40 assert(was_present_2);
41
42 complex_data_option_delete(&opt);
43}