diff options
Diffstat (limited to 'tests/fields')
-rw-r--r-- | tests/fields/tfieldindex.nim | 21 | ||||
-rw-r--r-- | tests/fields/tfielditerator.nim | 46 | ||||
-rw-r--r-- | tests/fields/tfielditerator2.nim | 70 | ||||
-rw-r--r-- | tests/fields/tfields_in_template.nim | 15 | ||||
-rw-r--r-- | tests/fields/tfields_with_break.nim | 33 |
5 files changed, 0 insertions, 185 deletions
diff --git a/tests/fields/tfieldindex.nim b/tests/fields/tfieldindex.nim deleted file mode 100644 index d11c1a8b2..000000000 --- a/tests/fields/tfieldindex.nim +++ /dev/null @@ -1,21 +0,0 @@ -discard """ - output: "1" -""" - -type - TMyTuple = tuple[a, b: int] - -proc indexOf*(t: typedesc, name: string): int = - ## takes a tuple and looks for the field by name. - ## returs index of that field. - var - d: t - i = 0 - for n, x in fieldPairs(d): - if n == name: return i - i.inc - raise newException(EInvalidValue, "No field " & name & " in type " & - astToStr(t)) - -echo TMyTuple.indexOf("b") - diff --git a/tests/fields/tfielditerator.nim b/tests/fields/tfielditerator.nim deleted file mode 100644 index 6d15ea05d..000000000 --- a/tests/fields/tfielditerator.nim +++ /dev/null @@ -1,46 +0,0 @@ -discard """ - output: ''' -a char: true -a char: false -an int: 5 -an int: 6 -a string: abc -false -true -true -false -true -a: a -b: b -x: 5 -y: 6 -z: abc -''' -""" - -type - TMyTuple = tuple[a, b: char, x, y: int, z: string] - -proc p(x: char) = echo "a char: ", x <= 'a' -proc p(x: int) = echo "an int: ", x -proc p(x: string) = echo "a string: ", x - -var x: TMyTuple = ('a', 'b', 5, 6, "abc") -var y: TMyTuple = ('A', 'b', 5, 9, "abc") - -for f in fields(x): - p f - -for a, b in fields(x, y): - echo a == b - -for key, val in fieldPairs(x): - echo key, ": ", val - -assert x != y -assert x == x -assert(not (x < x)) -assert x <= x -assert y < x -assert y <= x - diff --git a/tests/fields/tfielditerator2.nim b/tests/fields/tfielditerator2.nim deleted file mode 100644 index c8e230cf5..000000000 --- a/tests/fields/tfielditerator2.nim +++ /dev/null @@ -1,70 +0,0 @@ -discard """ - output: ''' -a char: true -a char: false -an int: 5 -an int: 6 -a string: abc -a string: I'm root! -CMP false -CMP true -CMP true -CMP false -CMP true -CMP true -a: a -b: b -x: 5 -y: 6 -z: abc -thaRootMan: I'm root! -myDisc: enC -c: Z -enC -Z -''' -""" - -type - SomeRootObj = object of RootObj - thaRootMan: string - TMyObj = object of SomeRootObj - a, b: char - x, y: int - z: string - - TEnum = enum enA, enB, enC - TMyCaseObj = object - case myDisc: TEnum - of enA: a: int - of enB: b: string - of enC: c: char - -proc p(x: char) = echo "a char: ", x <= 'a' -proc p(x: int) = echo "an int: ", x -proc p(x: string) = echo "a string: ", x - -proc myobj(a, b: char, x, y: int, z: string): TMyObj = - result.a = a; result.b = b; result.x = x; result.y = y; result.z = z - result.thaRootMan = "I'm root!" - -var x = myobj('a', 'b', 5, 6, "abc") -var y = myobj('A', 'b', 5, 9, "abc") - -for f in fields(x): - p f - -for a, b in fields(x, y): - echo "CMP ", a == b - -for key, val in fieldPairs(x): - echo key, ": ", val - -var co: TMyCaseObj -co.myDisc = enC -co.c = 'Z' -for key, val in fieldPairs(co): - echo key, ": ", val - -for val in fields(co): - echo val diff --git a/tests/fields/tfields_in_template.nim b/tests/fields/tfields_in_template.nim deleted file mode 100644 index 9352a7a51..000000000 --- a/tests/fields/tfields_in_template.nim +++ /dev/null @@ -1,15 +0,0 @@ -discard """ - output: '''n -n''' -""" - -# bug #1902 -# This works. -for name, value in (n: "v").fieldPairs: - echo name - -# This doesn't compile - "expression 'name' has no type (or is ambiguous)". -template wrapper: stmt = - for name, value in (n: "v").fieldPairs: - echo name -wrapper() diff --git a/tests/fields/tfields_with_break.nim b/tests/fields/tfields_with_break.nim deleted file mode 100644 index 1f2632692..000000000 --- a/tests/fields/tfields_with_break.nim +++ /dev/null @@ -1,33 +0,0 @@ -discard """ - output: '''(one: 1, two: 2, three: 3) -1 -2 -3 -(one: 4, two: 5, three: 6) -4 -(one: 7, two: 8, three: 9) -7 -8 -9''' -""" - -# bug #2134 -type - TestType = object - one: int - two: int - three: int - -var - ab = TestType(one:1, two:2, three:3) - ac = TestType(one:4, two:5, three:6) - ad = TestType(one:7, two:8, three:9) - tstSeq = [ab, ac, ad] - -for tstElement in mitems(tstSeq): - echo tstElement - for tstField in fields(tstElement): - #for tstField in [1,2,4,6]: - echo tstField - if tstField == 4: - break |