aboutsummaryrefslogtreecommitdiff
path: root/tests/sheet_test.ml
diff options
context:
space:
mode:
Diffstat (limited to 'tests/sheet_test.ml')
-rwxr-xr-xtests/sheet_test.ml29
1 files changed, 19 insertions, 10 deletions
diff --git a/tests/sheet_test.ml b/tests/sheet_test.ml
index de42730..1a1bef3 100755
--- a/tests/sheet_test.ml
+++ b/tests/sheet_test.ml
@@ -1,11 +1,20 @@
open OUnit2
+module Option = Tools.Option
+
let u = UTF8.from_utf8string
-let _msg ~expected ~result =
+let _msg ~expected ~result = begin
+
+ let get_string v = match v with
+ | None -> "Undefined"
+ | Some x -> UTF8.raw_encode @@ ScTypes.Result.show x
+ in
+
Printf.sprintf "Expected %s but got %s"
- (UTF8.encode @@ ScTypes.Result.show expected)
- (UTF8.encode @@ ScTypes.Result.show result)
+ (get_string expected)
+ (get_string result)
+end
(** Test a simple references between two cells *)
let test_create_ref_1 ctx = begin
@@ -15,7 +24,7 @@ let test_create_ref_1 ctx = begin
|> snd |> Sheet.Raw.add (0,0) @@ Expression.load @@ u"=C3"
|> snd in
let result = (Sheet.Raw.get_value (0, 0) s) in
- let expected = (ScTypes.Result (ScTypes.Num (Num.num_of_int (-1), None))) in
+ let expected = Some (ScTypes.Result (ScTypes.Num (Num.num_of_int (-1), None))) in
assert_equal
~msg:(_msg ~expected ~result)
@@ -33,7 +42,7 @@ let test_create_ref_2 ctx = begin
let result = (Sheet.Raw.get_value (2, 2) s) in
- let expected = ScTypes.Result (ScTypes.Num (Num.num_of_int 123, None)) in
+ let expected = Some (ScTypes.Result (ScTypes.Num (Num.num_of_int 123, None))) in
assert_equal
~msg:(_msg ~expected ~result)
@@ -47,7 +56,7 @@ let test_create_direct_cycle ctx = begin
|> Sheet.Raw.add (2,2) @@ Expression.load @@ u"=B2"
|> snd in
let result = (Sheet.Raw.get_value (2, 2) s) in
- let expected = ScTypes.Error Errors.TypeError in
+ let expected = Some (ScTypes.Error Errors.TypeError) in
assert_equal
~msg:(_msg ~expected ~result)
@@ -63,7 +72,7 @@ let test_create_indirect_cycle ctx = begin
|> snd |> Sheet.Raw.add (0,0) @@ Expression.load @@ u"=A1"
|> snd in
let result = (Sheet.Raw.get_value (0, 0) s) in
- let expected = ScTypes.Error Errors.TypeError in
+ let expected = Some (ScTypes.Error Errors.TypeError) in
assert_equal
~msg:(_msg ~expected ~result)
@@ -80,7 +89,7 @@ let test_delete ctx = begin
|> snd |> Sheet.Raw.remove (3,3)
|> snd in
let result = (Sheet.Raw.get_value (3, 3) s) in
- let expected = ScTypes.Result ScTypes.Undefined in
+ let expected = None in
assert_equal
~msg:(_msg ~expected ~result)
@@ -101,8 +110,8 @@ let test_update_succs1 ctx = begin
let expected = Cell.Set.of_list [(1,1); (1, 2); (2,2)] in
let msg = Printf.sprintf "Expected %s but got %s"
- (UTF8.encode @@ Tools.String.print_buffer Cell.Set.printb expected)
- (UTF8.encode @@ Tools.String.print_buffer Cell.Set.printb result) in
+ (UTF8.raw_encode @@ Tools.String.print_buffer Cell.Set.printb expected)
+ (UTF8.raw_encode @@ Tools.String.print_buffer Cell.Set.printb result) in
assert_equal ~msg
expected