summaryrefslogtreecommitdiff
path: root/tests/typ/code/block.typ
diff options
context:
space:
mode:
Diffstat (limited to 'tests/typ/code/block.typ')
-rw-r--r--tests/typ/code/block.typ144
1 files changed, 0 insertions, 144 deletions
diff --git a/tests/typ/code/block.typ b/tests/typ/code/block.typ
deleted file mode 100644
index d82d497f..00000000
--- a/tests/typ/code/block.typ
+++ /dev/null
@@ -1,144 +0,0 @@
-// Test code blocks.
-// Ref: false
-
----
-// Ref: true
-
-// Evaluates to join of none, [My ] and the two loop bodies.
-{
- let parts = ("my fri", "end.")
- [Hello, ]
- for s in parts [{s}]
-}
-
-// Evaluates to join of the content and strings.
-{
- [How]
- if true {
- " are"
- }
- [ ]
- if false [Nope]
- [you] + "?"
-}
-
----
-// Nothing evaluates to none.
-#test({}, none)
-
-// Let evaluates to none.
-#test({ let v = 0 }, none)
-
-// Evaluates to single expression.
-#test({ "hello" }, "hello")
-
-// Evaluates to string.
-#test({ let x = "m"; x + "y" }, "my")
-
-// Evaluated to int.
-#test({
- let x = 1
- let y = 2
- x + y
-}, 3)
-
-// String is joined with trailing none, evaluates to string.
-#test({
- type("")
- none
-}, "string")
-
----
-// Some things can't be joined.
-{
- [A]
- // Error: 3-4 cannot join content with integer
- 1
- [B]
-}
-
----
-// Block directly in markup also creates a scope.
-{ let x = 1 }
-
-// Error: 7-8 unknown variable
-#test(x, 1)
-
----
-// Block in expression does create a scope.
-#let a = {
- let b = 1
- b
-}
-
-#test(a, 1)
-
-// Error: 2-3 unknown variable
-{b}
-
----
-// Double block creates a scope.
-{{
- import b from "target.typ"
- test(b, 1)
-}}
-
-// Error: 2-3 unknown variable
-{b}
-
----
-// Multiple nested scopes.
-{
- let a = "a1"
- {
- let a = "a2"
- {
- test(a, "a2")
- let a = "a3"
- test(a, "a3")
- }
- test(a, "a2")
- }
- test(a, "a1")
-}
-
----
-// Content blocks also create a scope.
-[#let x = 1]
-
-// Error: 2-3 unknown variable
-{x}
-
----
-// Multiple unseparated expressions in one line.
-
-// Error: 2-4 invalid number suffix
-{1u}
-
-// Should output `1`.
-// Error: 3 expected semicolon or line break
-{1 2}
-
-// Should output `2`.
-// Error: 12 expected semicolon or line break
-// Error: 22 expected semicolon or line break
-{let x = -1 let y = 3 x + y}
-
-// Should output `3`.
-{
- // Error: 7-10 expected identifier, found string
- for "v"
-
- // Error: 8 expected keyword `in`
- for v let z = 1 + 2
-
- z
-}
-
----
-// Error: 2 expected closing brace
-{
-
----
-// Error: 1-2 unexpected closing brace
-}