1 
2 #include <igraph.h>
3 
4 #include "test_utilities.inc"
5 
6 #define BIGRAPHICAL_PRINT_DESTROY(deg1, deg2) \
7     igraph_is_bigraphical(&(deg1), &(deg2), IGRAPH_SIMPLE_SW, &simple); \
8     igraph_is_bigraphical(&(deg1), &(deg2), IGRAPH_MULTI_SW, &multi); \
9     print_vector_round(&(deg1)); \
10     print_vector_round(&(deg2)); \
11     printf("simple: %s, multi: %s\n\n", simple ? "true" : "false", multi ? "true" : "false"); \
12     igraph_vector_destroy(&(deg1)); \
13     igraph_vector_destroy(&(deg2));
14 
main()15 int main() {
16     igraph_vector_t deg1, deg2;
17     igraph_bool_t simple, multi;
18 
19     igraph_vector_init(&deg1, 0);
20     igraph_vector_init(&deg2, 0);
21     BIGRAPHICAL_PRINT_DESTROY(deg1, deg2);
22 
23     igraph_vector_init_int_end(&deg1, -1, 3, 3, -1);
24     igraph_vector_init_int_end(&deg2, -1, 1, 2, 3, -1);
25     BIGRAPHICAL_PRINT_DESTROY(deg1, deg2);
26 
27     igraph_vector_init_int_end(&deg1, -1, 3, 2, 1, -1);
28     igraph_vector_init_int_end(&deg2, -1, 1, 2, 3, -1);
29     BIGRAPHICAL_PRINT_DESTROY(deg1, deg2);
30 
31     igraph_vector_init_int_end(&deg1, -1, 1, 1, 1, 1, -1);
32     igraph_vector_init_int_end(&deg2, -1, 2, 3, -1);
33     BIGRAPHICAL_PRINT_DESTROY(deg1, deg2);
34 
35     igraph_vector_init_int_end(&deg1, -1, 1, 1, 1, 1, -1);
36     igraph_vector_init_int_end(&deg2, -1, 2, 2, -1);
37     BIGRAPHICAL_PRINT_DESTROY(deg1, deg2);
38 
39     igraph_vector_init_int_end(&deg1, -1, 1, 2, 0, 3, 0, -1);
40     igraph_vector_init_int_end(&deg2, -1, 2, 3, 1, -1);
41     BIGRAPHICAL_PRINT_DESTROY(deg1, deg2);
42 
43     VERIFY_FINALLY_STACK();
44 
45     return 0;
46 }
47