Jeroen van Rijn
1b32e27aa4
Port tests\core\encoding\hxa
...
And fix a few leaks in `core:encoding/hxa` while at it.
2024-06-02 14:47:08 -04:00
Jeroen van Rijn
3404dea8ac
Port tests\encoding\hex
2024-06-02 14:47:08 -04:00
Jeroen van Rijn
40b20fb473
Port tests\core\c\libc
2024-06-02 14:47:08 -04:00
Jeroen van Rijn
a27b167218
Update tests\core\encoding\cbor to use new test runner.
...
It was leaky and required a substantial number of `loc := #caller_location` additions to parts of the core library to make it easier to track down how and where it leaked.
The tests now run fine multi-threaded.
2024-06-02 14:47:07 -04:00
Jeroen van Rijn
6a1649d8aa
Update using new defaults for memory + reporting width
2024-06-02 14:47:07 -04:00
Jeroen van Rijn
c531427ee5
Update -define for crypto
2024-06-02 14:47:07 -04:00
Feoramund
b7e1ae7073
Change test runner options to SCREAMING_SNAKE_CASE
...
This commit also changes the name of `test_select` to `ODIN_TEST_NAMES`,
to better conform with the already-existing `-test-name:<name>` option.
2024-06-02 14:47:07 -04:00
Feoramund
e11f3d2520
Fix missing - for define in tests/core/build.bat
2024-06-02 14:47:07 -04:00
Jeroen van Rijn
a0b2ea6d6e
Update tests\core\crypto
2024-06-02 14:46:59 -04:00
Jeroen van Rijn
a463e282db
Update core:container tests
2024-06-02 14:34:31 -04:00
Jeroen van Rijn
e3181c13c6
Update core:compress tests
2024-06-02 14:34:31 -04:00
Jeroen van Rijn
22c092f846
Delete duplicated flag.
2024-06-02 14:34:31 -04:00
Jeroen van Rijn
eb3d6d7d75
Update core:image tests to use new runner.
2024-06-02 14:34:31 -04:00
Feoramund
852f694bee
Get tests passing again
...
`T` no longer has a writer assigned to it.
`test_core_cbor.odin` has global state and is run with `odin test`,
so I've set it to use only one thread.
2024-06-02 14:34:31 -04:00
Yawning Angel
c751e4b2eb
core/crypto/aes: Add AES implementation
2024-06-01 22:55:42 +09:00
Jeroen van Rijn
3526042f1e
Add dedicated ISO 8601 parser.
2024-05-24 23:40:14 +02:00
Jeroen van Rijn
e1c4b9b06a
Allow lowercase z TZ indicator.
2024-05-24 19:16:24 +02:00
Vitalii Kravchenko
ff94ca9e42
Allow space (in addition to T and t) as RFC 3339 date/time separator.
2024-05-24 18:03:52 +01:00
Jeroen van Rijn
b7cecc5762
Keep -vet happy.
2024-05-24 14:57:48 +02:00
Jeroen van Rijn
dc744411c5
Deprecate core:odin/printer + format in favor of OLS.
2024-05-24 14:49:11 +02:00
Jeroen van Rijn
11e57fd3fd
Address concerns.
2024-05-24 13:58:30 +02:00
Jeroen van Rijn
410876b36a
Add core:container/rbtree
...
Add a red-black tree with configurable $Key and $Value.
Also includes tests that verify it maintains RB invariants, doesn't leak.
Originally based on the CC0 implementation from literateprograms.org.
But reworked to the same API used by @Yawning's excellent `core:container/avl` for ease of use.
2024-05-23 23:00:00 +02:00
Jeroen van Rijn
f8c4ee3d3c
i18n: Add section merge + duplicate key detection to gettext.
2024-05-17 15:50:37 +02:00
Jeroen van Rijn
6139da3d41
Fix .mo contexts
...
Fixes #3590
- `get("key")`
- `get("context", "key")`
2024-05-17 14:15:56 +02:00
Jeroen van Rijn
5a76b3c7c5
Fix .mo parser: Number of plurals
...
Fixes #3591
Added plur.mo to tests
2024-05-17 12:00:20 +02:00
Andreas T Jonsson
88528f7613
Updated makefiles to exclude some tests on BSDs
2024-05-13 09:41:54 +02:00
Jeroen van Rijn
2250eb3e78
Enable core:fmt tests.
2024-05-10 17:05:18 +02:00
Feoramund
fb2549a7da
Extend test suite for fmt
2024-05-09 19:44:16 -04:00
Yawning Angel
a6eb64df6c
core/crypto: Add a HAS_RAND_BYTES constant
2024-04-23 11:47:43 +09:00
gingerBill
d5e6d722d3
Merge pull request #3045 from laytan/cbor
...
encoding/cbor
2024-04-15 14:28:52 +01:00
blob1807
a4d16e97a1
Fix CI's parser
2024-04-13 01:14:55 +10:00
blob1807
6348b56c8b
Move rounded tests
2024-04-13 00:57:36 +10:00
blob1807
c753711d86
Added support for URL fragments
...
Added support for a URL's fragment/anchor to `split_url` & `join_url` in `core:net` plus 4 new tests to cover it.
2024-04-13 00:39:32 +10:00
Jeroen van Rijn
2ba2bc1fec
Merge pull request #3288 from Yawning/feature/even-moar-crypto
...
core/crypto: Even more improvments
2024-04-10 14:19:25 +02:00
Laytan Laats
af6d2480fa
add bit_field parsing to core:odin/parser
...
Also adds it to the core type thingy like it is in the compiler.
2024-04-10 01:01:32 +02:00
Yawning Angel
fa1d681e65
tests/core/crypto: Start adding comprehensive curve25519 tests
2024-04-09 14:37:59 +09:00
Yawning Angel
b155fdf8c9
core/crypto: Add has_rand_bytes
...
This allows runtime detection as to if `rand_bytes` is supported or not,
and lets us enable the test-case on all of the supported targets.
2024-04-09 10:23:58 +09:00
gingerBill
e42b16b106
Merge pull request #3366 from laytan/fix-vet-scope-bug
...
fix vet scope bug skipping some scopes
2024-04-03 11:40:01 +01:00
Laytan Laats
3a0df80066
correct newly found vets
2024-04-03 00:52:58 +02:00
Jeroen van Rijn
b3580fa63a
Make it a HMAC.
2024-04-01 18:20:14 +02:00
Jeroen van Rijn
b2f432c223
Add SHA3-512 digests verification to test assets.
2024-04-01 17:18:31 +02:00
Jeroen van Rijn
ed5fd15f6e
Ensmallen Date struct.
2024-03-20 18:13:29 +01:00
Jeroen van Rijn
89ca15014c
Ensmallen Time struct.
2024-03-20 18:09:07 +01:00
Jeroen van Rijn
9c144dd24f
Change Ordinal from int to i64
2024-03-20 17:56:22 +01:00
Jeroen van Rijn
07ef969546
Fix test label.
2024-03-18 17:05:40 +01:00
Jeroen van Rijn
72c15d7699
Add WiP datetime package and tests.
...
A new package `core:time/datetime` has been added which can represent moments much further in the past and future than `core:time`.
It is based on *the* reference work on the subject, Calendrical Calculations Ultimate Edition, Reingold & Dershowitz.
More procedures will be added to it in the future, to for example calculate the 3rd Thursday in March to figure out holidays.
The package has been tested for more than a year and can handle dates 25 quadrillion years into the past and future with 64-bit day ordinals, or 5 million with 32-bit ones.
This also fixes a longstanding bug where converting between YYYY-MM:DD hh:mm:ss and `time.Time` and back could result in a mismatch.
RFC 3339 timestamps can now also be parsed using the `core:time` package.
2024-03-18 16:47:16 +01:00
Laytan Laats
9a5f3fed8c
encoding/cbor: fix conflict
2024-03-04 17:29:30 +01:00
Laytan Laats
04bd3cc525
encoding/cbor: rename diagnose to to_diagnostic_format to be clearer
2024-03-04 17:26:19 +01:00
Laytan
b11d839fb6
encoding/cbor: make temp allocations more explicit
2024-03-04 17:26:19 +01:00
Laytan
0076c07076
encoding/cbor: core -> base
2024-03-04 17:26:19 +01:00