summary refs log tree commit diff stats
path: root/tests/seq/tseqcon.nim
diff options
context:
space:
mode:
authorAraq <rumpf_a@web.de>2014-01-13 02:10:03 +0100
committerAraq <rumpf_a@web.de>2014-01-13 02:10:03 +0100
commit20b5f31c03fb556ec0aa2428a40adbac004d8987 (patch)
tree58086941e7d6bb8f480ca1173a95722ada9435b2 /tests/seq/tseqcon.nim
parent51ee524109cf7e3e86c676bc1676063a01bfd979 (diff)
downloadNim-20b5f31c03fb556ec0aa2428a40adbac004d8987.tar.gz
new tester; all tests categorized
Diffstat (limited to 'tests/seq/tseqcon.nim')
-rw-r--r--tests/seq/tseqcon.nim51
1 files changed, 51 insertions, 0 deletions
diff --git a/tests/seq/tseqcon.nim b/tests/seq/tseqcon.nim
new file mode 100644
index 000000000..6e0a5b56d
--- /dev/null
+++ b/tests/seq/tseqcon.nim
@@ -0,0 +1,51 @@
+discard """
+  file: "tseqcon.nim"
+  output: "Hithere, what\'s your name?Hathere, what\'s your name?"
+"""
+# Test the add proc for sequences and strings

+

+const

+  nestedFixed = true

+

+type

+  TRec {.final.} = object

+    x, y: int

+    s: string

+    seq: seq[string]

+  TRecSeq = seq[TRec]

+

+proc test() =

+  var s, b: seq[string]

+  s = @[]

+  add(s, "Hi")

+  add(s, "there, ")

+  add(s, "what's your name?")

+

+  b = s # deep copying here!

+  b[0][1] = 'a'

+

+  for i in 0 .. len(s)-1:

+    write(stdout, s[i])

+  for i in 0 .. len(b)-1:

+    write(stdout, b[i])

+

+

+when nestedFixed:

+  proc nested() =

+    var

+      s: seq[seq[string]]

+    for i in 0..10_000: # test if the garbage collector

+      # now works with sequences

+      s = @[

+        @["A", "B", "C", "D"],

+        @["E", "F", "G", "H"],

+        @["I", "J", "K", "L"],

+        @["M", "N", "O", "P"]]

+

+test()

+when nestedFixed:

+  nested()

+

+#OUT Hithere, what's your name?Hathere, what's your name?

+
+