OSDN Git Service

Change TagType.t to use with Abc.t
[happyabc/happyabc.git] / swflib / swfOutTest.ml
index 2de5878..3d26751 100644 (file)
@@ -1,14 +1,24 @@
 open Base
 open SwfType
-open SwfOut
 open OUnit
 
+module M = SwfOut.Make(
+  struct
+    type t = int * SwfBaseOut.s list
+    let write x = x
+  end)
+
+open M
+
 let char c =
   `Ui8 (Char.code c)
 
 let ok ?msg f x y =
   assert_equal ?msg y (f x)
 
+let ok_b ?msg f x y =
+  assert_equal ?msg (SwfBaseOut.to_list y) (SwfBaseOut.to_list (f x))
+
 let _ = begin "swfOut.ml" >::: [
   "header" >:: begin fun () ->
     let swf = {
@@ -18,7 +28,7 @@ let _ = begin "swfOut.ml" >::: [
       frame_count = 42;
       tags        = []
     } in
-      ok to_base swf [
+      ok write swf [
        (* signature *)
        char 'F'; char 'W'; char 'S';
        (* version *)
@@ -34,10 +44,10 @@ let _ = begin "swfOut.ml" >::: [
       ]
   end;
   "tag" >:: begin fun () ->
-    ok ~msg:"size < 64" of_tag {tag=1; data=[`Ui8 1;`Ui8 2; `Ui8 3]}
+    ok_b ~msg:"size < 64" of_tag (1, [`Ui8 1;`Ui8 2; `Ui8 3])
       [ `Ui16 0b0000000001_000011; `Ui8 1; `Ui8 2; `Ui8 3 ];
     (* size >= 64*)
-    ok ~msg:"size > 64" of_tag {tag=1; data = HList.replicate 64 (`Ui8 1)} @@
+    ok_b ~msg:"size > 64" of_tag (1, HList.replicate 64 (`Ui8 1)) @@
       [ `Ui16 0b0000000001_111111; `Si32 64l ] @ HList.replicate 64 (`Ui8 1)
   end
 ] end +> run_test_tt_main