Test the subbitstring and takebits functions.
authorRichard W.M. Jones <rich@annexia.org>
Wed, 27 Aug 2008 12:56:11 +0000 (12:56 +0000)
committerRichard W.M. Jones <rich@annexia.org>
Wed, 27 Aug 2008 12:56:11 +0000 (12:56 +0000)
tests/33_substring.ml [new file with mode: 0644]
tests/34_takebits.ml [new file with mode: 0644]

diff --git a/tests/33_substring.ml b/tests/33_substring.ml
new file mode 100644 (file)
index 0000000..f6bc93d
--- /dev/null
@@ -0,0 +1,20 @@
+(* Test subbitstring call.
+ * $Id$
+ *)
+
+open Printf
+open Bitstring
+
+let () =
+  let bits = make_bitstring 65 '\x5a' in
+  for off = 0 to 65 do
+    for len = 65-off to 0 do
+      let sub = subbitstring bits off len in
+      for i = 0 to len-1 do
+       if get bits (off+i) <> get sub i then (
+         eprintf "33_substring: failed %d %d %d\n" off len i;
+         exit 1
+       )
+      done
+    done
+  done
diff --git a/tests/34_takebits.ml b/tests/34_takebits.ml
new file mode 100644 (file)
index 0000000..b86591d
--- /dev/null
@@ -0,0 +1,13 @@
+(* Test takebits call.
+ * $Id$
+ *)
+
+open Printf
+open Bitstring
+
+let () =
+  let bits = make_bitstring 65 '\x5a' in
+  for len = 0 to 65 do
+    let sub = takebits len bits in
+    assert (bitstring_length sub = len)
+  done