6 #include "libgeda_priv.h"
8 char const *test_page
[] = {
10 "C 46400 48000 1 270 0 EMBEDDEDopamp.sym",
12 "P 600 1000 600 800 1 0 0",
14 "T 900 500 8 10 1 1 0 0 1",
17 "P 600 200 600 0 1 0 1",
20 "V 500 501 315 3 0 0 0 -1 -1 0 -1 -1 -1 -1 -1",
21 "L 600 200 400 400 3 0 0 0 -1 -1",
22 "L 600 800 400 600 3 0 0 0 -1 -1",
23 "L 400 700 400 300 3 0 0 0 -1 -1",
24 "L 400 500 184 500 3 0 0 0 -1 -1",
25 "L 600 200 564 272 3 0 0 0 -1 -1",
26 "L 600 200 528 236 3 0 0 0 -1 -1",
27 "L 528 236 564 272 3 0 0 0 -1 -1",
31 char prim_objs
[] = "PTPVLLLLLLL*";
34 summarize_object(OBJECT
*o_current
, void *context
)
36 char **control
= context
;
40 /* Failure is idempotent. */
43 /* Visiting more objects than expected. */
47 if (o_current
->type
== **control
) {
48 /* Skip to next object. */
51 /* Mark failure, and don't skip past the test. */
65 char *cursor
= prim_objs
;
69 toplevel
= s_toplevel_new();
70 toplevel
->font_directory
= "../../symbols/font";
71 page
= s_page_new(toplevel
, "test");
72 s_toplevel_goto_page(toplevel
, page
);
74 buf
= g_strjoinv("\n", test_page
);
75 o_read_buffer(toplevel
, page
->object_tail
, buf
, strlen(buf
), "test");
78 s_visit_object(page
->object_head
->next
, &summarize_object
, &cursor
,
81 return(!!strcmp(prim_objs
, "ppppppppppp*"));