typst/tests/typ/compiler/bytes.typ
Laurenz b8b0137504 Bytes type
- Moves `Bytes` from `util` to `eval` module
- Accepts bytes in `str` function for bytes -> str conversion
- Adds `bytes` function for str | array -> bytes conversion
- Adds `array` function for bytes -> array conversion
- Adds `len`, `at`, and `slice` methods for bytes
- Adds `encoding` parameter to `read` function
2023-08-04 15:46:46 +02:00

22 lines
536 B
Typst

// Test the bytes type.
// Ref: false
---
#let data = read("/files/rhino.png", encoding: none)
#test(data.len(), 232243)
#test(data.slice(0, count: 5), bytes((137, 80, 78, 71, 13)))
#test(str(data.slice(1, 4)), "PNG")
#test(repr(data), "bytes(232243)")
---
#test(str(bytes(range(0x41, 0x50))), "ABCDEFGHIJKLMNO")
#test(array(bytes("Hello")), (0x48, 0x65, 0x6C, 0x6C, 0x6F))
---
// Error: 8-14 expected string, array, or bytes, found dictionary
#bytes((a: 1))
---
// Error: 8-15 expected bytes or array, found string
#array("hello")