aboutsummaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorOskari Timperi <oskari.timperi@iki.fi>2018-03-24 15:44:30 +0200
committerOskari Timperi <oskari.timperi@iki.fi>2018-03-24 15:44:30 +0200
commit0bc7b67059868af65d2158a8aeade5b6f777431b (patch)
treeb8ce5211ac3cf673a62911e852ed014d5f11f43d /tests
downloadnimpb-0bc7b67059868af65d2158a8aeade5b6f777431b.tar.gz
nimpb-0bc7b67059868af65d2158a8aeade5b6f777431b.zip
initial commit
Diffstat (limited to 'tests')
-rw-r--r--tests/nim.cfg1
-rw-r--r--tests/test1.nim36
-rw-r--r--tests/test2.nim36
3 files changed, 73 insertions, 0 deletions
diff --git a/tests/nim.cfg b/tests/nim.cfg
new file mode 100644
index 0000000..a119208
--- /dev/null
+++ b/tests/nim.cfg
@@ -0,0 +1 @@
+--path:"../src"
diff --git a/tests/test1.nim b/tests/test1.nim
new file mode 100644
index 0000000..8ddd845
--- /dev/null
+++ b/tests/test1.nim
@@ -0,0 +1,36 @@
+import intsets
+
+import protobuf/types
+import protobuf/gen
+import protobuf/stream
+
+const
+ Test1Desc = MessageDesc(
+ name: "Test1",
+ fields: @[
+ FieldDesc(
+ name: "a",
+ number: 1,
+ ftype: FieldType.Int32,
+ label: FieldLabel.Required,
+ typeName: "",
+ packed: true
+ )
+ ]
+ )
+
+generateMessageType(Test1Desc)
+generateMessageProcs(Test1Desc)
+
+import strutils
+let message = newTest1()
+setA(message, 150)
+let ss = newStringStream()
+let pbs = newProtobufStream(ss)
+writeTest1(pbs, message)
+for b in ss.data:
+ echo(toHex(int(b), 2))
+
+setPosition(pbs, 0)
+let message2 = readTest1(pbs)
+echo(message2.a)
diff --git a/tests/test2.nim b/tests/test2.nim
new file mode 100644
index 0000000..6ddbed7
--- /dev/null
+++ b/tests/test2.nim
@@ -0,0 +1,36 @@
+import intsets
+
+import protobuf/types
+import protobuf/gen
+import protobuf/stream
+
+const
+ Test2Desc = MessageDesc(
+ name: "Test2",
+ fields: @[
+ FieldDesc(
+ name: "b",
+ number: 2,
+ ftype: FieldType.String,
+ label: FieldLabel.Required,
+ typeName: "",
+ packed: false
+ )
+ ]
+ )
+
+generateMessageType(Test2Desc)
+generateMessageProcs(Test2Desc)
+
+import strutils
+let message = newTest2()
+setB(message, "testing")
+let ss = newStringStream()
+let pbs = newProtobufStream(ss)
+writeTest2(pbs, message)
+for b in ss.data:
+ echo(toHex(int(b), 2))
+
+setPosition(pbs, 0)
+let message2 = readTest2(pbs)
+echo(message2.b)