Browse Source

Update tests to use new filename generation code.

Jeroen van Rijn 3 years ago
parent
commit
3d2856db31

+ 8 - 3
.github/workflows/ci.yml

@@ -39,7 +39,9 @@ jobs:
           make
           make
         timeout-minutes: 10
         timeout-minutes: 10
       - name: Odin issues tests
       - name: Odin issues tests
-        run: tests/issues/run.sh
+        run: |
+          cd tests/issues
+          run.sh
         timeout-minutes: 10
         timeout-minutes: 10
       - name: Odin check examples/all for Linux i386
       - name: Odin check examples/all for Linux i386
         run: ./odin check examples/all -vet -strict-style -target:linux_i386
         run: ./odin check examples/all -vet -strict-style -target:linux_i386
@@ -91,7 +93,9 @@ jobs:
           make
           make
         timeout-minutes: 10
         timeout-minutes: 10
       - name: Odin issues tests
       - name: Odin issues tests
-        run: tests/issues/run.sh
+        run: |
+          cd tests/issues
+          run.sh
         timeout-minutes: 10
         timeout-minutes: 10
       - name: Odin check examples/all for Darwin arm64
       - name: Odin check examples/all for Darwin arm64
         run: ./odin check examples/all -vet -strict-style -target:darwin_arm64
         run: ./odin check examples/all -vet -strict-style -target:darwin_arm64
@@ -163,7 +167,8 @@ jobs:
         shell: cmd
         shell: cmd
         run: |
         run: |
           call "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Auxiliary\Build\vcvars64.bat
           call "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Auxiliary\Build\vcvars64.bat
-          call tests\issues\run.bat
+          cd tests\issues
+          call build.bat
         timeout-minutes: 10
         timeout-minutes: 10
       - name: Odin check examples/all for Windows 32bits
       - name: Odin check examples/all for Windows 32bits
         shell: cmd
         shell: cmd

+ 1 - 0
core/crypto/util/util.odin

@@ -11,6 +11,7 @@ package util
 */
 */
 
 
 import "core:mem"
 import "core:mem"
+_ :: mem
 
 
 // @note(bp): this can replace the other two
 // @note(bp): this can replace the other two
 cast_slice :: #force_inline proc "contextless" ($D: typeid/[]$DE, src: $S/[]$SE) -> D {
 cast_slice :: #force_inline proc "contextless" ($D: typeid/[]$DE, src: $S/[]$SE) -> D {

+ 15 - 14
tests/core/Makefile

@@ -1,5 +1,6 @@
 ODIN=../../odin
 ODIN=../../odin
 PYTHON=$(shell which python3)
 PYTHON=$(shell which python3)
+OUT_FILE=test_binary.bin
 
 
 all: download_test_assets image_test compress_test strings_test hash_test crypto_test noise_test encoding_test \
 all: download_test_assets image_test compress_test strings_test hash_test crypto_test noise_test encoding_test \
 	 math_test linalg_glsl_math_test filepath_test reflect_test os_exit_test
 	 math_test linalg_glsl_math_test filepath_test reflect_test os_exit_test
@@ -8,39 +9,39 @@ download_test_assets:
 	$(PYTHON) download_assets.py
 	$(PYTHON) download_assets.py
 
 
 image_test:
 image_test:
-	$(ODIN) run image/test_core_image.odin -file
+	$(ODIN) run image/test_core_image.odin -out=$(OUT_FILE) -file
 
 
 compress_test:
 compress_test:
-	$(ODIN) run compress/test_core_compress.odin -file
+	$(ODIN) run compress/test_core_compress.odin -out=$(OUT_FILE) -file
 
 
 strings_test:
 strings_test:
-	$(ODIN) run strings/test_core_strings.odin -file
+	$(ODIN) run strings/test_core_strings.odin -out=$(OUT_FILE) -file
 
 
 hash_test:
 hash_test:
-	$(ODIN) run hash -out=test_hash -o:speed -no-bounds-check
+	$(ODIN) run hash -out=$(OUT_FILE) -o:speed -no-bounds-check
 
 
 crypto_test:
 crypto_test:
-	$(ODIN) run crypto -out=test_crypto_hash -o:speed -no-bounds-check
+	$(ODIN) run crypto -out=$(OUT_FILE) -o:speed -no-bounds-check
 
 
 noise_test:
 noise_test:
-	$(ODIN) run math/noise -out=test_noise
+	$(ODIN) run math/noise -out=$(OUT_FILE)
 
 
 encoding_test:
 encoding_test:
-	$(ODIN) run encoding/hxa -out=test_hxa -collection:tests=..
-	$(ODIN) run encoding/json -out=test_json
-	$(ODIN) run encoding/varint -out=test_varint
+	$(ODIN) run encoding/hxa -out=$(OUT_FILE) -collection:tests=..
+	$(ODIN) run encoding/json -out=$(OUT_FILE)
+	$(ODIN) run encoding/varint -out=$(OUT_FILE)
 
 
 math_test:
 math_test:
-	$(ODIN) run math/test_core_math.odin -out=test_core_math -file -collection:tests=..
+	$(ODIN) run math/test_core_math.odin -out=$(OUT_FILE) -file -collection:tests=..
 
 
 linalg_glsl_math_test:
 linalg_glsl_math_test:
-	$(ODIN) run math/linalg/glsl/test_linalg_glsl_math.odin -file -out=test_linalg_glsl_math -collection:tests=..
+	$(ODIN) run math/linalg/glsl/test_linalg_glsl_math.odin -file -out=$(OUT_FILE) -collection:tests=..
 
 
 filepath_test:
 filepath_test:
-	$(ODIN) run path/filepath/test_core_filepath.odin -file -out=test_core_filepath -collection:tests=..
+	$(ODIN) run path/filepath/test_core_filepath.odin -file -out=$(OUT_FILE) -collection:tests=..
 
 
 reflect_test:
 reflect_test:
-	$(ODIN) run reflect/test_core_reflect.odin -file -out=test_core_reflect -collection:tests=..
+	$(ODIN) run reflect/test_core_reflect.odin -file -out=$(OUT_FILE) -collection:tests=..
 
 
 os_exit_test:
 os_exit_test:
-	$(ODIN) run os/test_core_os_exit.odin -file -out=test_core_os_exit && exit 1 || exit 0
+	$(ODIN) run os/test_core_os_exit.odin -file -out=$(OUT_FILE) && exit 1 || exit 0

+ 17 - 15
tests/core/build.bat

@@ -1,65 +1,67 @@
 @echo off
 @echo off
-set COMMON=-show-timings -no-bounds-check -vet -strict-style -collection:tests=..
+set OUT_FILE=test_binary.exe
+set COMMON=-show-timings -no-bounds-check -vet -strict-style -collection:tests=.. -out:%OUT_FILE%
 set PATH_TO_ODIN==..\..\odin
 set PATH_TO_ODIN==..\..\odin
+
 python3 download_assets.py
 python3 download_assets.py
 echo ---
 echo ---
 echo Running core:image tests
 echo Running core:image tests
 echo ---
 echo ---
-%PATH_TO_ODIN% run image    %COMMON% -out:test_image
+%PATH_TO_ODIN% run image    %COMMON%
 
 
 echo ---
 echo ---
 echo Running core:compress tests
 echo Running core:compress tests
 echo ---
 echo ---
-%PATH_TO_ODIN% run compress %COMMON% -out:test_compress
+%PATH_TO_ODIN% run compress %COMMON%
 
 
 echo ---
 echo ---
 echo Running core:strings tests
 echo Running core:strings tests
 echo ---
 echo ---
-%PATH_TO_ODIN% run strings %COMMON% -out:test_strings
+%PATH_TO_ODIN% run strings %COMMON%
 
 
 echo ---
 echo ---
 echo Running core:hash tests
 echo Running core:hash tests
 echo ---
 echo ---
-%PATH_TO_ODIN% run hash %COMMON% -o:size -out:test_hash
+%PATH_TO_ODIN% run hash %COMMON% -o:size
 
 
 echo ---
 echo ---
 echo Running core:odin tests
 echo Running core:odin tests
 echo ---
 echo ---
-%PATH_TO_ODIN% run odin %COMMON% -o:size -out:test_odin
+%PATH_TO_ODIN% run odin %COMMON% -o:size
 
 
 echo ---
 echo ---
 echo Running core:crypto hash tests
 echo Running core:crypto hash tests
 echo ---
 echo ---
-%PATH_TO_ODIN% run crypto %COMMON% -out:test_crypto
+%PATH_TO_ODIN% run crypto %COMMON%
 
 
 echo ---
 echo ---
 echo Running core:encoding tests
 echo Running core:encoding tests
 echo ---
 echo ---
-%PATH_TO_ODIN% run encoding/hxa    %COMMON% -out:test_hxa
-%PATH_TO_ODIN% run encoding/json   %COMMON% -out:test_json
-%PATH_TO_ODIN% run encoding/varint %COMMON% -out:test_varint
+%PATH_TO_ODIN% run encoding/hxa    %COMMON%
+%PATH_TO_ODIN% run encoding/json   %COMMON%
+%PATH_TO_ODIN% run encoding/varint %COMMON%
 
 
 echo ---
 echo ---
 echo Running core:math/noise tests
 echo Running core:math/noise tests
 echo ---
 echo ---
-%PATH_TO_ODIN% run math/noise      %COMMON% -out:test_noise
+%PATH_TO_ODIN% run math/noise      %COMMON%
 
 
 echo ---
 echo ---
 echo Running core:math tests
 echo Running core:math tests
 echo ---
 echo ---
-%PATH_TO_ODIN% run math %COMMON% -out:test_math
+%PATH_TO_ODIN% run math %COMMON%
 
 
 echo ---
 echo ---
 echo Running core:math/linalg/glsl tests
 echo Running core:math/linalg/glsl tests
 echo ---
 echo ---
-%PATH_TO_ODIN% run math/linalg/glsl %COMMON% -out:test_glsl
+%PATH_TO_ODIN% run math/linalg/glsl %COMMON%
 
 
 echo ---
 echo ---
 echo Running core:path/filepath tests
 echo Running core:path/filepath tests
 echo ---
 echo ---
-%PATH_TO_ODIN% run path/filepath %COMMON% -out:test_filepath
+%PATH_TO_ODIN% run path/filepath %COMMON%
 
 
 echo ---
 echo ---
 echo Running core:reflect tests
 echo Running core:reflect tests
 echo ---
 echo ---
-%PATH_TO_ODIN% run reflect %COMMON% -out:test_reflect
+%PATH_TO_ODIN% run reflect %COMMON%

+ 8 - 13
tests/issues/run.bat

@@ -1,17 +1,12 @@
 @echo off
 @echo off
+set PATH_TO_ODIN==..\..\odin
+set COMMON=-collection:tests=.. -out:build\test_issue
+if not exist "build" mkdir build
 
 
-if not exist "tests\issues\build\" mkdir tests\issues\build
+%PATH_TO_ODIN% build test_issue_829.odin %COMMON% -file
+build\test_issue
 
 
-set COMMON=-collection:tests=tests -out:tests\issues\build\test_issue
+%PATH_TO_ODIN% build test_issue_1592.odin %COMMON% -file
+build\test_issue
 
 
-@echo on
-
-.\odin build tests\issues\test_issue_829.odin %COMMON% -file
-tests\issues\build\test_issue
-
-.\odin build tests\issues\test_issue_1592.odin %COMMON% -file
-tests\issues\build\test_issue
-
-@echo off
-
-rmdir /S /Q tests\issues\build
+rmdir /S /Q build

+ 9 - 10
tests/issues/run.sh

@@ -1,18 +1,17 @@
 #!/bin/bash
 #!/bin/bash
-set -eu
-
-mkdir -p tests/issues/build
-
-COMMON="-collection:tests=tests -out:tests/issues/build/test_issue"
+ODIN=../../odin
+COMMON="-collection:tests=.. -out:build/test_issue.bin"
 
 
+set -eu
+mkdir -p build
 set -x
 set -x
 
 
-./odin build tests/issues/test_issue_829.odin $COMMON -file
-tests/issues/build/test_issue
+$ODIN build test_issue_829.odin $COMMON -file
+build/test_issue.bin
 
 
-./odin build tests/issues/test_issue_1592.odin $COMMON -file
-tests/issues/build/test_issue
+$ODIN build test_issue_1592.odin $COMMON -file
+build/test_issue.bin
 
 
 set +x
 set +x
 
 
-rm -rf tests/issues/build
+rm -rf build

+ 2 - 1
tests/vendor/Makefile

@@ -1,5 +1,6 @@
 ODIN=../../odin
 ODIN=../../odin
 ODINFLAGS=
 ODINFLAGS=
+OUT_FILE=test_binary.bin
 
 
 OS=$(shell uname)
 OS=$(shell uname)
 
 
@@ -10,4 +11,4 @@ endif
 all: botan_test
 all: botan_test
 
 
 botan_test:
 botan_test:
-	$(ODIN) run botan -out=test_botan_hash -o:speed -no-bounds-check $(ODINFLAGS)
+	$(ODIN) run botan -out=$(OUT_FILE) -o:speed -no-bounds-check $(ODINFLAGS)

+ 2 - 1
tests/vendor/build.bat

@@ -1,5 +1,6 @@
 @echo off
 @echo off
-set COMMON=-show-timings -no-bounds-check -vet -strict-style
+set OUT_FILE=test_binary.exe
+set COMMON=-show-timings -no-bounds-check -vet -strict-style -out:%OUT_FILE%
 set PATH_TO_ODIN==..\..\odin
 set PATH_TO_ODIN==..\..\odin
 
 
 echo ---
 echo ---