summaryrefslogtreecommitdiff
path: root/tests/pracownia2/ok
diff options
context:
space:
mode:
authorPaweł Dybiec <pdybiec@stud.cs.uni.wroc.pl>2018-12-09 18:57:17 +0100
committerPaweł Dybiec <pdybiec@stud.cs.uni.wroc.pl>2018-12-09 18:57:17 +0100
commit21952240e9a785713351ca336e11df498480f905 (patch)
treed61e33c910adae94b5cde0b2d3ffee13aa8062ee /tests/pracownia2/ok
parentInitial code for translator (diff)
Tests
Diffstat (limited to 'tests/pracownia2/ok')
-rw-r--r--tests/pracownia2/ok/000_without_expectation_concat_second_magic.xi6
-rw-r--r--tests/pracownia2/ok/001_ifelse_on_pred.xi10
-rw-r--r--tests/pracownia2/ok/002_fetch_int.xi7
-rw-r--r--tests/pracownia2/ok/003_with_expectation_concat_second_empty.xi6
-rw-r--r--tests/pracownia2/ok/004_with_expectation_empty_curly.xi7
-rw-r--r--tests/pracownia2/ok/005_with_expectation_concat_second_magic.xi6
-rw-r--r--tests/pracownia2/ok/006_if_on_literal.xi8
-rw-r--r--tests/pracownia2/ok/007_without_expectation_concat_second_weird.xi6
-rw-r--r--tests/pracownia2/ok/008_fetch_fetch.xi7
-rw-r--r--tests/pracownia2/ok/009_while_on_literal.xi8
-rw-r--r--tests/pracownia2/ok/010_with_expectation_concat_first_weird.xi6
-rw-r--r--tests/pracownia2/ok/011_simple_length.xi6
-rw-r--r--tests/pracownia2/ok/012_with_expectation_concat_first_magic.xi6
-rw-r--r--tests/pracownia2/ok/013_without_expectation_concat_second_empty.xi6
-rw-r--r--tests/pracownia2/ok/014_if_on_var.xi8
-rw-r--r--tests/pracownia2/ok/015_with_expectation_concat_second_weird.xi6
-rw-r--r--tests/pracownia2/ok/016_with_expectation_a_lot_of_magic_int.xi40
-rw-r--r--tests/pracownia2/ok/017_ifelse_on_and.xi9
-rw-r--r--tests/pracownia2/ok/018_if_on_pred.xi9
-rw-r--r--tests/pracownia2/ok/019_ifelse_on_or.xi9
-rw-r--r--tests/pracownia2/ok/020_with_expectation_concat_both_empty.xi6
-rw-r--r--tests/pracownia2/ok/021_mutualrec.xi12
-rw-r--r--tests/pracownia2/ok/022_int.xi10
-rw-r--r--tests/pracownia2/ok/023_with_expectation_concat_both_magic.xi6
-rw-r--r--tests/pracownia2/ok/024_store_bool.xi6
-rw-r--r--tests/pracownia2/ok/025_with_expectation_concat_magic_empty.xi6
-rw-r--r--tests/pracownia2/ok/026_length_string.xi6
-rw-r--r--tests/pracownia2/ok/027_with_expectation_curly_elems.xi7
-rw-r--r--tests/pracownia2/ok/028_while_on_and.xi8
-rw-r--r--tests/pracownia2/ok/029_with_expectation_concat_empty_weird.xi6
-rw-r--r--tests/pracownia2/ok/030_intA.xi8
-rw-r--r--tests/pracownia2/ok/031_if_on_or.xi8
-rw-r--r--tests/pracownia2/ok/032_with_expectation_first_weird.xi6
-rw-r--r--tests/pracownia2/ok/033_with_expectation_concat_weird_empty.xi6
-rw-r--r--tests/pracownia2/ok/034_bool.xi8
-rw-r--r--tests/pracownia2/ok/035_store_store.xi6
-rw-r--r--tests/pracownia2/ok/036_ifelse_on_var.xi9
-rw-r--r--tests/pracownia2/ok/037_with_expectation_concat.xi6
-rw-r--r--tests/pracownia2/ok/038_length_curly.xi6
-rw-r--r--tests/pracownia2/ok/039_if_on_and.xi8
-rw-r--r--tests/pracownia2/ok/040_while_on_var.xi8
-rw-r--r--tests/pracownia2/ok/041_without_expectation_concat.xi6
-rw-r--r--tests/pracownia2/ok/042_init.xi6
-rw-r--r--tests/pracownia2/ok/043_without_expectation_second_weird.xi6
-rw-r--r--tests/pracownia2/ok/044_while_on_or.xi8
-rw-r--r--tests/pracownia2/ok/045_with_expectation_second_weird.xi6
-rw-r--r--tests/pracownia2/ok/046_with_expectation_concat_first_empty.xi6
-rw-r--r--tests/pracownia2/ok/047_with_expectation_concat_empty_magic.xi6
-rw-r--r--tests/pracownia2/ok/048_noconflict_other_scopes.xi11
-rw-r--r--tests/pracownia2/ok/049_ifelse_on_literal.xi9
-rw-r--r--tests/pracownia2/ok/050_without_expectation_curly_elems.xi7
-rw-r--r--tests/pracownia2/ok/051_while_on_pred.xi9
-rw-r--r--tests/pracownia2/ok/052_with_expectation_a_lot_of_magic_bool.xi60
-rw-r--r--tests/pracownia2/ok/053_with_expectation_concat_both_weird.xi6
54 files changed, 474 insertions, 0 deletions
diff --git a/tests/pracownia2/ok/000_without_expectation_concat_second_magic.xi b/tests/pracownia2/ok/000_without_expectation_concat_second_magic.xi
new file mode 100644
index 0000000..24a40c1
--- /dev/null
+++ b/tests/pracownia2/ok/000_without_expectation_concat_second_magic.xi
@@ -0,0 +1,6 @@
+test():int
+{
+ return length({true} + {}[0])
+}
+//@PRACOWNIA
+//@stop_after typechecker
diff --git a/tests/pracownia2/ok/001_ifelse_on_pred.xi b/tests/pracownia2/ok/001_ifelse_on_pred.xi
new file mode 100644
index 0000000..4cab2c4
--- /dev/null
+++ b/tests/pracownia2/ok/001_ifelse_on_pred.xi
@@ -0,0 +1,10 @@
+pred():bool
+test()
+{
+ if pred() {
+ } else {
+ }
+}
+
+//@PRACOWNIA
+//@stop_after typechecker
diff --git a/tests/pracownia2/ok/002_fetch_int.xi b/tests/pracownia2/ok/002_fetch_int.xi
new file mode 100644
index 0000000..447cba9
--- /dev/null
+++ b/tests/pracownia2/ok/002_fetch_int.xi
@@ -0,0 +1,7 @@
+test(x:int[]):int
+{
+ return x[15]
+}
+//@PRACOWNIA
+//@stop_after typechecker
+
diff --git a/tests/pracownia2/ok/003_with_expectation_concat_second_empty.xi b/tests/pracownia2/ok/003_with_expectation_concat_second_empty.xi
new file mode 100644
index 0000000..1844c7c
--- /dev/null
+++ b/tests/pracownia2/ok/003_with_expectation_concat_second_empty.xi
@@ -0,0 +1,6 @@
+test():bool[]
+{
+ return {true} + {}
+}
+//@PRACOWNIA
+//@stop_after typechecker
diff --git a/tests/pracownia2/ok/004_with_expectation_empty_curly.xi b/tests/pracownia2/ok/004_with_expectation_empty_curly.xi
new file mode 100644
index 0000000..30b9ff6
--- /dev/null
+++ b/tests/pracownia2/ok/004_with_expectation_empty_curly.xi
@@ -0,0 +1,7 @@
+test():bool[]
+{
+ return {}
+}
+
+//@PRACOWNIA
+//@stop_after typechecker
diff --git a/tests/pracownia2/ok/005_with_expectation_concat_second_magic.xi b/tests/pracownia2/ok/005_with_expectation_concat_second_magic.xi
new file mode 100644
index 0000000..e3bec49
--- /dev/null
+++ b/tests/pracownia2/ok/005_with_expectation_concat_second_magic.xi
@@ -0,0 +1,6 @@
+test():bool[]
+{
+ return {true} + {}[0]
+}
+//@PRACOWNIA
+//@stop_after typechecker
diff --git a/tests/pracownia2/ok/006_if_on_literal.xi b/tests/pracownia2/ok/006_if_on_literal.xi
new file mode 100644
index 0000000..cd1d2bd
--- /dev/null
+++ b/tests/pracownia2/ok/006_if_on_literal.xi
@@ -0,0 +1,8 @@
+test()
+{
+ if true {
+ }
+}
+
+//@PRACOWNIA
+//@stop_after typechecker
diff --git a/tests/pracownia2/ok/007_without_expectation_concat_second_weird.xi b/tests/pracownia2/ok/007_without_expectation_concat_second_weird.xi
new file mode 100644
index 0000000..377b7bf
--- /dev/null
+++ b/tests/pracownia2/ok/007_without_expectation_concat_second_weird.xi
@@ -0,0 +1,6 @@
+test():int
+{
+ return length({true} + {{}[0]})
+}
+//@PRACOWNIA
+//@stop_after typechecker
diff --git a/tests/pracownia2/ok/008_fetch_fetch.xi b/tests/pracownia2/ok/008_fetch_fetch.xi
new file mode 100644
index 0000000..ad01d39
--- /dev/null
+++ b/tests/pracownia2/ok/008_fetch_fetch.xi
@@ -0,0 +1,7 @@
+test(x:int[][]):int
+{
+ return x[1][2]
+}
+//@PRACOWNIA
+//@stop_after typechecker
+
diff --git a/tests/pracownia2/ok/009_while_on_literal.xi b/tests/pracownia2/ok/009_while_on_literal.xi
new file mode 100644
index 0000000..0bc0458
--- /dev/null
+++ b/tests/pracownia2/ok/009_while_on_literal.xi
@@ -0,0 +1,8 @@
+test()
+{
+ while true {
+ }
+}
+
+//@PRACOWNIA
+//@stop_after typechecker
diff --git a/tests/pracownia2/ok/010_with_expectation_concat_first_weird.xi b/tests/pracownia2/ok/010_with_expectation_concat_first_weird.xi
new file mode 100644
index 0000000..1aa4ac2
--- /dev/null
+++ b/tests/pracownia2/ok/010_with_expectation_concat_first_weird.xi
@@ -0,0 +1,6 @@
+test():bool[]
+{
+ return {{}[0]} + {true}
+}
+//@PRACOWNIA
+//@stop_after typechecker
diff --git a/tests/pracownia2/ok/011_simple_length.xi b/tests/pracownia2/ok/011_simple_length.xi
new file mode 100644
index 0000000..629bf19
--- /dev/null
+++ b/tests/pracownia2/ok/011_simple_length.xi
@@ -0,0 +1,6 @@
+test(x:bool[]):int
+{
+ return length(x)
+}
+//@PRACOWNIA
+//@stop_after typechecker
diff --git a/tests/pracownia2/ok/012_with_expectation_concat_first_magic.xi b/tests/pracownia2/ok/012_with_expectation_concat_first_magic.xi
new file mode 100644
index 0000000..62b3626
--- /dev/null
+++ b/tests/pracownia2/ok/012_with_expectation_concat_first_magic.xi
@@ -0,0 +1,6 @@
+test():bool[]
+{
+ return {}[0] + {true}
+}
+//@PRACOWNIA
+//@stop_after typechecker
diff --git a/tests/pracownia2/ok/013_without_expectation_concat_second_empty.xi b/tests/pracownia2/ok/013_without_expectation_concat_second_empty.xi
new file mode 100644
index 0000000..b294650
--- /dev/null
+++ b/tests/pracownia2/ok/013_without_expectation_concat_second_empty.xi
@@ -0,0 +1,6 @@
+test():int
+{
+ return length({true} + {})
+}
+//@PRACOWNIA
+//@stop_after typechecker
diff --git a/tests/pracownia2/ok/014_if_on_var.xi b/tests/pracownia2/ok/014_if_on_var.xi
new file mode 100644
index 0000000..b69eaf2
--- /dev/null
+++ b/tests/pracownia2/ok/014_if_on_var.xi
@@ -0,0 +1,8 @@
+test(x:bool)
+{
+ if x {
+ }
+}
+
+//@PRACOWNIA
+//@stop_after typechecker
diff --git a/tests/pracownia2/ok/015_with_expectation_concat_second_weird.xi b/tests/pracownia2/ok/015_with_expectation_concat_second_weird.xi
new file mode 100644
index 0000000..c7993e3
--- /dev/null
+++ b/tests/pracownia2/ok/015_with_expectation_concat_second_weird.xi
@@ -0,0 +1,6 @@
+test():bool[]
+{
+ return {true} + {{}[0]}
+}
+//@PRACOWNIA
+//@stop_after typechecker
diff --git a/tests/pracownia2/ok/016_with_expectation_a_lot_of_magic_int.xi b/tests/pracownia2/ok/016_with_expectation_a_lot_of_magic_int.xi
new file mode 100644
index 0000000..d73c4c6
--- /dev/null
+++ b/tests/pracownia2/ok/016_with_expectation_a_lot_of_magic_int.xi
@@ -0,0 +1,40 @@
+consumer1(x:int[])
+consumer2(x:int[][])
+consumer3(x:int[][][])
+
+test()
+{
+ consumer1(
+ { {{}[0]}[0]
+ , {}[0]
+ , {}[0][0][0]
+ })
+ consumer2(
+ { {{}[0]}[0]
+ , {}[0]
+ , {}[0][0][0]
+ })
+ consumer2(
+ { { {{}[0]}[0] }
+ , { {}[0] }
+ , { {}[0][0][0] }
+ })
+ consumer3(
+ { {{}[0]}[0]
+ , {}[0]
+ , {}[0][0][0]
+ })
+ consumer3(
+ { { {{}[0]}[0] }
+ , { {}[0] }
+ , { {}[0][0][0] }
+ })
+ consumer3(
+ { { { {{}[0]}[0] } }
+ , { { {}[0] } }
+ , { { {}[0][0][0] } }
+ })
+}
+
+//@PRACOWNIA
+//@stop_after typechecker
diff --git a/tests/pracownia2/ok/017_ifelse_on_and.xi b/tests/pracownia2/ok/017_ifelse_on_and.xi
new file mode 100644
index 0000000..5ac374e
--- /dev/null
+++ b/tests/pracownia2/ok/017_ifelse_on_and.xi
@@ -0,0 +1,9 @@
+test()
+{
+ if true & false {
+ } else {
+ }
+}
+
+//@PRACOWNIA
+//@stop_after typechecker
diff --git a/tests/pracownia2/ok/018_if_on_pred.xi b/tests/pracownia2/ok/018_if_on_pred.xi
new file mode 100644
index 0000000..1bc8917
--- /dev/null
+++ b/tests/pracownia2/ok/018_if_on_pred.xi
@@ -0,0 +1,9 @@
+pred():bool
+test()
+{
+ if pred() {
+ }
+}
+
+//@PRACOWNIA
+//@stop_after typechecker
diff --git a/tests/pracownia2/ok/019_ifelse_on_or.xi b/tests/pracownia2/ok/019_ifelse_on_or.xi
new file mode 100644
index 0000000..451ce2e
--- /dev/null
+++ b/tests/pracownia2/ok/019_ifelse_on_or.xi
@@ -0,0 +1,9 @@
+test()
+{
+ if true | false {
+ } else {
+ }
+}
+
+//@PRACOWNIA
+//@stop_after typechecker
diff --git a/tests/pracownia2/ok/020_with_expectation_concat_both_empty.xi b/tests/pracownia2/ok/020_with_expectation_concat_both_empty.xi
new file mode 100644
index 0000000..a14097b
--- /dev/null
+++ b/tests/pracownia2/ok/020_with_expectation_concat_both_empty.xi
@@ -0,0 +1,6 @@
+test():bool[]
+{
+ return {} + {}
+}
+//@PRACOWNIA
+//@stop_after typechecker
diff --git a/tests/pracownia2/ok/021_mutualrec.xi b/tests/pracownia2/ok/021_mutualrec.xi
new file mode 100644
index 0000000..26d1b5b
--- /dev/null
+++ b/tests/pracownia2/ok/021_mutualrec.xi
@@ -0,0 +1,12 @@
+
+f(): int {
+ return g()
+}
+
+
+g(): int {
+ return f()
+}
+
+//@PRACOWNIA
+//@stop_after parser
diff --git a/tests/pracownia2/ok/022_int.xi b/tests/pracownia2/ok/022_int.xi
new file mode 100644
index 0000000..ae97ae7
--- /dev/null
+++ b/tests/pracownia2/ok/022_int.xi
@@ -0,0 +1,10 @@
+test()
+{
+ x:int = 1
+ x = 42
+ x = 'a'
+}
+
+
+//@PRACOWNIA
+//@stop_after typechecker
diff --git a/tests/pracownia2/ok/023_with_expectation_concat_both_magic.xi b/tests/pracownia2/ok/023_with_expectation_concat_both_magic.xi
new file mode 100644
index 0000000..b30b3bd
--- /dev/null
+++ b/tests/pracownia2/ok/023_with_expectation_concat_both_magic.xi
@@ -0,0 +1,6 @@
+test():bool[]
+{
+ return {}[0] + {}[0]
+}
+//@PRACOWNIA
+//@stop_after typechecker
diff --git a/tests/pracownia2/ok/024_store_bool.xi b/tests/pracownia2/ok/024_store_bool.xi
new file mode 100644
index 0000000..5991605
--- /dev/null
+++ b/tests/pracownia2/ok/024_store_bool.xi
@@ -0,0 +1,6 @@
+test(x:bool[])
+{
+ x[15] = true
+}
+//@PRACOWNIA
+//@stop_after typechecker
diff --git a/tests/pracownia2/ok/025_with_expectation_concat_magic_empty.xi b/tests/pracownia2/ok/025_with_expectation_concat_magic_empty.xi
new file mode 100644
index 0000000..9a00030
--- /dev/null
+++ b/tests/pracownia2/ok/025_with_expectation_concat_magic_empty.xi
@@ -0,0 +1,6 @@
+test():bool[]
+{
+ return {}[0] + {}
+}
+//@PRACOWNIA
+//@stop_after typechecker
diff --git a/tests/pracownia2/ok/026_length_string.xi b/tests/pracownia2/ok/026_length_string.xi
new file mode 100644
index 0000000..acef6a4
--- /dev/null
+++ b/tests/pracownia2/ok/026_length_string.xi
@@ -0,0 +1,6 @@
+test():int
+{
+ return length("Klucze do domu")
+}
+//@PRACOWNIA
+//@stop_after typechecker
diff --git a/tests/pracownia2/ok/027_with_expectation_curly_elems.xi b/tests/pracownia2/ok/027_with_expectation_curly_elems.xi
new file mode 100644
index 0000000..eb407c1
--- /dev/null
+++ b/tests/pracownia2/ok/027_with_expectation_curly_elems.xi
@@ -0,0 +1,7 @@
+test():bool[]
+{
+ return {true, false, true}
+}
+
+//@PRACOWNIA
+//@stop_after typechecker
diff --git a/tests/pracownia2/ok/028_while_on_and.xi b/tests/pracownia2/ok/028_while_on_and.xi
new file mode 100644
index 0000000..cf00ff1
--- /dev/null
+++ b/tests/pracownia2/ok/028_while_on_and.xi
@@ -0,0 +1,8 @@
+test()
+{
+ while true & false {
+ }
+}
+
+//@PRACOWNIA
+//@stop_after typechecker
diff --git a/tests/pracownia2/ok/029_with_expectation_concat_empty_weird.xi b/tests/pracownia2/ok/029_with_expectation_concat_empty_weird.xi
new file mode 100644
index 0000000..e361865
--- /dev/null
+++ b/tests/pracownia2/ok/029_with_expectation_concat_empty_weird.xi
@@ -0,0 +1,6 @@
+test():bool[]
+{
+ return {} + {{}[0]}
+}
+//@PRACOWNIA
+//@stop_after typechecker
diff --git a/tests/pracownia2/ok/030_intA.xi b/tests/pracownia2/ok/030_intA.xi
new file mode 100644
index 0000000..3c052aa
--- /dev/null
+++ b/tests/pracownia2/ok/030_intA.xi
@@ -0,0 +1,8 @@
+test()
+{
+ x:int[] = "University"
+ x = "of Wroclaw"
+}
+
+//@PRACOWNIA
+//@stop_after typechecker
diff --git a/tests/pracownia2/ok/031_if_on_or.xi b/tests/pracownia2/ok/031_if_on_or.xi
new file mode 100644
index 0000000..5ee0e99
--- /dev/null
+++ b/tests/pracownia2/ok/031_if_on_or.xi
@@ -0,0 +1,8 @@
+test()
+{
+ if true | false {
+ }
+}
+
+//@PRACOWNIA
+//@stop_after typechecker
diff --git a/tests/pracownia2/ok/032_with_expectation_first_weird.xi b/tests/pracownia2/ok/032_with_expectation_first_weird.xi
new file mode 100644
index 0000000..b25485a
--- /dev/null
+++ b/tests/pracownia2/ok/032_with_expectation_first_weird.xi
@@ -0,0 +1,6 @@
+test():bool[]
+{
+ return {{}[0], false, true}
+}
+//@PRACOWNIA
+//@stop_after typechecker
diff --git a/tests/pracownia2/ok/033_with_expectation_concat_weird_empty.xi b/tests/pracownia2/ok/033_with_expectation_concat_weird_empty.xi
new file mode 100644
index 0000000..86a956b
--- /dev/null
+++ b/tests/pracownia2/ok/033_with_expectation_concat_weird_empty.xi
@@ -0,0 +1,6 @@
+test():bool[]
+{
+ return {{}[0]} + {}
+}
+//@PRACOWNIA
+//@stop_after typechecker
diff --git a/tests/pracownia2/ok/034_bool.xi b/tests/pracownia2/ok/034_bool.xi
new file mode 100644
index 0000000..ebf7565
--- /dev/null
+++ b/tests/pracownia2/ok/034_bool.xi
@@ -0,0 +1,8 @@
+test()
+{
+ x:bool = true
+ x = false
+}
+
+//@PRACOWNIA
+//@stop_after typechecker
diff --git a/tests/pracownia2/ok/035_store_store.xi b/tests/pracownia2/ok/035_store_store.xi
new file mode 100644
index 0000000..8af586b
--- /dev/null
+++ b/tests/pracownia2/ok/035_store_store.xi
@@ -0,0 +1,6 @@
+test(x:bool[][])
+{
+ x[0][1] = true
+}
+//@PRACOWNIA
+//@stop_after typechecker
diff --git a/tests/pracownia2/ok/036_ifelse_on_var.xi b/tests/pracownia2/ok/036_ifelse_on_var.xi
new file mode 100644
index 0000000..e906f81
--- /dev/null
+++ b/tests/pracownia2/ok/036_ifelse_on_var.xi
@@ -0,0 +1,9 @@
+test(x:bool)
+{
+ if x {
+ } else {
+ }
+}
+
+//@PRACOWNIA
+//@stop_after typechecker
diff --git a/tests/pracownia2/ok/037_with_expectation_concat.xi b/tests/pracownia2/ok/037_with_expectation_concat.xi
new file mode 100644
index 0000000..402e822
--- /dev/null
+++ b/tests/pracownia2/ok/037_with_expectation_concat.xi
@@ -0,0 +1,6 @@
+test():bool[]
+{
+ return {false, true} + {true, false}
+}
+//@PRACOWNIA
+//@stop_after typechecker
diff --git a/tests/pracownia2/ok/038_length_curly.xi b/tests/pracownia2/ok/038_length_curly.xi
new file mode 100644
index 0000000..7aae6bd
--- /dev/null
+++ b/tests/pracownia2/ok/038_length_curly.xi
@@ -0,0 +1,6 @@
+test():int
+{
+ return length({true, false})
+}
+//@PRACOWNIA
+//@stop_after typechecker
diff --git a/tests/pracownia2/ok/039_if_on_and.xi b/tests/pracownia2/ok/039_if_on_and.xi
new file mode 100644
index 0000000..bff5231
--- /dev/null
+++ b/tests/pracownia2/ok/039_if_on_and.xi
@@ -0,0 +1,8 @@
+test()
+{
+ if true & false {
+ }
+}
+
+//@PRACOWNIA
+//@stop_after typechecker
diff --git a/tests/pracownia2/ok/040_while_on_var.xi b/tests/pracownia2/ok/040_while_on_var.xi
new file mode 100644
index 0000000..881cc76
--- /dev/null
+++ b/tests/pracownia2/ok/040_while_on_var.xi
@@ -0,0 +1,8 @@
+test(x:bool)
+{
+ while x {
+ }
+}
+
+//@PRACOWNIA
+//@stop_after typechecker
diff --git a/tests/pracownia2/ok/041_without_expectation_concat.xi b/tests/pracownia2/ok/041_without_expectation_concat.xi
new file mode 100644
index 0000000..bb368db
--- /dev/null
+++ b/tests/pracownia2/ok/041_without_expectation_concat.xi
@@ -0,0 +1,6 @@
+test():int
+{
+ return length({false, true} + {true, false})
+}
+//@PRACOWNIA
+//@stop_after typechecker
diff --git a/tests/pracownia2/ok/042_init.xi b/tests/pracownia2/ok/042_init.xi
new file mode 100644
index 0000000..3f5c86f
--- /dev/null
+++ b/tests/pracownia2/ok/042_init.xi
@@ -0,0 +1,6 @@
+test()
+{
+ a:int[42][];
+}
+//@PRACOWNIA
+//@stop_after typechecker
diff --git a/tests/pracownia2/ok/043_without_expectation_second_weird.xi b/tests/pracownia2/ok/043_without_expectation_second_weird.xi
new file mode 100644
index 0000000..66997bf
--- /dev/null
+++ b/tests/pracownia2/ok/043_without_expectation_second_weird.xi
@@ -0,0 +1,6 @@
+test():int
+{
+ return length({false, {{}}[0][0], true})
+}
+//@PRACOWNIA
+//@stop_after typechecker
diff --git a/tests/pracownia2/ok/044_while_on_or.xi b/tests/pracownia2/ok/044_while_on_or.xi
new file mode 100644
index 0000000..bf80140
--- /dev/null
+++ b/tests/pracownia2/ok/044_while_on_or.xi
@@ -0,0 +1,8 @@
+test()
+{
+ while true | false {
+ }
+}
+
+//@PRACOWNIA
+//@stop_after typechecker
diff --git a/tests/pracownia2/ok/045_with_expectation_second_weird.xi b/tests/pracownia2/ok/045_with_expectation_second_weird.xi
new file mode 100644
index 0000000..26f7d74
--- /dev/null
+++ b/tests/pracownia2/ok/045_with_expectation_second_weird.xi
@@ -0,0 +1,6 @@
+test():bool[]
+{
+ return {false, {{}}[0][0], true}
+}
+//@PRACOWNIA
+//@stop_after typechecker
diff --git a/tests/pracownia2/ok/046_with_expectation_concat_first_empty.xi b/tests/pracownia2/ok/046_with_expectation_concat_first_empty.xi
new file mode 100644
index 0000000..c9b0b43
--- /dev/null
+++ b/tests/pracownia2/ok/046_with_expectation_concat_first_empty.xi
@@ -0,0 +1,6 @@
+test():bool[]
+{
+ return {} + {true}
+}
+//@PRACOWNIA
+//@stop_after typechecker
diff --git a/tests/pracownia2/ok/047_with_expectation_concat_empty_magic.xi b/tests/pracownia2/ok/047_with_expectation_concat_empty_magic.xi
new file mode 100644
index 0000000..92dc19e
--- /dev/null
+++ b/tests/pracownia2/ok/047_with_expectation_concat_empty_magic.xi
@@ -0,0 +1,6 @@
+test():bool[]
+{
+ return {} + {}[0]
+}
+//@PRACOWNIA
+//@stop_after typechecker
diff --git a/tests/pracownia2/ok/048_noconflict_other_scopes.xi b/tests/pracownia2/ok/048_noconflict_other_scopes.xi
new file mode 100644
index 0000000..788c5ee
--- /dev/null
+++ b/tests/pracownia2/ok/048_noconflict_other_scopes.xi
@@ -0,0 +1,11 @@
+test(x:bool)
+{
+ if x {
+ y:int
+ } else {
+ y:int[]
+ }
+}
+//@PRACOWNIA
+//@stop_after typechecker
+
diff --git a/tests/pracownia2/ok/049_ifelse_on_literal.xi b/tests/pracownia2/ok/049_ifelse_on_literal.xi
new file mode 100644
index 0000000..abae0f2
--- /dev/null
+++ b/tests/pracownia2/ok/049_ifelse_on_literal.xi
@@ -0,0 +1,9 @@
+test()
+{
+ if true {
+ } else {
+ }
+}
+
+//@PRACOWNIA
+//@stop_after typechecker
diff --git a/tests/pracownia2/ok/050_without_expectation_curly_elems.xi b/tests/pracownia2/ok/050_without_expectation_curly_elems.xi
new file mode 100644
index 0000000..246c002
--- /dev/null
+++ b/tests/pracownia2/ok/050_without_expectation_curly_elems.xi
@@ -0,0 +1,7 @@
+test():int
+{
+ return length({true, false, true})
+}
+
+//@PRACOWNIA
+//@stop_after typechecker
diff --git a/tests/pracownia2/ok/051_while_on_pred.xi b/tests/pracownia2/ok/051_while_on_pred.xi
new file mode 100644
index 0000000..9167206
--- /dev/null
+++ b/tests/pracownia2/ok/051_while_on_pred.xi
@@ -0,0 +1,9 @@
+pred():bool
+test()
+{
+ while pred() {
+ }
+}
+
+//@PRACOWNIA
+//@stop_after typechecker
diff --git a/tests/pracownia2/ok/052_with_expectation_a_lot_of_magic_bool.xi b/tests/pracownia2/ok/052_with_expectation_a_lot_of_magic_bool.xi
new file mode 100644
index 0000000..3400fbc
--- /dev/null
+++ b/tests/pracownia2/ok/052_with_expectation_a_lot_of_magic_bool.xi
@@ -0,0 +1,60 @@
+consumer1(x:bool[])
+consumer2(x:bool[][])
+consumer3(x:bool[][][])
+
+test()
+{
+ consumer1(
+ { {{}[0]}[0]
+ , {}[0]
+ , {}[0][0][0]
+ })
+ consumer2(
+ { {{}[0]}[0]
+ , {}[0]
+ , {}[0][0][0]
+ })
+ consumer2(
+ { { {{}[0]}[0] }
+ , {}[0]
+ , {}[0][0][0]
+ })
+ consumer2(
+ { {{}[0]}[0]
+ , { {}[0] }
+ , {}[0][0][0]
+ })
+ consumer2(
+ { {{}[0]}[0]
+ , {}[0]
+ , { {}[0][0][0] }
+ })
+ consumer2(
+ { { {{}[0]}[0] }
+ , { {}[0] }
+ , { {}[0][0][0] }
+ })
+ consumer3(
+ { {{}[0]}[0]
+ , {}[0]
+ , {}[0][0][0]
+ })
+ consumer3(
+ { { {{}[0]}[0] }
+ , { {}[0] }
+ , { {}[0][0][0] }
+ })
+ consumer3(
+ { {{}[0]}[0]
+ , {}[0]
+ , { {}[0][0][0] }
+ })
+ consumer3(
+ { { { {{}[0]}[0] } }
+ , { { {}[0] } }
+ , { { {}[0][0][0] } }
+ })
+}
+
+//@PRACOWNIA
+//@stop_after typechecker
diff --git a/tests/pracownia2/ok/053_with_expectation_concat_both_weird.xi b/tests/pracownia2/ok/053_with_expectation_concat_both_weird.xi
new file mode 100644
index 0000000..28923a5
--- /dev/null
+++ b/tests/pracownia2/ok/053_with_expectation_concat_both_weird.xi
@@ -0,0 +1,6 @@
+test():bool[]
+{
+ return {{}[0]} + {{}[0]}
+}
+//@PRACOWNIA
+//@stop_after typechecker