MCPcopy Create free account
hub / github.com/emscripten-core/emscripten / c1

Function c1

test/browser/test_worker_api_2.c:70–99  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

68}
69
70void c1(char *data, int size, void *arg) { // tests copying + buffer enlargement
71 assert((long)arg == stage);
72 if (stage == 1) {
73 printf("wait 0? %d\n", emscripten_get_worker_queue_size(w1));
74 assert(emscripten_get_worker_queue_size(w1) == 0);
75 }
76 Info *x2 = (Info*)data;
77 assert(x2 != x && x2 != x+1 && x2 != x+2);
78 for (int i = 0; i < size/sizeof(Info); i++) {
79 printf("c1-%d\n", i);
80 printf(" %d, %.2f, %d, %.2f\n", x2[i].i, x2[i].f, x2[i].c, x2[i].d);
81 printf(" %d, %.2f, %d, %.2f\n", x[i].i, x[i].f, x[i].c, x[i].d);
82 assert(x2[i].i == x[i].i);
83 assert(x2[i].f == x[i].f);
84 assert(x2[i].c == x[i].c);
85 assert(x2[i].d == x[i].d);
86 }
87 if (stage < 2) {
88 emscripten_call_worker(w1, "one", (char*)x, sizeof(Info)*3, c1, (void*)2);
89 } else {
90 printf("wait 1? %d\n", emscripten_get_worker_queue_size(w1));
91 assert(emscripten_get_worker_queue_size(w1) == 0);
92 emscripten_call_worker(w1, "two", (char*)&x[0], sizeof(Info), c2, (void*)3);
93 emscripten_call_worker(w1, "two", (char*)&x[1], sizeof(Info), c2, (void*)4);
94 emscripten_call_worker(w1, "two", (char*)&x[2], sizeof(Info), c2, (void*)5);
95 printf("wait 2? %d\n", emscripten_get_worker_queue_size(w1));
96 assert(emscripten_get_worker_queue_size(w1) == 3);
97 }
98 stage++;
99}
100
101int main() {
102 w1 = emscripten_create_worker("worker.js");

Callers

nothing calls this directly

Calls 2

printfFunction · 0.85
assertFunction · 0.50

Tested by

no test coverage detected