aboutsummaryrefslogtreecommitdiff
path: root/core/testing
Commit message (Collapse)AuthorAgeFilesLines
* core:os -> core:os/old && core:os/os2 -> core:osJeroen van Rijn6 days2-23/+23
|
* Fix more merge conflicts.Jeroen van Rijn7 days1-1/+1
|
* More conflicts during rebaseJeroen van Rijn7 days1-2/+2
|
* In the middle of porting core:testingJeroen van Rijn7 days2-9/+9
|
* Add `doc.odin` and mention the defineables through `#config`gingerBill2026-01-313-15/+60
|
* Revert "Try to ensure the runner's handler gets called first"blob18072025-12-241-1/+1
| | | | This reverts commit 13faedaf4ce3a24ed92917d44244f226ff3fed57. As it's causing issues with ASAN, which adds it's own `ExceptionHandler` as the first. Making ours first messes with it. Causing an Access Violation when trying to setup `context` in our handler.
* Try to ensure the runner's handler gets called firstblob18072025-12-241-1/+1
|
* Fix an OOB & format exception code as hexblob18072025-12-231-13/+7
| | | | Fix an OOB caused when the test runner catches the exception & format exception codes as upper case hex.
* Remove unneeded `Exception_Code` enumblob18072025-12-231-37/+12
|
* [`core:testing`] Use Windows API for SIG handlingblob18072025-12-232-15/+246
|
* Merge pull request #5963 from Yawning/feature/chacha8randJeroen van Rijn2025-11-291-2/+2
|\ | | | | runtime: Use chacha8rand as the default RNG (BREAKING)
| * testing: Use xoshiro256** instead of the runtime RNGYawning Angel2025-11-291-2/+2
| | | | | | | | | | While platforms that do not have an entropy source have no rights, use something that is always guaranteed to work.
* | Fix #5975Jeroen van Rijn2025-11-291-2/+2
|/ | | | Fix `err` shadowing in test runner. Fixes #5975.
* Merge pull request #5859 from odin-lang/bill/change-licensedev-2025-11gingerBill2025-11-048-8/+8
|\ | | | | Change Odin's LICENSE to zlib from BSD 3-clause
| * Change Odin's LICENSE to zlib from BSD 3-clausegingerBill2025-10-288-8/+8
| | | | | | | | This change was made in order to allow things produced with Odin and using Odin's core library, to not require the LICENSE to also be distributed alongside the binary form.
* | Add ODIN_TEST_GO_TO_ERROR to print test fail locations in a manner friendly ↵Jeroen van Rijn2025-11-012-2/+29
| | | | | | | | to go-to error in editors
* | Also disable OSC codes to update title when `ODIN_TEST_FANCY=false`Jeroen van Rijn2025-10-311-1/+1
|/
* Further overhaul of package line comments.Jeroen van Rijn2025-10-091-0/+1
|
* revert to working buildJon Lipstate2025-09-031-2/+2
|
* add tls when we have crtJon Lipstate2025-09-031-2/+2
|
* windows i386 supportJon Lipstate2025-08-291-4/+12
|
* testing: Make test state changes its own featureFeoramund2025-06-261-2/+4
| | | | | | | This patch takes the former debug message output of a test changing its state and makes it its own feature, toggleable with the `ODIN_TEST_LOG_STATE_CHANGES` configurable. The output will be at the info level and is disabled by default.
* testing: Add API to expect signals and assertion failuresFeoramund2025-06-164-11/+140
|
* Restructure `core:terminal` for better Windows supportFeoramund2025-05-212-44/+0
|
* Add animation detection support to test runnerFeoramund2025-05-202-62/+81
|
* Add terminal color detection to logging in `core:testing`Feoramund2025-05-201-2/+17
|
* Rename `core:encoding/ansi` to `core:terminal/ansi`Feoramund2025-05-203-4/+4
|
* Restore console mode when test runner exits.Jeroen van Rijn2025-05-202-6/+24
|
* Haiku: small fixes across coreavanspector2025-01-101-1/+1
|
* Makes tracking allocator default to crashing on a bad free instead of add to ↵Karl Zylinski2024-12-211-0/+1
| | | | bad_free_array. The bad_free_array remains to not break old code. The new default behavior is implemented in a callback that you can override, there's a second provided callback that provides the old behavior where an element was added to bad_free_array. Rationale: Many people are just checking the allocation_map, but don't check the bad free array. Several examples throughout core that use tracking allocator don't check bad_free_array either, so people have been taught not to check it.
* testing: separate the posix import into target filesLaytan Laats2024-11-013-17/+32
| | | | | | | This is needed for the docs generator to generate all the docs for the posix package, if it is imported like it was on Windows it would generate docs for the Windows version of the package which has much less symbols exposed.
* remove pthread from sys/unix and use sys/posix where usedLaytan2024-10-281-3/+3
|
* Changed some recently added //+ usages to #+ and also fixed some //+ usages ↵Karl Zylinski2024-09-171-1/+1
| | | | in some code generators.
* Merge branch 'master' into file-tags-without-commentsKarl Zylinski2024-09-174-4/+45
|\
| * Merge pull request #4255 from avanspector/masterJeroen van Rijn2024-09-172-0/+26
| |\ | | | | | | init ansi on a standalone testing exe
| | * init ansi on a standalone testing exeavanspector2024-09-172-0/+26
| | |
| * | Merge pull request #4242 from laytan/caller-expressiongingerBill2024-09-161-4/+8
| |\ \ | | | | | | | | add '#caller_expression'
| | * | add '#caller_expression'Laytan Laats2024-09-141-4/+8
| | | |
| * | | Fix signalling test child threads crashing test 0Feoramund2024-09-101-0/+11
| |/ / | | | | | | | | | | | | | | | A thread made inside a test does not share the test index of its parent, so any time one of those threads failed an assert, it would tell the runner to shutdown test index zero.
* / / Moved all packages in core, base, vendor, tests and examples to use new #+ ↵Karl Zylinski2024-09-147-15/+15
|/ / | | | | | | file tag syntax.
* / Fix build tags that use ! multiple times on one line. Those don't actually ↵Karl Zylinski2024-09-071-1/+7
|/ | | | do anything since build tags use OR within the line. So something like //+build !windows, !linux would actually build on both linux and windows. What was intended in all these cases was probably AND, which you get by splitting them into separate lines.
* Remove deprecated `log` procs from `core:testing`Feoramund2024-08-184-49/+28
|
* Allow ODIN_TEST_LOG_LEVEL override when -debug.Jeroen van Rijn2024-08-141-12/+8
|
* Add explicit copyright info to `core:testing`Feoramund2024-08-128-1/+68
|
* Fix wrong define name in test runner log messagesFeoramund2024-08-111-2/+2
|
* Optionally treat memory failures as errors in the test runnerFeoramund2024-08-111-41/+57
| | | | Enable with `-define:ODIN_TEST_FAIL_ON_BAD_MEMORY=true`.
* Keep -vet happy when mem tracking is disabled.Jeroen van Rijn2024-08-081-0/+1
|
* Use test runner's own tracking allocator.Jeroen van Rijn2024-08-081-8/+7
|
* Allow testing for intentional leaks in test runnerJeroen van Rijn2024-08-082-4/+56
| | | | | | | | | | | Adds `expect_leak_or_bad_free :: proc(t: ^T, client_test: proc(t: ^T), verifier: Memory_Verifier_Proc)`. It sets up its own `Tracking_Allocator`, runs the `client_test`, and then calls the `verifier` procedure. The verifier can then inspect the contents of the tracking allocator and call `testing.expect*` as sensible for the test in question. Any allocations are then cleared so that the test runner doesn't itself complain about leaks. Additionally, `ODIN_TEST_LOG_LEVEL_MEMORY` has been added as a define to set the severity of the test runner's memory tracker. You can use `-define:ODIN_TEST_LOG_LEVEL_MEMORY=error` to make tests fail rather than warn if leaks or bad frees have been found.
* Begin mapping `os.Error` in the rest of the codebasegingerBill2024-08-041-2/+2
|