Files
wren/test
Bob Nystrom 731e1f4b1d feat: replace public byteAt with private byteAt_ and add O(1) bytes.count
Remove the public `byteAt(_)` method from String and its ByteSequence wrapper, renaming it to the private `byteAt_(_)` to eliminate redundancy with `.bytes[_]`. Add a native `byteCount_` primitive on String and expose it as `count` on StringByteSequence, enabling O(1) byte length queries. Update all test files to use the new `.bytes` subscript API and add a dedicated `count.wren` test for the new functionality.
2015-09-11 06:52:18 +00:00
..

This contains the automated validation suite for the VM and built-in libraries.

  • benchmark/ - Performance tests. These aren't strictly pass/fail, but let us compare performance both against other languages and against previous builds of Wren itself.

  • core/ - Tests for the built in core library, mainly methods on the core classes. If a bug is in wren_core.c or wren_value.c, it will most likely break one of these tests.

  • io/ - Tests for the built in IO library. In other words, methods on the IO class. If a bug is in wren_io.c, it should break one of these tests.

  • language/ - Tests of the language itself, its grammar and runtime semantics. If a bug is in wren_compiler.c or wren_vm.c, it will most likely break one of these tests. This includes tests for the syntax for the literal forms of the core classes.

  • limit/ - Tests for various hardcoded limits. The language doesn't officially specify these limits, but the Wren implementation has them. These tests ensure that limit behavior is well-defined and tested.