aboutsummaryrefslogtreecommitdiff
path: root/tests/emscripten_fs_api_browser.cpp
diff options
context:
space:
mode:
authorAlon Zakai <alonzakai@gmail.com>2012-12-31 11:38:39 -0800
committerAlon Zakai <alonzakai@gmail.com>2012-12-31 11:38:39 -0800
commita55c2a24a50a93fcf9035eb2a809d13d3a8d3555 (patch)
tree757ce2be8671f2b24838b9dd5da58740ffe7fba3 /tests/emscripten_fs_api_browser.cpp
parent3b2510764a224afc4e9f06c9e3dd92dad131ed55 (diff)
make browser fs api test robust
Diffstat (limited to 'tests/emscripten_fs_api_browser.cpp')
-rw-r--r--tests/emscripten_fs_api_browser.cpp40
1 files changed, 25 insertions, 15 deletions
diff --git a/tests/emscripten_fs_api_browser.cpp b/tests/emscripten_fs_api_browser.cpp
index ba5bf0a5..0355287a 100644
--- a/tests/emscripten_fs_api_browser.cpp
+++ b/tests/emscripten_fs_api_browser.cpp
@@ -13,6 +13,7 @@ int data_ok = 0;
int data_bad = 0;
void onLoadedData(void *arg, void *buffer, int size) {
+ printf("onLoadedData %d\n", (int)arg);
get_count++;
assert(size == 329895);
assert((int)arg == 135);
@@ -25,31 +26,41 @@ void onLoadedData(void *arg, void *buffer, int size) {
}
void onErrorData(void *arg) {
+ printf("onErrorData %d\n", (int)arg);
get_count++;
assert((int)arg == 246);
data_bad = 1;
}
+int counter = 0;
void wait_wgets() {
- printf("%d\n", get_count);
+ if (counter++ == 60) {
+ printf("%d\n", get_count);
+ counter = 0;
+ }
if (get_count == 3) {
- emscripten_async_wget_data(
- "http://localhost:8888/screenshot.png",
- (void*)135,
- onLoadedData,
- onErrorData);
- emscripten_async_wget_data(
- "http://localhost:8888/fail_me",
- (void*)246,
- onLoadedData,
- onErrorData);
+ static bool fired = false;
+ if (!fired) {
+ fired = true;
+ emscripten_async_wget_data(
+ "http://localhost:8888/screenshot.png",
+ (void*)135,
+ onLoadedData,
+ onErrorData);
+ emscripten_async_wget_data(
+ "http://localhost:8888/fail_me",
+ (void*)246,
+ onLoadedData,
+ onErrorData);
+ }
} else if (get_count == 5) {
assert(IMG_Load("/tmp/screen_shot.png"));
assert(data_ok == 1 && data_bad == 1);
emscripten_cancel_main_loop();
REPORT_RESULT();
}
+ assert(get_count <= 5);
}
void onLoaded(const char* file) {
@@ -57,8 +68,6 @@ void onLoaded(const char* file) {
result = 0;
}
- printf("loaded: %s\n", file);
-
if (FILE * f = fopen(file, "r")) {
printf("exists: %s\n", file);
int c = fgetc (f);
@@ -73,6 +82,7 @@ void onLoaded(const char* file) {
}
get_count++;
+ printf("onLoaded %s\n", file);
}
void onError(const char* file) {
@@ -80,8 +90,8 @@ void onError(const char* file) {
result = 0;
}
- printf("error: %s\n", file);
get_count++;
+ printf("onError %s\n", file);
}
int main() {
@@ -103,7 +113,7 @@ int main() {
onLoaded,
onError);
- emscripten_set_main_loop(wait_wgets, 1000, 0);
+ emscripten_set_main_loop(wait_wgets, 0, 0);
return 0;
}