| <!DOCTYPE html> |
| <html> |
| <meta charset=utf-8> |
| <meta name="timeout" content="long"> |
| <title>Test prefix/postfix.</title> |
| <script src="js/test-harness.js"></script> |
| <script src="../js/webgpu-functions.js"></script> |
| <script src="../../resources/testharness.js"></script> |
| <script src="../../resources/testharnessreport.js"></script> |
| <script> |
| const whlslTests = {}; |
| const epsilon = 0.0001; |
| |
| whlslTests.literals = async () => { |
| let program = ` |
| int a() |
| { |
| return -10; |
| } |
| int b() |
| { |
| return 10; |
| } |
| int c() |
| { |
| return 0; |
| } |
| float d() |
| { |
| return .1; |
| } |
| float e() |
| { |
| return 1.9; |
| } |
| float f() |
| { |
| return -.1; |
| } |
| float g() |
| { |
| return -1.9; |
| } |
| int h() |
| { |
| return 0xb4dB33F; |
| } |
| int i() |
| { |
| return -0xb4dB33F; |
| } |
| `; |
| |
| assert_equals(await callIntFunction(program, "a", []), -10); |
| assert_equals(await callIntFunction(program, "b", []), 10); |
| assert_equals(await callIntFunction(program, "c", []), 0); |
| |
| assert_approx_equals(await callFloatFunction(program, "d", []), 0.1, epsilon); |
| assert_approx_equals(await callFloatFunction(program, "e", []), 1.9, epsilon); |
| assert_approx_equals(await callFloatFunction(program, "f", []), -0.1, epsilon); |
| assert_approx_equals(await callFloatFunction(program, "g", []), -1.9, epsilon); |
| |
| assert_equals(await callIntFunction(program, "h", []), 0xb4dB33F); |
| assert_equals(await callIntFunction(program, "i", []), -0xb4dB33F); |
| }; |
| |
| runTests(whlslTests); |
| </script> |
| </html> |