@@ -16,8 +16,13 @@ void one() {
16
16
SDL_MouseMotionEvent * m = (SDL_MouseMotionEvent * )& event ;
17
17
assert (m -> state == 0 );
18
18
printf ("motion : %d,%d %d,%d\n" , m -> x , m -> y , m -> xrel , m -> yrel );
19
+ #ifdef TEST_SDL_MOUSE_OFFSETS
20
+ assert (eq (m -> x , 5 ) && eq (m -> y , 15 ) && eq (m -> xrel , 5 ) && eq (m -> yrel , 15 )
21
+ || eq (m -> x , 25 ) && eq (m -> y , 65 ) && eq (m -> xrel , 20 ) && eq (m -> yrel , 50 ));
22
+ #else
19
23
assert (eq (m -> x , 10 ) && eq (m -> y , 20 ) && eq (m -> xrel , 10 ) && eq (m -> yrel , 20 )
20
24
|| eq (m -> x , 30 ) && eq (m -> y , 70 ) && eq (m -> xrel , 20 ) && eq (m -> yrel , 50 ));
25
+ #endif
21
26
break ;
22
27
}
23
28
case SDL_MOUSEBUTTONDOWN : {
@@ -27,13 +32,21 @@ void one() {
27
32
emscripten_run_script ("throw 'done'" );
28
33
}
29
34
printf ("button down : %d,%d %d,%d\n" , m -> button , m -> state , m -> x , m -> y );
35
+ #ifdef TEST_SDL_MOUSE_OFFSETS
36
+ assert (eq (m -> button , 1 ) && eq (m -> state , 1 ) && eq (m -> x , 5 ) && eq (m -> y , 15 ));
37
+ #else
30
38
assert (eq (m -> button , 1 ) && eq (m -> state , 1 ) && eq (m -> x , 10 ) && eq (m -> y , 20 ));
39
+ #endif
31
40
break ;
32
41
}
33
42
case SDL_MOUSEBUTTONUP : {
34
43
SDL_MouseButtonEvent * m = (SDL_MouseButtonEvent * )& event ;
35
44
printf ("button up : %d,%d %d,%d\n" , m -> button , m -> state , m -> x , m -> y );
45
+ #ifdef TEST_SDL_MOUSE_OFFSETS
46
+ assert (eq (m -> button , 1 ) && eq (m -> state , 0 ) && eq (m -> x , 5 ) && eq (m -> y , 15 ));
47
+ #else
36
48
assert (eq (m -> button , 1 ) && eq (m -> state , 0 ) && eq (m -> x , 10 ) && eq (m -> y , 20 ));
49
+ #endif
37
50
// Remove another click we want to ignore
38
51
assert (SDL_PeepEvents (& event , 1 , SDL_GETEVENT , SDL_MOUSEBUTTONDOWN , SDL_MOUSEBUTTONDOWN ) == 1 );
39
52
assert (SDL_PeepEvents (& event , 1 , SDL_GETEVENT , SDL_MOUSEBUTTONUP , SDL_MOUSEBUTTONUP ) == 1 );
0 commit comments