From 567f911093967d62bff1540a5dee2679a1082e01 Mon Sep 17 00:00:00 2001 From: Jason Turner Date: Sun, 14 Mar 2010 05:19:24 +0000 Subject: [PATCH] Move to a more standardized unit testing design which relies less on OS support and can soon be moved to a ctest implementation --- .../chaiscript/dispatchkit/bootstrap_stl.hpp | 32 ++++++++++-- run_unit_tests.sh | 6 +-- src/main.cpp | 22 ++++++-- unittests/bind.chai | 2 +- unittests/bind.txt | 1 - unittests/block_start.txt | 1 - unittests/bool_not.chai | 2 +- unittests/bool_not.txt | 1 - unittests/break_while.chai | 2 +- unittests/break_while.txt | 1 - unittests/char_init.chai | 2 +- unittests/char_init.txt | 1 - unittests/classification.chai | 12 ++--- unittests/classification.txt | 6 --- unittests/collate.chai | 4 +- unittests/collate.txt | 1 - unittests/compare_gt.chai | 2 +- unittests/compare_gt.txt | 1 - unittests/compare_lt.chai | 2 +- unittests/compare_lt.txt | 1 - unittests/concat.chai | 6 ++- unittests/concat.txt | 1 - unittests/convert_double_string.chai | 2 +- unittests/convert_double_string.txt | 1 - unittests/convert_int_string.chai | 2 +- unittests/convert_int_string.txt | 1 - unittests/convert_string_double.chai | 2 +- unittests/convert_string_double.txt | 1 - unittests/convert_string_int.chai | 2 +- unittests/convert_string_int.txt | 1 - unittests/drop.chai | 2 +- unittests/drop.txt | 1 - unittests/drop_while.chai | 2 +- unittests/drop_while.txt | 1 - unittests/equ_shortform.chai | 4 +- unittests/equ_shortform.txt | 2 - unittests/eval.chai | 2 +- unittests/eval.txt | 1 - unittests/even.chai | 2 +- unittests/even.txt | 1 - unittests/exception.chai | 2 +- unittests/exception.txt | 1 - unittests/exception_finally.chai | 23 +++++++-- unittests/exception_finally.txt | 4 -- unittests/exception_guards.chai | 18 ++++--- unittests/exception_guards.txt | 5 -- unittests/filter.chai | 2 +- unittests/filter.txt | 1 - unittests/float.chai | 9 +++- unittests/float.txt | 2 - unittests/foldl.chai | 2 +- unittests/foldl.txt | 1 - unittests/for.chai | 6 ++- unittests/for.txt | 5 -- unittests/for_each.txt | 3 -- unittests/for_each_range.chai | 2 +- unittests/for_each_range.txt | 3 -- unittests/for_each_retro.chai | 1 + unittests/for_each_retro.txt | 3 -- unittests/function_reassignment.chai | 2 +- unittests/function_reassignment.txt | 1 - unittests/generate_range.chai | 2 +- unittests/generate_range.txt | 1 - unittests/if.chai | 7 ++- unittests/if.txt | 2 - unittests/if_else.chai | 11 ++-- unittests/if_else.txt | 2 - unittests/if_elseif.chai | 14 +++-- unittests/if_elseif.txt | 2 - unittests/if_elseif_else.chai | 10 ++-- unittests/if_elseif_else.txt | 2 - unittests/instring_eval.chai | 4 +- unittests/instring_eval.txt | 2 - unittests/instring_eval_more.chai | 8 +-- unittests/instring_eval_more.txt | 4 -- unittests/invalid_function_assignment.chai | 2 +- unittests/invalid_function_assignment.txt | 1 - unittests/invalid_function_reassignment.chai | 3 +- unittests/invalid_function_reassignment.txt | 1 - unittests/is_undef.chai | 4 +- unittests/is_undef.txt | 2 - unittests/join.chai | 2 +- unittests/join.txt | 1 - unittests/lambda.chai | 2 +- unittests/lambda.txt | 1 - unittests/list_push_back.chai | 4 +- unittests/list_push_back.txt | 1 - unittests/list_push_front.chai | 4 +- unittests/list_push_front.txt | 1 - unittests/load_module.chai | 2 +- unittests/load_module.txt | 1 - unittests/loop_inner_outer.chai | 3 +- unittests/loop_inner_outer.txt | 1 - unittests/map.chai | 2 +- unittests/map.txt | 1 - unittests/map_access.chai | 2 +- unittests/map_access.txt | 1 - unittests/map_inplace_init.chai | 3 +- unittests/map_inplace_init.txt | 1 - unittests/math_add.chai | 2 +- unittests/math_add.txt | 1 - unittests/math_add_mixed.chai | 2 +- unittests/math_add_mixed.txt | 1 - unittests/math_dec.chai | 3 +- unittests/math_dec.txt | 1 - unittests/math_div.chai | 2 +- unittests/math_div.txt | 1 - unittests/math_inc.chai | 3 +- unittests/math_inc.txt | 1 - unittests/math_mod.chai | 2 +- unittests/math_mod.txt | 1 - unittests/math_mult.chai | 2 +- unittests/math_mult.txt | 1 - unittests/math_negate.chai | 2 +- unittests/math_negate.txt | 1 - unittests/math_paren.chai | 2 +- unittests/math_paren.txt | 1 - unittests/math_sub.chai | 2 +- unittests/math_sub.txt | 1 - unittests/max.chai | 2 +- unittests/max.txt | 1 - unittests/memberscope.chai | 2 +- unittests/memberscope.txt | 1 - unittests/method_sugar.chai | 2 +- unittests/method_sugar.txt | 1 - unittests/min.chai | 2 +- unittests/min.txt | 1 - unittests/mmd1.chai | 8 +-- unittests/mmd1.txt | 4 -- unittests/mmd2.chai | 6 +-- unittests/mmd2.txt | 3 -- unittests/multiline.chai | 8 +-- unittests/multiline.txt | 2 - unittests/number_formats.chai | 5 +- unittests/number_formats.txt | 2 - unittests/object_attr.chai | 3 +- unittests/object_attr.txt | 1 - unittests/object_clone.chai | 4 +- unittests/object_clone.txt | 2 - unittests/object_constructor_guards.chai | 9 +++- unittests/object_constructor_guards.txt | 2 - unittests/object_method_guards.chai | 4 +- unittests/object_method_guards.txt | 2 - unittests/odd.chai | 2 +- unittests/odd.txt | 1 - unittests/operator_overload.chai | 3 +- unittests/operator_overload.txt | 1 - unittests/operator_overload2.chai | 3 +- unittests/operator_overload2.txt | 1 - unittests/operators_float.chai | 21 ++++---- unittests/operators_float.txt | 10 ---- unittests/operators_int.chai | 51 +++++++++---------- unittests/operators_int.txt | 25 --------- unittests/precedence_1.chai | 2 +- unittests/precedence_1.txt | 1 - unittests/precedence_2.chai | 2 +- unittests/precedence_2.txt | 1 - unittests/precedence_3.chai | 2 +- unittests/precedence_3.txt | 1 - unittests/precedence_eq.chai | 3 +- unittests/precedence_eq.txt | 2 - unittests/product.chai | 2 +- unittests/product.txt | 1 - unittests/range.chai | 2 +- unittests/range.txt | 1 - unittests/range_back.chai | 2 +- unittests/range_back.txt | 1 - unittests/range_contains.chai | 8 +-- unittests/range_contains.txt | 4 -- unittests/range_find.chai | 5 +- unittests/range_find.txt | 2 - unittests/range_inplace.chai | 2 +- unittests/range_inplace.txt | 1 - unittests/reduce.chai | 2 +- unittests/reduce.txt | 1 - unittests/ref_equal.chai | 3 +- unittests/ref_equal.txt | 1 - unittests/retro.chai | 2 +- unittests/retro.txt | 1 - unittests/retroretro.chai | 4 +- unittests/retroretro.txt | 2 - unittests/return.chai | 2 +- unittests/return.txt | 1 - unittests/runtime_error.chai | 7 ++- unittests/runtime_error.txt | 1 - unittests/shift.chai | 2 +- unittests/shift.txt | 1 - unittests/string_concat.chai | 2 +- unittests/string_concat.txt | 1 - unittests/string_find.chai | 2 +- unittests/string_find.txt | 1 - unittests/string_find_first_not_of.chai | 2 +- unittests/string_find_first_not_of.txt | 1 - unittests/string_find_first_of.chai | 2 +- unittests/string_find_first_of.txt | 1 - unittests/string_find_last_not_of.chai | 2 +- unittests/string_find_last_not_of.txt | 1 - unittests/string_find_last_of.chai | 2 +- unittests/string_find_last_of.txt | 1 - unittests/string_init.txt | 1 - unittests/string_rfind.chai | 2 +- unittests/string_rfind.txt | 1 - unittests/sum.chai | 2 +- unittests/sum.txt | 1 - unittests/take.chai | 2 +- unittests/take.txt | 1 - unittests/take_while.chai | 2 +- unittests/take_while.txt | 1 - unittests/type_info.chai | 19 +++---- unittests/type_info.txt | 9 ---- unittests/use.chai | 3 +- unittests/use.inc | 2 +- unittests/use.txt | 1 - unittests/vector_access.chai | 2 +- unittests/vector_access.txt | 1 - unittests/vector_erase_at.chai | 2 +- unittests/vector_erase_at.txt | 1 - unittests/vector_inplace_init.chai | 2 +- unittests/vector_inplace_init.txt | 1 - unittests/vector_insert_at.chai | 2 +- unittests/vector_insert_at.txt | 1 - unittests/vector_push_back.chai | 4 +- unittests/vector_push_back.txt | 1 - unittests/vector_push_empty.chai | 3 +- unittests/vector_push_empty.txt | 1 - unittests/zip.chai | 6 ++- unittests/zip.txt | 1 - unittests/zip_with.chai | 4 +- unittests/zip_with.txt | 1 - 229 files changed, 336 insertions(+), 416 deletions(-) delete mode 100644 unittests/bind.txt delete mode 100644 unittests/block_start.txt delete mode 100644 unittests/bool_not.txt delete mode 100644 unittests/break_while.txt delete mode 100644 unittests/char_init.txt delete mode 100644 unittests/classification.txt delete mode 100644 unittests/collate.txt delete mode 100644 unittests/compare_gt.txt delete mode 100644 unittests/compare_lt.txt delete mode 100644 unittests/concat.txt delete mode 100644 unittests/convert_double_string.txt delete mode 100644 unittests/convert_int_string.txt delete mode 100644 unittests/convert_string_double.txt delete mode 100644 unittests/convert_string_int.txt delete mode 100644 unittests/drop.txt delete mode 100644 unittests/drop_while.txt delete mode 100644 unittests/equ_shortform.txt delete mode 100644 unittests/eval.txt delete mode 100644 unittests/even.txt delete mode 100644 unittests/exception.txt delete mode 100644 unittests/exception_finally.txt delete mode 100644 unittests/exception_guards.txt delete mode 100644 unittests/filter.txt delete mode 100644 unittests/float.txt delete mode 100644 unittests/foldl.txt delete mode 100644 unittests/for.txt delete mode 100644 unittests/for_each.txt delete mode 100644 unittests/for_each_range.txt delete mode 100644 unittests/for_each_retro.txt delete mode 100644 unittests/function_reassignment.txt delete mode 100644 unittests/generate_range.txt delete mode 100644 unittests/if.txt delete mode 100644 unittests/if_else.txt delete mode 100644 unittests/if_elseif.txt delete mode 100644 unittests/if_elseif_else.txt delete mode 100644 unittests/instring_eval.txt delete mode 100644 unittests/instring_eval_more.txt delete mode 100644 unittests/invalid_function_assignment.txt delete mode 100644 unittests/invalid_function_reassignment.txt delete mode 100644 unittests/is_undef.txt delete mode 100644 unittests/join.txt delete mode 100644 unittests/lambda.txt delete mode 100644 unittests/list_push_back.txt delete mode 100644 unittests/list_push_front.txt delete mode 100644 unittests/load_module.txt delete mode 100644 unittests/loop_inner_outer.txt delete mode 100644 unittests/map.txt delete mode 100644 unittests/map_access.txt delete mode 100644 unittests/map_inplace_init.txt delete mode 100644 unittests/math_add.txt delete mode 100644 unittests/math_add_mixed.txt delete mode 100644 unittests/math_dec.txt delete mode 100644 unittests/math_div.txt delete mode 100644 unittests/math_inc.txt delete mode 100644 unittests/math_mod.txt delete mode 100644 unittests/math_mult.txt delete mode 100644 unittests/math_negate.txt delete mode 100644 unittests/math_paren.txt delete mode 100644 unittests/math_sub.txt delete mode 100644 unittests/max.txt delete mode 100644 unittests/memberscope.txt delete mode 100644 unittests/method_sugar.txt delete mode 100644 unittests/min.txt delete mode 100644 unittests/mmd1.txt delete mode 100644 unittests/mmd2.txt delete mode 100644 unittests/multiline.txt delete mode 100644 unittests/number_formats.txt delete mode 100644 unittests/object_attr.txt delete mode 100644 unittests/object_clone.txt delete mode 100644 unittests/object_constructor_guards.txt delete mode 100644 unittests/object_method_guards.txt delete mode 100644 unittests/odd.txt delete mode 100644 unittests/operator_overload.txt delete mode 100644 unittests/operator_overload2.txt delete mode 100644 unittests/operators_float.txt delete mode 100644 unittests/operators_int.txt delete mode 100644 unittests/precedence_1.txt delete mode 100644 unittests/precedence_2.txt delete mode 100644 unittests/precedence_3.txt delete mode 100644 unittests/precedence_eq.txt delete mode 100644 unittests/product.txt delete mode 100644 unittests/range.txt delete mode 100644 unittests/range_back.txt delete mode 100644 unittests/range_contains.txt delete mode 100644 unittests/range_find.txt delete mode 100644 unittests/range_inplace.txt delete mode 100644 unittests/reduce.txt delete mode 100644 unittests/ref_equal.txt delete mode 100644 unittests/retro.txt delete mode 100644 unittests/retroretro.txt delete mode 100644 unittests/return.txt delete mode 100644 unittests/runtime_error.txt delete mode 100644 unittests/shift.txt delete mode 100644 unittests/string_concat.txt delete mode 100644 unittests/string_find.txt delete mode 100644 unittests/string_find_first_not_of.txt delete mode 100644 unittests/string_find_first_of.txt delete mode 100644 unittests/string_find_last_not_of.txt delete mode 100644 unittests/string_find_last_of.txt delete mode 100644 unittests/string_init.txt delete mode 100644 unittests/string_rfind.txt delete mode 100644 unittests/sum.txt delete mode 100644 unittests/take.txt delete mode 100644 unittests/take_while.txt delete mode 100644 unittests/type_info.txt delete mode 100644 unittests/use.txt delete mode 100644 unittests/vector_access.txt delete mode 100644 unittests/vector_erase_at.txt delete mode 100644 unittests/vector_inplace_init.txt delete mode 100644 unittests/vector_insert_at.txt delete mode 100644 unittests/vector_push_back.txt delete mode 100644 unittests/vector_push_empty.txt delete mode 100644 unittests/zip.txt delete mode 100644 unittests/zip_with.txt diff --git a/include/chaiscript/dispatchkit/bootstrap_stl.hpp b/include/chaiscript/dispatchkit/bootstrap_stl.hpp index b35f01b..a9bfbbd 100644 --- a/include/chaiscript/dispatchkit/bootstrap_stl.hpp +++ b/include/chaiscript/dispatchkit/bootstrap_stl.hpp @@ -252,8 +252,8 @@ namespace chaiscript push_back_name = "push_back"; } - typedef void (ContainerType::*pushback)(const typename ContainerType::value_type &); - m->add(fun(static_cast(&ContainerType::push_back)), push_back_name); + typedef void (ContainerType::*pushback)(const typename ContainerType::value_type &); + m->add(fun(static_cast(&ContainerType::push_back)), push_back_name); m->add(fun(&ContainerType::pop_back), "pop_back"); return m; } @@ -267,7 +267,6 @@ namespace chaiscript ModulePtr front_insertion_sequence_type(const std::string &type, ModulePtr m = ModulePtr(new Module())) { typedef typename ContainerType::reference (ContainerType::*frontptr)(); - m->add(fun(static_cast(&ContainerType::front)), "front"); std::string push_front_name; @@ -334,7 +333,7 @@ namespace chaiscript { m->add(user_type(), type); - typedef typename MapType::mapped_type &(MapType::*elemaccess)(const typename MapType::key_type &); + typedef typename MapType::mapped_type &(MapType::*elemaccess)(const typename MapType::key_type &); m->add(fun(static_cast(&MapType::operator[])), "[]"); container_type(type, m); @@ -375,6 +374,10 @@ namespace chaiscript { m->add(user_type(), type); + typedef typename VectorType::reference (VectorType::*frontptr)(); + m->add(fun(static_cast(&VectorType::front)), "front"); + + back_insertion_sequence_type(type, m); sequence_type(type, m); random_access_container_type(type, m); @@ -383,6 +386,27 @@ namespace chaiscript assignable_type(type, m); input_range_type(type, m); + + m->eval("def Vector::`==`(rhs) : type_match(rhs, this) { \ + if ( rhs.size() != this.size() ) { \ + return false; \ + } else { \ + var r1 = range(this); \ + var r2 = range(rhs); \ + while (!r1.empty()) \ + { \ + if (!eq(r1.front(), r2.front())) \ + { \ + return false; \ + } \ + r1.pop_front(); \ + r2.pop_front(); \ + } \ + return true; \ + } \ + }"); + + return m; } diff --git a/run_unit_tests.sh b/run_unit_tests.sh index d12b72f..3191880 100755 --- a/run_unit_tests.sh +++ b/run_unit_tests.sh @@ -8,15 +8,13 @@ echo -n "Running unit tests" for file in unittests/*.chai do tstname=${file%.*} - tst="$tstname.txt" - LD_LIBRARY_PATH=. ./chaiscript_eval $file > /tmp/tstout.txt - diff $tst /tmp/tstout.txt + OUTPUT=`LD_LIBRARY_PATH=. ./chaiscript_eval unittests/unit_test.inc $file` if [ "$?" -eq "0" ] then echo -n "." successes=$((successes+1)) else - echo "[from failed test $file]" + echo "[from failed test $file] $OUTPUT" failures=$((failures+1)) fi done diff --git a/src/main.cpp b/src/main.cpp index a9e9c33..4f4892b 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -15,6 +15,7 @@ #include + void print_help() { std::cout << "ChaiScript evaluator. To evaluate an expression, type it and press ." << std::endl; std::cout << "Additionally, you can inspect the runtime system using:" << std::endl; @@ -22,6 +23,19 @@ void print_help() { std::cout << " dump_object(x) - dumps information about the given symbol" << std::endl; } + +bool throws_exception(const chaiscript::Proxy_Function &f) +{ + try { + chaiscript::functor(f)(); + } catch (...) { + return true; + } + + return false; +} + + std::string get_next_command() { #ifdef READLINE_AVAILABLE char *input_raw; @@ -40,10 +54,10 @@ int main(int argc, char *argv[]) { std::string input; chaiscript::ChaiScript chai; + chai.add(chaiscript::fun(&exit), "exit"); + chai.add(chaiscript::fun(&throws_exception), "throws_exception"); if (argc < 2) { - //std::cout << "eval> "; - //std::getline(std::cin, input); #ifdef READLINE_AVAILABLE using_history(); #endif @@ -80,14 +94,16 @@ int main(int argc, char *argv[]) { } else { for (int i = 1; i < argc; ++i) { - std::string filename(argv[i]); try { chaiscript::Boxed_Value val = chai.eval_file(argv[i]); } catch (std::exception &e) { std::cout << e.what() << std::endl; + return EXIT_FAILURE; } } } + + return EXIT_SUCCESS; } diff --git a/unittests/bind.chai b/unittests/bind.chai index 6013c74..3c72673 100644 --- a/unittests/bind.chai +++ b/unittests/bind.chai @@ -1,2 +1,2 @@ var prod = bind(foldl, _, `*`, 1.0) -print(prod([3, 4, 5])) +assert_equal(60, prod([3, 4, 5])) diff --git a/unittests/bind.txt b/unittests/bind.txt deleted file mode 100644 index abdfb05..0000000 --- a/unittests/bind.txt +++ /dev/null @@ -1 +0,0 @@ -60 diff --git a/unittests/block_start.txt b/unittests/block_start.txt deleted file mode 100644 index ce01362..0000000 --- a/unittests/block_start.txt +++ /dev/null @@ -1 +0,0 @@ -hello diff --git a/unittests/bool_not.chai b/unittests/bool_not.chai index 8288f68..fe4d0f7 100644 --- a/unittests/bool_not.chai +++ b/unittests/bool_not.chai @@ -1 +1 @@ -print(!true) +assert_equal(false, !true) diff --git a/unittests/bool_not.txt b/unittests/bool_not.txt deleted file mode 100644 index c508d53..0000000 --- a/unittests/bool_not.txt +++ /dev/null @@ -1 +0,0 @@ -false diff --git a/unittests/break_while.chai b/unittests/break_while.chai index b8ec7f1..d54a3dd 100644 --- a/unittests/break_while.chai +++ b/unittests/break_while.chai @@ -4,4 +4,4 @@ while (i < 10) { break } } -print(i) +assert_equal(5, i); diff --git a/unittests/break_while.txt b/unittests/break_while.txt deleted file mode 100644 index 7ed6ff8..0000000 --- a/unittests/break_while.txt +++ /dev/null @@ -1 +0,0 @@ -5 diff --git a/unittests/char_init.chai b/unittests/char_init.chai index 71cf4cf..ce76477 100644 --- a/unittests/char_init.chai +++ b/unittests/char_init.chai @@ -1 +1 @@ -print('b') +assert_equal("b", to_string('b')) diff --git a/unittests/char_init.txt b/unittests/char_init.txt deleted file mode 100644 index 6178079..0000000 --- a/unittests/char_init.txt +++ /dev/null @@ -1 +0,0 @@ -b diff --git a/unittests/classification.chai b/unittests/classification.chai index f2b03ac..8c2cca9 100644 --- a/unittests/classification.chai +++ b/unittests/classification.chai @@ -1,7 +1,7 @@ -print(1.is_var_const()); -print(1.is_var_reference()); -print(1.is_var_pointer()); -print(1.is_var_null()); -print(1.is_var_undef()); +assert_equal(true, 1.is_var_const()); +assert_equal(false, 1.is_var_reference()); +assert_equal(true, 1.is_var_pointer()); +assert_equal(false, 1.is_var_null()); +assert_equal(false, 1.is_var_undef()); var i; -print(i.is_var_undef()); +assert_equal(true, i.is_var_undef()); diff --git a/unittests/classification.txt b/unittests/classification.txt deleted file mode 100644 index a9b840a..0000000 --- a/unittests/classification.txt +++ /dev/null @@ -1,6 +0,0 @@ -true -false -true -false -false -true diff --git a/unittests/collate.chai b/unittests/collate.chai index 10b0329..12632e5 100644 --- a/unittests/collate.chai +++ b/unittests/collate.chai @@ -1 +1,3 @@ -print(collate(1, 2)) +var v = collate(1, 2) +assert_equal(1, v[0]) +assert_equal(2, v[1]) diff --git a/unittests/collate.txt b/unittests/collate.txt deleted file mode 100644 index 44e2ace..0000000 --- a/unittests/collate.txt +++ /dev/null @@ -1 +0,0 @@ -[1, 2] diff --git a/unittests/compare_gt.chai b/unittests/compare_gt.chai index c261c98..9a6ea45 100644 --- a/unittests/compare_gt.chai +++ b/unittests/compare_gt.chai @@ -1 +1 @@ -print(1 > 2) +assert_equal(false, 1 > 2); diff --git a/unittests/compare_gt.txt b/unittests/compare_gt.txt deleted file mode 100644 index c508d53..0000000 --- a/unittests/compare_gt.txt +++ /dev/null @@ -1 +0,0 @@ -false diff --git a/unittests/compare_lt.chai b/unittests/compare_lt.chai index 1acc6fc..6064110 100644 --- a/unittests/compare_lt.chai +++ b/unittests/compare_lt.chai @@ -1 +1 @@ -print(1 < 2) +assert_equal(true, 1 < 2) diff --git a/unittests/compare_lt.txt b/unittests/compare_lt.txt deleted file mode 100644 index 27ba77d..0000000 --- a/unittests/compare_lt.txt +++ /dev/null @@ -1 +0,0 @@ -true diff --git a/unittests/concat.chai b/unittests/concat.chai index 94d7393..3d285a5 100644 --- a/unittests/concat.chai +++ b/unittests/concat.chai @@ -1 +1,5 @@ -print(concat([1, 2], [3, 4])) +var v = concat([1, 2], [3, 4]); + +assert_equal(4, v.size()); +assert_equal(1, v[0]); +assert_equal(4, v[3]); diff --git a/unittests/concat.txt b/unittests/concat.txt deleted file mode 100644 index 12bae17..0000000 --- a/unittests/concat.txt +++ /dev/null @@ -1 +0,0 @@ -[1, 2, 3, 4] diff --git a/unittests/convert_double_string.chai b/unittests/convert_double_string.chai index df794c9..e12b90f 100644 --- a/unittests/convert_double_string.chai +++ b/unittests/convert_double_string.chai @@ -1 +1 @@ -print(3.5.to_string() + "bob") +assert_equal("3.5bob", 3.5.to_string() + "bob"); diff --git a/unittests/convert_double_string.txt b/unittests/convert_double_string.txt deleted file mode 100644 index 05b1846..0000000 --- a/unittests/convert_double_string.txt +++ /dev/null @@ -1 +0,0 @@ -3.5bob diff --git a/unittests/convert_int_string.chai b/unittests/convert_int_string.chai index 180e173..0fcda32 100644 --- a/unittests/convert_int_string.chai +++ b/unittests/convert_int_string.chai @@ -1 +1 @@ -print(3.to_string + "bob") +assert_equal("3bob", 3.to_string + "bob") diff --git a/unittests/convert_int_string.txt b/unittests/convert_int_string.txt deleted file mode 100644 index 7d87305..0000000 --- a/unittests/convert_int_string.txt +++ /dev/null @@ -1 +0,0 @@ -3bob diff --git a/unittests/convert_string_double.chai b/unittests/convert_string_double.chai index efbd1dc..b7b0b6e 100644 --- a/unittests/convert_string_double.chai +++ b/unittests/convert_string_double.chai @@ -1 +1 @@ -print("3.5".to_double() + 3.3) +assert_equal(6.8, "3.5".to_double() + 3.3) diff --git a/unittests/convert_string_double.txt b/unittests/convert_string_double.txt deleted file mode 100644 index cc67af5..0000000 --- a/unittests/convert_string_double.txt +++ /dev/null @@ -1 +0,0 @@ -6.7999999999999998 diff --git a/unittests/convert_string_int.chai b/unittests/convert_string_int.chai index 1af1a46..e62eec9 100644 --- a/unittests/convert_string_int.chai +++ b/unittests/convert_string_int.chai @@ -1 +1 @@ -print("4".to_int() + 4) +assert_equal(8, "4".to_int() + 4) diff --git a/unittests/convert_string_int.txt b/unittests/convert_string_int.txt deleted file mode 100644 index 45a4fb7..0000000 --- a/unittests/convert_string_int.txt +++ /dev/null @@ -1 +0,0 @@ -8 diff --git a/unittests/drop.chai b/unittests/drop.chai index 8a3fb54..c64b431 100644 --- a/unittests/drop.chai +++ b/unittests/drop.chai @@ -1 +1 @@ -print(drop([1, 2, 3, 4], 2)) +assert_equal([3,4], drop([1, 2, 3, 4], 2)) diff --git a/unittests/drop.txt b/unittests/drop.txt deleted file mode 100644 index 8419640..0000000 --- a/unittests/drop.txt +++ /dev/null @@ -1 +0,0 @@ -[3, 4] diff --git a/unittests/drop_while.chai b/unittests/drop_while.chai index e929f59..08e19f2 100644 --- a/unittests/drop_while.chai +++ b/unittests/drop_while.chai @@ -1 +1 @@ -print(drop_while([1, 2, 3], odd)) +assert_equal([2, 3], drop_while([1, 2, 3], odd)) diff --git a/unittests/drop_while.txt b/unittests/drop_while.txt deleted file mode 100644 index 96d3840..0000000 --- a/unittests/drop_while.txt +++ /dev/null @@ -1 +0,0 @@ -[2, 3] diff --git a/unittests/equ_shortform.chai b/unittests/equ_shortform.chai index 23d2687..41c8e1d 100644 --- a/unittests/equ_shortform.chai +++ b/unittests/equ_shortform.chai @@ -1,4 +1,4 @@ var x=.5 -print(x) +assert_equal(.5, x) var y=-.5 -print(y) +assert_equal(-.5, y) diff --git a/unittests/equ_shortform.txt b/unittests/equ_shortform.txt deleted file mode 100644 index ce038bd..0000000 --- a/unittests/equ_shortform.txt +++ /dev/null @@ -1,2 +0,0 @@ -0.5 --0.5 diff --git a/unittests/eval.chai b/unittests/eval.chai index 189513c..2f18aa4 100644 --- a/unittests/eval.chai +++ b/unittests/eval.chai @@ -1 +1 @@ -print(eval("3 + 4")) +assert_equal(7, eval("3 + 4")) diff --git a/unittests/eval.txt b/unittests/eval.txt deleted file mode 100644 index 7f8f011..0000000 --- a/unittests/eval.txt +++ /dev/null @@ -1 +0,0 @@ -7 diff --git a/unittests/even.chai b/unittests/even.chai index 74b906b..5a9a9ae 100644 --- a/unittests/even.chai +++ b/unittests/even.chai @@ -1 +1 @@ -print(even(4)) +assert_equal(true, even(4)) diff --git a/unittests/even.txt b/unittests/even.txt deleted file mode 100644 index 27ba77d..0000000 --- a/unittests/even.txt +++ /dev/null @@ -1 +0,0 @@ -true diff --git a/unittests/exception.chai b/unittests/exception.chai index c13993b..50df6a8 100644 --- a/unittests/exception.chai +++ b/unittests/exception.chai @@ -6,4 +6,4 @@ try { catch(e) { x = e + 3 } -print(x) +assert_equal(4, x); diff --git a/unittests/exception.txt b/unittests/exception.txt deleted file mode 100644 index b8626c4..0000000 --- a/unittests/exception.txt +++ /dev/null @@ -1 +0,0 @@ -4 diff --git a/unittests/exception_finally.chai b/unittests/exception_finally.chai index 85ac3d8..d6fd834 100644 --- a/unittests/exception_finally.chai +++ b/unittests/exception_finally.chai @@ -1,19 +1,32 @@ +var finallyone = false; + try { throw(3) } catch(x) { - print(x) + assert_equal(3, x) } finally { - print("Finally #1") + finallyone = true; } +assert_equal(true, finallyone); + +var try2 = false; +var catch2 = false; +var finally2 = false; + + try { - print("Safe") + try2 = true; } catch { - print("Caught") + catch2 = true; } finally { - print("Finally #2") + finally2 = true; } + +assert_equal(true, try2); +assert_equal(false, catch2); +assert_equal(true, finally2); diff --git a/unittests/exception_finally.txt b/unittests/exception_finally.txt deleted file mode 100644 index 8c5edad..0000000 --- a/unittests/exception_finally.txt +++ /dev/null @@ -1,4 +0,0 @@ -3 -Finally #1 -Safe -Finally #2 diff --git a/unittests/exception_guards.chai b/unittests/exception_guards.chai index 640dbdf..99cd901 100644 --- a/unittests/exception_guards.chai +++ b/unittests/exception_guards.chai @@ -1,18 +1,21 @@ +var results = []; + for (var i = 2; i < 6; ++i) { try { throw(i) } catch(e) : e < 2 { - print("Catch 1: " + e.to_string()) + results.push_back("c1: " + e.to_string()); } catch(e) : e < 4 { - print("Catch 2: " + e.to_string()) + results.push_back("c2: " + e.to_string()); } catch(e) { - print("Catch 3: " + e.to_string()) + results.push_back("c3: " + e.to_string()); } catch { - print("This is never called") + // Should never get called + assert_equal(false, true) } } @@ -21,8 +24,11 @@ try { } catch(e) : e < 3 { - print("Caught less than 3") + // Should never get called + assert_equal(false, true); } catch { - print("Backup catch") + results.push_back("defaultcatch"); } + +assert_equal(["c2: 2", "c2: 3", "c3: 4", "c3: 5", "defaultcatch"], results); diff --git a/unittests/exception_guards.txt b/unittests/exception_guards.txt deleted file mode 100644 index fcf6673..0000000 --- a/unittests/exception_guards.txt +++ /dev/null @@ -1,5 +0,0 @@ -Catch 2: 2 -Catch 2: 3 -Catch 3: 4 -Catch 3: 5 -Backup catch diff --git a/unittests/filter.chai b/unittests/filter.chai index 43d7249..6d805fe 100644 --- a/unittests/filter.chai +++ b/unittests/filter.chai @@ -1 +1 @@ -print(filter([1, 2, 3, 4], odd)) +assert_equal([1,3], filter([1, 2, 3, 4], odd)) diff --git a/unittests/filter.txt b/unittests/filter.txt deleted file mode 100644 index f988c4a..0000000 --- a/unittests/filter.txt +++ /dev/null @@ -1 +0,0 @@ -[1, 3] diff --git a/unittests/float.chai b/unittests/float.chai index f2fa6ea..b1bdf29 100644 --- a/unittests/float.chai +++ b/unittests/float.chai @@ -1,2 +1,7 @@ -print(1.2) -print(.5) +assert_equal(true, 1.2 < 2) +assert_equal(true, 1.2 > 1) +assert_equal(1.2, 1.2) + +assert_equal(true, .5 > 0) +assert_equal(true, .5 < 1) +assert_equal(0.5, .5) diff --git a/unittests/float.txt b/unittests/float.txt deleted file mode 100644 index 73074be..0000000 --- a/unittests/float.txt +++ /dev/null @@ -1,2 +0,0 @@ -1.2 -0.5 diff --git a/unittests/foldl.chai b/unittests/foldl.chai index f62a716..7e9db51 100644 --- a/unittests/foldl.chai +++ b/unittests/foldl.chai @@ -1 +1 @@ -print(foldl([1, 2, 3, 4], `+`, 0)) +assert_equal(10, foldl([1, 2, 3, 4], `+`, 0)) diff --git a/unittests/foldl.txt b/unittests/foldl.txt deleted file mode 100644 index f599e28..0000000 --- a/unittests/foldl.txt +++ /dev/null @@ -1 +0,0 @@ -10 diff --git a/unittests/for.chai b/unittests/for.chai index 7151ed2..9799be2 100644 --- a/unittests/for.chai +++ b/unittests/for.chai @@ -1,3 +1,7 @@ +var ret = [] + for (var i = 0; i < 5; ++i) { - print(i) + ret.push_back(i); } + +assert_equal([0,1,2,3,4], ret); diff --git a/unittests/for.txt b/unittests/for.txt deleted file mode 100644 index 9dfcf39..0000000 --- a/unittests/for.txt +++ /dev/null @@ -1,5 +0,0 @@ -0 -1 -2 -3 -4 diff --git a/unittests/for_each.txt b/unittests/for_each.txt deleted file mode 100644 index 01e79c3..0000000 --- a/unittests/for_each.txt +++ /dev/null @@ -1,3 +0,0 @@ -1 -2 -3 diff --git a/unittests/for_each_range.chai b/unittests/for_each_range.chai index d192a65..43191bf 100644 --- a/unittests/for_each_range.chai +++ b/unittests/for_each_range.chai @@ -1,3 +1,3 @@ var v = [1,2,3]; var r = range(v); -for_each(r, print) +for_each(r, fun(x) { assert_equal(true, x>0); } ) diff --git a/unittests/for_each_range.txt b/unittests/for_each_range.txt deleted file mode 100644 index 01e79c3..0000000 --- a/unittests/for_each_range.txt +++ /dev/null @@ -1,3 +0,0 @@ -1 -2 -3 diff --git a/unittests/for_each_retro.chai b/unittests/for_each_retro.chai index 400fd03..cc27a58 100644 --- a/unittests/for_each_retro.chai +++ b/unittests/for_each_retro.chai @@ -1,3 +1,4 @@ +// Don't bother checking the output from this one, just makes sure it executes var v = [1,2,3]; var r = retro(range(v)); for_each(r, print) diff --git a/unittests/for_each_retro.txt b/unittests/for_each_retro.txt deleted file mode 100644 index 2d6976f..0000000 --- a/unittests/for_each_retro.txt +++ /dev/null @@ -1,3 +0,0 @@ -3 -2 -1 diff --git a/unittests/function_reassignment.chai b/unittests/function_reassignment.chai index 5373a96..2a885fd 100644 --- a/unittests/function_reassignment.chai +++ b/unittests/function_reassignment.chai @@ -1,3 +1,3 @@ var x = `+` x = `-` -print(x(5,4)) +assert_equal(1, x(5,4)) diff --git a/unittests/function_reassignment.txt b/unittests/function_reassignment.txt deleted file mode 100644 index d00491f..0000000 --- a/unittests/function_reassignment.txt +++ /dev/null @@ -1 +0,0 @@ -1 diff --git a/unittests/generate_range.chai b/unittests/generate_range.chai index a9525d3..9e25970 100644 --- a/unittests/generate_range.chai +++ b/unittests/generate_range.chai @@ -1 +1 @@ -print(generate_range(1, 10)) +assert_equal([1,2,3,4,5,6,7,8,9,10], generate_range(1, 10)) diff --git a/unittests/generate_range.txt b/unittests/generate_range.txt deleted file mode 100644 index 9063324..0000000 --- a/unittests/generate_range.txt +++ /dev/null @@ -1 +0,0 @@ -[1, 2, 3, 4, 5, 6, 7, 8, 9, 10] diff --git a/unittests/if.chai b/unittests/if.chai index 5f065b5..3ec7321 100644 --- a/unittests/if.chai +++ b/unittests/if.chai @@ -1,4 +1,7 @@ +var t = false; + if (true) { - print("true") + t = true; } -print("done") + +assert_equal(true, t); diff --git a/unittests/if.txt b/unittests/if.txt deleted file mode 100644 index c01352c..0000000 --- a/unittests/if.txt +++ /dev/null @@ -1,2 +0,0 @@ -true -done diff --git a/unittests/if_else.chai b/unittests/if_else.chai index 998548e..8cb42db 100644 --- a/unittests/if_else.chai +++ b/unittests/if_else.chai @@ -1,8 +1,13 @@ var i = 3 +var b1 = false; +var b2 = false; + if (i == 2) { - print("2") + b1 = true; } else { - print("other") + b2 = true; } -print("done") + +assert_equal(false, b1); +assert_equal(true, b2); diff --git a/unittests/if_else.txt b/unittests/if_else.txt deleted file mode 100644 index 24a9e20..0000000 --- a/unittests/if_else.txt +++ /dev/null @@ -1,2 +0,0 @@ -other -done diff --git a/unittests/if_elseif.chai b/unittests/if_elseif.chai index fc93a91..75b85b5 100644 --- a/unittests/if_elseif.chai +++ b/unittests/if_elseif.chai @@ -1,12 +1,18 @@ +var b1 = false; +var b2 = false; +var b3 = false; + var i = 3 if (i == 2) { - print("2") + b1 = true; } else if (i == 4) { - print("4") + b2 = true; } else if (i == 3) { - print("3") + b3 = true; } -print("done") +assert_equal(false, b1); +assert_equal(false, b2); +assert_equal(true, b3); diff --git a/unittests/if_elseif.txt b/unittests/if_elseif.txt deleted file mode 100644 index 7da300e..0000000 --- a/unittests/if_elseif.txt +++ /dev/null @@ -1,2 +0,0 @@ -3 -done diff --git a/unittests/if_elseif_else.chai b/unittests/if_elseif_else.chai index db4969d..26ed0d2 100644 --- a/unittests/if_elseif_else.chai +++ b/unittests/if_elseif_else.chai @@ -1,12 +1,14 @@ var i = 3 +var b = false if (i == 2) { - print("2") + assert_equal(false, true) } else if (i == 4) { - print("4") + assert_equal(false, true) } else { - print("3") + assert_equal(true, true) + b = true } -print("done") +assert_equal(true, b) diff --git a/unittests/if_elseif_else.txt b/unittests/if_elseif_else.txt deleted file mode 100644 index 7da300e..0000000 --- a/unittests/if_elseif_else.txt +++ /dev/null @@ -1,2 +0,0 @@ -3 -done diff --git a/unittests/instring_eval.chai b/unittests/instring_eval.chai index 39fbd17..a72b2fc 100644 --- a/unittests/instring_eval.chai +++ b/unittests/instring_eval.chai @@ -1,3 +1,3 @@ var bob = 5.5 -print("${bob}") -print("val: ${5.5 + 2.5} and ${bob + 2.5}") +assert_equal("5.5", "${bob}") +assert_equal("val: 8 and 8", "val: ${5.5 + 2.5} and ${bob + 2.5}") diff --git a/unittests/instring_eval.txt b/unittests/instring_eval.txt deleted file mode 100644 index 874e6c7..0000000 --- a/unittests/instring_eval.txt +++ /dev/null @@ -1,2 +0,0 @@ -5.5 -val: 8 and 8 diff --git a/unittests/instring_eval_more.chai b/unittests/instring_eval_more.chai index e07d11f..17768f8 100644 --- a/unittests/instring_eval_more.chai +++ b/unittests/instring_eval_more.chai @@ -1,4 +1,4 @@ -print("$ {4 + 5}") -print("$${4+5}") -print("Value: \${4 + 5}") -print("Value: \$${4 + 5}") +assert_equal("\$ {4 + 5}", "$ {4 + 5}") +assert_equal("\$9", "$${4+5}") +assert_equal("Value: \${4 + 5}", "Value: \${4 + 5}") +assert_equal("Value: \$9", "Value: \$${4 + 5}") diff --git a/unittests/instring_eval_more.txt b/unittests/instring_eval_more.txt deleted file mode 100644 index 5132bc7..0000000 --- a/unittests/instring_eval_more.txt +++ /dev/null @@ -1,4 +0,0 @@ -$ {4 + 5} -$9 -Value: ${4 + 5} -Value: $9 diff --git a/unittests/invalid_function_assignment.chai b/unittests/invalid_function_assignment.chai index 2468248..99b098d 100644 --- a/unittests/invalid_function_assignment.chai +++ b/unittests/invalid_function_assignment.chai @@ -1 +1 @@ -clone = `-` +assert_throws("Illegal const function assignment", fun() { clone = `-` } ); diff --git a/unittests/invalid_function_assignment.txt b/unittests/invalid_function_assignment.txt deleted file mode 100644 index fcf2985..0000000 --- a/unittests/invalid_function_assignment.txt +++ /dev/null @@ -1 +0,0 @@ -Error: "Mismatched types in equation, lhs is const." in 'unittests/invalid_function_assignment.chai' at (1, 7) diff --git a/unittests/invalid_function_reassignment.chai b/unittests/invalid_function_reassignment.chai index 69a5789..cc7cb5a 100644 --- a/unittests/invalid_function_reassignment.chai +++ b/unittests/invalid_function_reassignment.chai @@ -1,2 +1 @@ -var x = 5 -x = `-` +assert_throws("Invalid function reassignment", fun() { var x = 5; x = `-`; } ); diff --git a/unittests/invalid_function_reassignment.txt b/unittests/invalid_function_reassignment.txt deleted file mode 100644 index 1cc80b0..0000000 --- a/unittests/invalid_function_reassignment.txt +++ /dev/null @@ -1 +0,0 @@ -Error: "Mismatched types in equation." in 'unittests/invalid_function_reassignment.chai' at (2, 3) diff --git a/unittests/is_undef.chai b/unittests/is_undef.chai index b12a16f..38572f0 100644 --- a/unittests/is_undef.chai +++ b/unittests/is_undef.chai @@ -1,4 +1,4 @@ var i; -print(i.is_var_undef()); +assert_equal(true, i.is_var_undef()); i = 5; -print(i.is_var_undef()); +assert_equal(false, i.is_var_undef()); diff --git a/unittests/is_undef.txt b/unittests/is_undef.txt deleted file mode 100644 index da29283..0000000 --- a/unittests/is_undef.txt +++ /dev/null @@ -1,2 +0,0 @@ -true -false diff --git a/unittests/join.chai b/unittests/join.chai index f4cfbc9..1891c46 100644 --- a/unittests/join.chai +++ b/unittests/join.chai @@ -1 +1 @@ -print(join([1, 2, 3], "*")) +assert_equal("1*2*3", join([1, 2, 3], "*")) diff --git a/unittests/join.txt b/unittests/join.txt deleted file mode 100644 index 34b2314..0000000 --- a/unittests/join.txt +++ /dev/null @@ -1 +0,0 @@ -1*2*3 diff --git a/unittests/lambda.chai b/unittests/lambda.chai index 528410d..6b65a1b 100644 --- a/unittests/lambda.chai +++ b/unittests/lambda.chai @@ -1,2 +1,2 @@ var bob = fun(x) { x + 1 } -print(bob(3)) +assert_equal(4, bob(3)); diff --git a/unittests/lambda.txt b/unittests/lambda.txt deleted file mode 100644 index b8626c4..0000000 --- a/unittests/lambda.txt +++ /dev/null @@ -1 +0,0 @@ -4 diff --git a/unittests/list_push_back.chai b/unittests/list_push_back.chai index 88ce768..4d88deb 100644 --- a/unittests/list_push_back.chai +++ b/unittests/list_push_back.chai @@ -3,4 +3,6 @@ load_module("stl_extra") var x = List() x.push_back(3) x.push_back("A") -print(x) + +assert_equal(3, x.front()); +assert_equal("A", x.back()); diff --git a/unittests/list_push_back.txt b/unittests/list_push_back.txt deleted file mode 100644 index 3bb0d0c..0000000 --- a/unittests/list_push_back.txt +++ /dev/null @@ -1 +0,0 @@ -[3, A] diff --git a/unittests/list_push_front.chai b/unittests/list_push_front.chai index 3ce226a..86e2832 100644 --- a/unittests/list_push_front.chai +++ b/unittests/list_push_front.chai @@ -3,4 +3,6 @@ load_module("stl_extra") var x = List() x.push_front(3) x.push_front("A") -print(x) + +assert_equal("A", x.front()); +assert_equal(3, x.back()); diff --git a/unittests/list_push_front.txt b/unittests/list_push_front.txt deleted file mode 100644 index 6f91e7c..0000000 --- a/unittests/list_push_front.txt +++ /dev/null @@ -1 +0,0 @@ -[A, 3] diff --git a/unittests/load_module.chai b/unittests/load_module.chai index 47d9804..9508ca4 100644 --- a/unittests/load_module.chai +++ b/unittests/load_module.chai @@ -1,2 +1,2 @@ load_module("test") -print(hello_world()) +assert_equal("Hello World", hello_world()); diff --git a/unittests/load_module.txt b/unittests/load_module.txt deleted file mode 100644 index 557db03..0000000 --- a/unittests/load_module.txt +++ /dev/null @@ -1 +0,0 @@ -Hello World diff --git a/unittests/loop_inner_outer.chai b/unittests/loop_inner_outer.chai index 747b8f7..64a25e6 100644 --- a/unittests/loop_inner_outer.chai +++ b/unittests/loop_inner_outer.chai @@ -6,5 +6,4 @@ for (var i = 0; i < 10; ++i) { } } -print(total) - +assert_equal(100, total); diff --git a/unittests/loop_inner_outer.txt b/unittests/loop_inner_outer.txt deleted file mode 100644 index 29d6383..0000000 --- a/unittests/loop_inner_outer.txt +++ /dev/null @@ -1 +0,0 @@ -100 diff --git a/unittests/map.chai b/unittests/map.chai index ed628cf..a0a31ee 100644 --- a/unittests/map.chai +++ b/unittests/map.chai @@ -1 +1 @@ -print(map([1, 2, 3], odd)) +assert_equal([true, false, true], map([1,2,3], odd)) diff --git a/unittests/map.txt b/unittests/map.txt deleted file mode 100644 index c8069fd..0000000 --- a/unittests/map.txt +++ /dev/null @@ -1 +0,0 @@ -[true, false, true] diff --git a/unittests/map_access.chai b/unittests/map_access.chai index 22f836f..19ebc1a 100644 --- a/unittests/map_access.chai +++ b/unittests/map_access.chai @@ -1,2 +1,2 @@ var x = ["bob":2, "fred":3] -print(x["fred"]) +assert_equal(3, x["fred"]) diff --git a/unittests/map_access.txt b/unittests/map_access.txt deleted file mode 100644 index 00750ed..0000000 --- a/unittests/map_access.txt +++ /dev/null @@ -1 +0,0 @@ -3 diff --git a/unittests/map_inplace_init.chai b/unittests/map_inplace_init.chai index 75616c4..b1d8221 100644 --- a/unittests/map_inplace_init.chai +++ b/unittests/map_inplace_init.chai @@ -1,2 +1,3 @@ var x = ["bob":1, "fred":2] -print(x) + +assert_equal(2, x.size()); diff --git a/unittests/map_inplace_init.txt b/unittests/map_inplace_init.txt deleted file mode 100644 index d5b9b17..0000000 --- a/unittests/map_inplace_init.txt +++ /dev/null @@ -1 +0,0 @@ -[, ] diff --git a/unittests/math_add.chai b/unittests/math_add.chai index 7a7a4b8..bcb9036 100644 --- a/unittests/math_add.chai +++ b/unittests/math_add.chai @@ -1 +1 @@ -print(1 + 2) +assert_equal(3, (1 + 2)) diff --git a/unittests/math_add.txt b/unittests/math_add.txt deleted file mode 100644 index 00750ed..0000000 --- a/unittests/math_add.txt +++ /dev/null @@ -1 +0,0 @@ -3 diff --git a/unittests/math_add_mixed.chai b/unittests/math_add_mixed.chai index a2a8774..b000caf 100644 --- a/unittests/math_add_mixed.chai +++ b/unittests/math_add_mixed.chai @@ -1 +1 @@ -print(1.5 + 2) +assert_equal(3.5, 1.5 + 2) diff --git a/unittests/math_add_mixed.txt b/unittests/math_add_mixed.txt deleted file mode 100644 index 5a95802..0000000 --- a/unittests/math_add_mixed.txt +++ /dev/null @@ -1 +0,0 @@ -3.5 diff --git a/unittests/math_dec.chai b/unittests/math_dec.chai index 40d588d..e746f29 100644 --- a/unittests/math_dec.chai +++ b/unittests/math_dec.chai @@ -1,2 +1,3 @@ var i = 3 -print(--i) +assert_equal(2, --i) +assert_equal(2, i) diff --git a/unittests/math_dec.txt b/unittests/math_dec.txt deleted file mode 100644 index 0cfbf08..0000000 --- a/unittests/math_dec.txt +++ /dev/null @@ -1 +0,0 @@ -2 diff --git a/unittests/math_div.chai b/unittests/math_div.chai index 430a895..971f217 100644 --- a/unittests/math_div.chai +++ b/unittests/math_div.chai @@ -1 +1 @@ -print(10 / 5) +assert_equal(2, 10/5) diff --git a/unittests/math_div.txt b/unittests/math_div.txt deleted file mode 100644 index 0cfbf08..0000000 --- a/unittests/math_div.txt +++ /dev/null @@ -1 +0,0 @@ -2 diff --git a/unittests/math_inc.chai b/unittests/math_inc.chai index e39d73a..ec317c0 100644 --- a/unittests/math_inc.chai +++ b/unittests/math_inc.chai @@ -1,2 +1,3 @@ var i = 3 -print(++i) +assert_equal(4, ++i) +assert_equal(4, i) diff --git a/unittests/math_inc.txt b/unittests/math_inc.txt deleted file mode 100644 index b8626c4..0000000 --- a/unittests/math_inc.txt +++ /dev/null @@ -1 +0,0 @@ -4 diff --git a/unittests/math_mod.chai b/unittests/math_mod.chai index acf746f..326c35a 100644 --- a/unittests/math_mod.chai +++ b/unittests/math_mod.chai @@ -1 +1 @@ -print(11 % 3) +assert_equal(2, 11 % 3) diff --git a/unittests/math_mod.txt b/unittests/math_mod.txt deleted file mode 100644 index 0cfbf08..0000000 --- a/unittests/math_mod.txt +++ /dev/null @@ -1 +0,0 @@ -2 diff --git a/unittests/math_mult.chai b/unittests/math_mult.chai index ed15e37..94c355d 100644 --- a/unittests/math_mult.chai +++ b/unittests/math_mult.chai @@ -1 +1 @@ -print(3 * 4) +assert_equal(12, 3 * 4) diff --git a/unittests/math_mult.txt b/unittests/math_mult.txt deleted file mode 100644 index 48082f7..0000000 --- a/unittests/math_mult.txt +++ /dev/null @@ -1 +0,0 @@ -12 diff --git a/unittests/math_negate.chai b/unittests/math_negate.chai index 9b73d90..36bae88 100644 --- a/unittests/math_negate.chai +++ b/unittests/math_negate.chai @@ -1 +1 @@ -print(-(3 + 4)) +assert_equal(-7, -(3 + 4)) diff --git a/unittests/math_negate.txt b/unittests/math_negate.txt deleted file mode 100644 index 17bdab1..0000000 --- a/unittests/math_negate.txt +++ /dev/null @@ -1 +0,0 @@ --7 diff --git a/unittests/math_paren.chai b/unittests/math_paren.chai index 6feac2e..01b7f20 100644 --- a/unittests/math_paren.chai +++ b/unittests/math_paren.chai @@ -1 +1 @@ -print(3*(4+5)) +assert_equal(27, 3*(4+5)) diff --git a/unittests/math_paren.txt b/unittests/math_paren.txt deleted file mode 100644 index f64f5d8..0000000 --- a/unittests/math_paren.txt +++ /dev/null @@ -1 +0,0 @@ -27 diff --git a/unittests/math_sub.chai b/unittests/math_sub.chai index 54b69b9..7e8342c 100644 --- a/unittests/math_sub.chai +++ b/unittests/math_sub.chai @@ -1 +1 @@ -print(5 - 3) +assert_equal(2, 5 - 3) diff --git a/unittests/math_sub.txt b/unittests/math_sub.txt deleted file mode 100644 index 0cfbf08..0000000 --- a/unittests/math_sub.txt +++ /dev/null @@ -1 +0,0 @@ -2 diff --git a/unittests/max.chai b/unittests/max.chai index 7dc2d30..533e7e8 100644 --- a/unittests/max.chai +++ b/unittests/max.chai @@ -1 +1 @@ -print(max(3, 5)) +assert_equal(5, max(3, 5)) diff --git a/unittests/max.txt b/unittests/max.txt deleted file mode 100644 index 7ed6ff8..0000000 --- a/unittests/max.txt +++ /dev/null @@ -1 +0,0 @@ -5 diff --git a/unittests/memberscope.chai b/unittests/memberscope.chai index f2ed032..fe46810 100644 --- a/unittests/memberscope.chai +++ b/unittests/memberscope.chai @@ -9,4 +9,4 @@ def Vector3::Vector3(x, y, z) { } var v = Vector3(1,2,3); -print(v.x); +assert_equal(1, v.x); diff --git a/unittests/memberscope.txt b/unittests/memberscope.txt deleted file mode 100644 index d00491f..0000000 --- a/unittests/memberscope.txt +++ /dev/null @@ -1 +0,0 @@ -1 diff --git a/unittests/method_sugar.chai b/unittests/method_sugar.chai index 358f16b..521400b 100644 --- a/unittests/method_sugar.chai +++ b/unittests/method_sugar.chai @@ -1 +1 @@ -print([1, 2, 3].sum()) +assert_equal(6, [1, 2, 3].sum()) diff --git a/unittests/method_sugar.txt b/unittests/method_sugar.txt deleted file mode 100644 index 1e8b314..0000000 --- a/unittests/method_sugar.txt +++ /dev/null @@ -1 +0,0 @@ -6 diff --git a/unittests/min.chai b/unittests/min.chai index 9b940f2..0ef1ba7 100644 --- a/unittests/min.chai +++ b/unittests/min.chai @@ -1 +1 @@ -print(min(3, 5)) +assert_equal(3, min(3, 5)) diff --git a/unittests/min.txt b/unittests/min.txt deleted file mode 100644 index 00750ed..0000000 --- a/unittests/min.txt +++ /dev/null @@ -1 +0,0 @@ -3 diff --git a/unittests/mmd1.chai b/unittests/mmd1.chai index 4368557..ff38a3c 100644 --- a/unittests/mmd1.chai +++ b/unittests/mmd1.chai @@ -14,7 +14,7 @@ def bob() { 10 } -print(bob()) -print(bob(5)) -print(bob(5,6)) -print(bob(5,6,7)) +assert_equal(10, bob()) +assert_equal(-5, bob(5)) +assert_equal(-1, bob(5,6)) +assert_equal(18, bob(5,6,7)) diff --git a/unittests/mmd1.txt b/unittests/mmd1.txt deleted file mode 100644 index 0da6de7..0000000 --- a/unittests/mmd1.txt +++ /dev/null @@ -1,4 +0,0 @@ -10 --5 --1 -18 diff --git a/unittests/mmd2.chai b/unittests/mmd2.chai index 2247a38..1c5f177 100644 --- a/unittests/mmd2.chai +++ b/unittests/mmd2.chai @@ -4,6 +4,6 @@ def bob(x, y) : x > 5 { x - y + 10 } def bob(x, y) { x + y } -print(bob(3, 4)) -print(bob(6, 7)) -print(bob(11, 12)) +assert_equal(7, bob(3,4)) +assert_equal(9, bob(6,7)) +assert_equal(-1, bob(11,12)) diff --git a/unittests/mmd2.txt b/unittests/mmd2.txt deleted file mode 100644 index eb2ae03..0000000 --- a/unittests/mmd2.txt +++ /dev/null @@ -1,3 +0,0 @@ -7 -9 --1 diff --git a/unittests/multiline.chai b/unittests/multiline.chai index 6858554..f13be4e 100644 --- a/unittests/multiline.chai +++ b/unittests/multiline.chai @@ -1,7 +1,9 @@ var x = [1, 2, 3, 4] -print(x) +assert_equal(1, x[0]) -print(map(x, - fun(x) { x + 1 })) +var y = map(x, + fun(x) { x + 1 }) + +assert_equal(2, y[0]) diff --git a/unittests/multiline.txt b/unittests/multiline.txt deleted file mode 100644 index 1daa0d0..0000000 --- a/unittests/multiline.txt +++ /dev/null @@ -1,2 +0,0 @@ -[1, 2, 3, 4] -[2, 3, 4, 5] diff --git a/unittests/number_formats.chai b/unittests/number_formats.chai index 4fd4de5..c80ece0 100644 --- a/unittests/number_formats.chai +++ b/unittests/number_formats.chai @@ -1,2 +1,3 @@ -print(012) -print(0x1f) +assert_equal(10, 012) +assert_equal(31, 0x1f) +assert_equal(3, 0b11) diff --git a/unittests/number_formats.txt b/unittests/number_formats.txt deleted file mode 100644 index 3bcaedb..0000000 --- a/unittests/number_formats.txt +++ /dev/null @@ -1,2 +0,0 @@ -10 -31 diff --git a/unittests/object_attr.chai b/unittests/object_attr.chai index e0215b6..c2da08e 100644 --- a/unittests/object_attr.chai +++ b/unittests/object_attr.chai @@ -2,4 +2,5 @@ attr bob::z def bob::bob() { this.z = 10 } var x = bob() def bob::fred(x) { this.z - x } -print(x.fred(3)) + +assert_equal(7, x.fred(3)) diff --git a/unittests/object_attr.txt b/unittests/object_attr.txt deleted file mode 100644 index 7f8f011..0000000 --- a/unittests/object_attr.txt +++ /dev/null @@ -1 +0,0 @@ -7 diff --git a/unittests/object_clone.chai b/unittests/object_clone.chai index 03bd431..4659f41 100644 --- a/unittests/object_clone.chai +++ b/unittests/object_clone.chai @@ -7,5 +7,5 @@ x.z = 10; var y = clone(x); y.z = 20; -print(x.z); -print(y.z); +assert_equal(10, x.z) +assert_equal(20, y.z) diff --git a/unittests/object_clone.txt b/unittests/object_clone.txt deleted file mode 100644 index 3b86147..0000000 --- a/unittests/object_clone.txt +++ /dev/null @@ -1,2 +0,0 @@ -10 -20 diff --git a/unittests/object_constructor_guards.chai b/unittests/object_constructor_guards.chai index 2e2f55f..f48c00a 100644 --- a/unittests/object_constructor_guards.chai +++ b/unittests/object_constructor_guards.chai @@ -1,5 +1,10 @@ -def bob::bob(x) : x < 10 { print("constructed less than 10: " + x.to_string()) } -def bob::bob(x) { print("constructed any old: " + x.to_string()) } +attr bob::val + +def bob::bob(x) : x < 10 { this.val = "Less Than Ten: " + x.to_string(); } +def bob::bob(x) { this.val = "Any Other Value: " + x.to_string(); } var b = bob(12) var c = bob(3) + +assert_equal("Any Other Value: 12", b.val ) +assert_equal("Less Than Ten: 3", c.val ) diff --git a/unittests/object_constructor_guards.txt b/unittests/object_constructor_guards.txt deleted file mode 100644 index 130ba0c..0000000 --- a/unittests/object_constructor_guards.txt +++ /dev/null @@ -1,2 +0,0 @@ -constructed any old: 12 -constructed less than 10: 3 diff --git a/unittests/object_method_guards.chai b/unittests/object_method_guards.chai index 206d8ce..addc850 100644 --- a/unittests/object_method_guards.chai +++ b/unittests/object_method_guards.chai @@ -1,6 +1,6 @@ def bob::bob() { } -def bob::fred(e) : e < 10 { print("e less than 10") } -def bob::fred(e) { print("e is some value") } +def bob::fred(e) : e < 10 { assert_equal(true, e<10) } +def bob::fred(e) { assert_equal(true, e >= 10) } var b = bob() b.fred(3) diff --git a/unittests/object_method_guards.txt b/unittests/object_method_guards.txt deleted file mode 100644 index 442c0be..0000000 --- a/unittests/object_method_guards.txt +++ /dev/null @@ -1,2 +0,0 @@ -e less than 10 -e is some value diff --git a/unittests/odd.chai b/unittests/odd.chai index 5408d63..dbaf2a0 100644 --- a/unittests/odd.chai +++ b/unittests/odd.chai @@ -1 +1 @@ -print(odd(4)) +assert_equal(false, odd(4)) diff --git a/unittests/odd.txt b/unittests/odd.txt deleted file mode 100644 index c508d53..0000000 --- a/unittests/odd.txt +++ /dev/null @@ -1 +0,0 @@ -false diff --git a/unittests/operator_overload.chai b/unittests/operator_overload.chai index 1f3f8cb..9bd2eb7 100644 --- a/unittests/operator_overload.chai +++ b/unittests/operator_overload.chai @@ -5,4 +5,5 @@ var b = Bob() var c = Bob() b.x = 4 c.x = 5 -print(b+c) + +assert_equal(9, b+c) diff --git a/unittests/operator_overload.txt b/unittests/operator_overload.txt deleted file mode 100644 index ec63514..0000000 --- a/unittests/operator_overload.txt +++ /dev/null @@ -1 +0,0 @@ -9 diff --git a/unittests/operator_overload2.chai b/unittests/operator_overload2.chai index 619010c..b4afbe7 100644 --- a/unittests/operator_overload2.chai +++ b/unittests/operator_overload2.chai @@ -5,4 +5,5 @@ var b = Bob() var c = Bob() b.x = 4 c.x = 5 -print(b-c) + +assert_equal(-1, b-c) diff --git a/unittests/operator_overload2.txt b/unittests/operator_overload2.txt deleted file mode 100644 index 3a2e3f4..0000000 --- a/unittests/operator_overload2.txt +++ /dev/null @@ -1 +0,0 @@ --1 diff --git a/unittests/operators_float.chai b/unittests/operators_float.chai index f58f8fb..9a61d90 100644 --- a/unittests/operators_float.chai +++ b/unittests/operators_float.chai @@ -2,14 +2,15 @@ var i = 1.0; var j = 2.0; var k = 3.0; -print(i + j); -print(+i); -print(i - j); -print(-i); -print(k / j); -print(j * k); +assert_equal(3, i + j) +assert_equal(1.0, +i) +assert_equal(-1, i-j) +assert_equal(-1, -i) +assert_equal(1.5, k/j) +assert_equal(6, j*k) -print(i -= 1); -print(j *= 1.5); -print(j /= 2); -print(j += 1); +assert_equal(0, i -= i) +assert_equal(3, j *= 1.5) +assert_equal(1.5, j /= 2) +assert_equal(2.5, j += 1) +assert_throws("No modulous for float", fun() { k % 2 } ); diff --git a/unittests/operators_float.txt b/unittests/operators_float.txt deleted file mode 100644 index 4110b89..0000000 --- a/unittests/operators_float.txt +++ /dev/null @@ -1,10 +0,0 @@ -3 -1 --1 --1 -1.5 -6 -0 -3 -1.5 -2.5 diff --git a/unittests/operators_int.chai b/unittests/operators_int.chai index ad8aede..4627b55 100644 --- a/unittests/operators_int.chai +++ b/unittests/operators_int.chai @@ -2,31 +2,30 @@ var i = 1; var j = 2; var k = 3; -print(i + j); -print(+i); -print(i - j); -print(-i); -print(j & k); -print(~j); -print(j ^ k); -print(i | j); -print(j / i); -print(i << j); -print(j * k); -print(k % j); -print(j >> i); - -print(i &= 2); -print(j ^= 3); -print(j |= 2); -print(i -= 1); -print(j <<= 1); -print(j *= 2); -print(j /= 2); -print(j %= 4); -print(j >>= 1); -print(j += 1); -print(--j); -print(++j); +assert_equal(3, i + j); +assert_equal(1, +i); +assert_equal(-1, i - j); +assert_equal(-1, -i); +assert_equal(2, j & k); +assert_equal(-3, ~j); +assert_equal(1, j ^ k); +assert_equal(3, i | j); +assert_equal(2, j / i); +assert_equal(4, i << j); +assert_equal(6, j * k); +assert_equal(1, k % j); +assert_equal(1, j >> i); +assert_equal(0, i &= 2); +assert_equal(1, j ^= 3); +assert_equal(3, j |= 2); +assert_equal(-1, i -= 1); +assert_equal(6, j <<= 1); +assert_equal(12, j *= 2); +assert_equal(6, j /= 2); +assert_equal(2, j %= 4); +assert_equal(1, j >>= 1); +assert_equal(2, j += 1); +assert_equal(1, --j); +assert_equal(2, ++j); diff --git a/unittests/operators_int.txt b/unittests/operators_int.txt deleted file mode 100644 index 1e1ba4a..0000000 --- a/unittests/operators_int.txt +++ /dev/null @@ -1,25 +0,0 @@ -3 -1 --1 --1 -2 --3 -1 -3 -2 -4 -6 -1 -1 -0 -1 -3 --1 -6 -12 -6 -2 -1 -2 -1 -2 diff --git a/unittests/precedence_1.chai b/unittests/precedence_1.chai index e9273ff..a538862 100644 --- a/unittests/precedence_1.chai +++ b/unittests/precedence_1.chai @@ -1 +1 @@ -print(2 + 3 * 4) +assert_equal(14, 2 + 3 * 4) diff --git a/unittests/precedence_1.txt b/unittests/precedence_1.txt deleted file mode 100644 index 8351c19..0000000 --- a/unittests/precedence_1.txt +++ /dev/null @@ -1 +0,0 @@ -14 diff --git a/unittests/precedence_2.chai b/unittests/precedence_2.chai index f08d07a..27a19d4 100644 --- a/unittests/precedence_2.chai +++ b/unittests/precedence_2.chai @@ -1 +1 @@ -print(5 - 4 - 3) +assert_equal(-2, 5 - 4 - 3) diff --git a/unittests/precedence_2.txt b/unittests/precedence_2.txt deleted file mode 100644 index 3fbedf6..0000000 --- a/unittests/precedence_2.txt +++ /dev/null @@ -1 +0,0 @@ --2 diff --git a/unittests/precedence_3.chai b/unittests/precedence_3.chai index d991ccf..6eecbf6 100644 --- a/unittests/precedence_3.chai +++ b/unittests/precedence_3.chai @@ -1 +1 @@ -print(10 / 5 % 2) +assert_equal(0, 10 / 5 % 2) diff --git a/unittests/precedence_3.txt b/unittests/precedence_3.txt deleted file mode 100644 index 573541a..0000000 --- a/unittests/precedence_3.txt +++ /dev/null @@ -1 +0,0 @@ -0 diff --git a/unittests/precedence_eq.chai b/unittests/precedence_eq.chai index 7656c9c..325d667 100644 --- a/unittests/precedence_eq.chai +++ b/unittests/precedence_eq.chai @@ -1,2 +1,3 @@ var x = var y = 4 -print(x); print(y) +assert_equal(4, x); +assert_equal(4, y); diff --git a/unittests/precedence_eq.txt b/unittests/precedence_eq.txt deleted file mode 100644 index 7290ba8..0000000 --- a/unittests/precedence_eq.txt +++ /dev/null @@ -1,2 +0,0 @@ -4 -4 diff --git a/unittests/product.chai b/unittests/product.chai index a05fd50..03ba3cf 100644 --- a/unittests/product.chai +++ b/unittests/product.chai @@ -1 +1 @@ -print(product([1, 2, 3, 4])) +assert_equal(24, product([1, 2, 3, 4])) diff --git a/unittests/product.txt b/unittests/product.txt deleted file mode 100644 index a45fd52..0000000 --- a/unittests/product.txt +++ /dev/null @@ -1 +0,0 @@ -24 diff --git a/unittests/range.chai b/unittests/range.chai index f939f31..ddef4f2 100644 --- a/unittests/range.chai +++ b/unittests/range.chai @@ -1,4 +1,4 @@ var x = [1, 2, 3, 4] var r = range(x) r.pop_front() -print(r.front()) +assert_equal(2, r.front()); diff --git a/unittests/range.txt b/unittests/range.txt deleted file mode 100644 index 0cfbf08..0000000 --- a/unittests/range.txt +++ /dev/null @@ -1 +0,0 @@ -2 diff --git a/unittests/range_back.chai b/unittests/range_back.chai index 1edf803..6bf5672 100644 --- a/unittests/range_back.chai +++ b/unittests/range_back.chai @@ -1,4 +1,4 @@ var x = [1, 2, 3, 4] var r = range(x) r.pop_back() -print(r.back()) +assert_equal(3, r.back()) diff --git a/unittests/range_back.txt b/unittests/range_back.txt deleted file mode 100644 index 00750ed..0000000 --- a/unittests/range_back.txt +++ /dev/null @@ -1 +0,0 @@ -3 diff --git a/unittests/range_contains.chai b/unittests/range_contains.chai index 1eb76f5..28a99b1 100644 --- a/unittests/range_contains.chai +++ b/unittests/range_contains.chai @@ -1,5 +1,5 @@ var v = [1,2,"hi", "world", 5.5] -print(v.contains(5.5)); -print(v.contains(0)); -print(v.contains(1, lt)); -print(v.contains(2, `==`)); +assert_equal(true, v.contains(5.5)) +assert_equal(false, v.contains(0)) +assert_equal(false, v.contains(1, lt)) +assert_equal(true, v.contains(2, `==`)) diff --git a/unittests/range_contains.txt b/unittests/range_contains.txt deleted file mode 100644 index e50fb21..0000000 --- a/unittests/range_contains.txt +++ /dev/null @@ -1,4 +0,0 @@ -true -false -false -true diff --git a/unittests/range_find.chai b/unittests/range_find.chai index b892904..08045e5 100644 --- a/unittests/range_find.chai +++ b/unittests/range_find.chai @@ -1,5 +1,6 @@ var v = [2, 1, "Hi", 5.5] var r = v.find("Hi"); -print(r); + +assert_equal("Hi", r.front()) var r2 = v.find(2, `<`); -print(r2); +assert_equal(1, r2.front()); diff --git a/unittests/range_find.txt b/unittests/range_find.txt deleted file mode 100644 index d31bb00..0000000 --- a/unittests/range_find.txt +++ /dev/null @@ -1,2 +0,0 @@ -[Hi, 5.5] -[1, Hi, 5.5] diff --git a/unittests/range_inplace.chai b/unittests/range_inplace.chai index 8145e18..d661f5d 100644 --- a/unittests/range_inplace.chai +++ b/unittests/range_inplace.chai @@ -1 +1 @@ -print([3..6]) +assert_equal([3,4,5,6], [3..6]) diff --git a/unittests/range_inplace.txt b/unittests/range_inplace.txt deleted file mode 100644 index dc90ae7..0000000 --- a/unittests/range_inplace.txt +++ /dev/null @@ -1 +0,0 @@ -[3, 4, 5, 6] diff --git a/unittests/reduce.chai b/unittests/reduce.chai index 35059e3..3b255b3 100644 --- a/unittests/reduce.chai +++ b/unittests/reduce.chai @@ -1 +1 @@ -print(reduce([1, 2, 3, 4], `+`)) +assert_equal(10, reduce([1, 2, 3, 4], `+`)) diff --git a/unittests/reduce.txt b/unittests/reduce.txt deleted file mode 100644 index f599e28..0000000 --- a/unittests/reduce.txt +++ /dev/null @@ -1 +0,0 @@ -10 diff --git a/unittests/ref_equal.chai b/unittests/ref_equal.chai index 44437f3..1dbb90e 100644 --- a/unittests/ref_equal.chai +++ b/unittests/ref_equal.chai @@ -1,4 +1,5 @@ var i = 3 var j := i j = 4 -print(i) + +assert_equal(4, i) diff --git a/unittests/ref_equal.txt b/unittests/ref_equal.txt deleted file mode 100644 index b8626c4..0000000 --- a/unittests/ref_equal.txt +++ /dev/null @@ -1 +0,0 @@ -4 diff --git a/unittests/retro.chai b/unittests/retro.chai index 904e561..d7f6818 100644 --- a/unittests/retro.chai +++ b/unittests/retro.chai @@ -1,4 +1,4 @@ var x = [1, 2, 3, 4] var r = retro(range(x)) r.pop_front() -print(r.front()) +assert_equal(3, r.front()) diff --git a/unittests/retro.txt b/unittests/retro.txt deleted file mode 100644 index 00750ed..0000000 --- a/unittests/retro.txt +++ /dev/null @@ -1 +0,0 @@ -3 diff --git a/unittests/retroretro.chai b/unittests/retroretro.chai index 232a0df..09af3ca 100644 --- a/unittests/retroretro.chai +++ b/unittests/retroretro.chai @@ -3,5 +3,5 @@ var r = retro(range(x)) r.pop_back() var r2 = retro(r) r2.pop_front() -print(r.back()) -print(r2.front()) +assert_equal(2, r.back()) +assert_equal(3, r2.front()) diff --git a/unittests/retroretro.txt b/unittests/retroretro.txt deleted file mode 100644 index 4792e70..0000000 --- a/unittests/retroretro.txt +++ /dev/null @@ -1,2 +0,0 @@ -2 -3 diff --git a/unittests/return.chai b/unittests/return.chai index 49cce12..512f52f 100644 --- a/unittests/return.chai +++ b/unittests/return.chai @@ -2,4 +2,4 @@ def sam() { return 5 } -print(sam()) +assert_equal(5, sam()) diff --git a/unittests/return.txt b/unittests/return.txt deleted file mode 100644 index 7ed6ff8..0000000 --- a/unittests/return.txt +++ /dev/null @@ -1 +0,0 @@ -5 diff --git a/unittests/runtime_error.chai b/unittests/runtime_error.chai index e27c839..e1e2fc1 100644 --- a/unittests/runtime_error.chai +++ b/unittests/runtime_error.chai @@ -1,6 +1,11 @@ +var caught = false + try { throw(runtime_error("error")) } catch(e) { - print(e.what()) + caught = true + assert_equal("error", e.what()) } + +assert_equal(true, caught) diff --git a/unittests/runtime_error.txt b/unittests/runtime_error.txt deleted file mode 100644 index 8276753..0000000 --- a/unittests/runtime_error.txt +++ /dev/null @@ -1 +0,0 @@ -error diff --git a/unittests/shift.chai b/unittests/shift.chai index bcbfa7c..03f7ea3 100644 --- a/unittests/shift.chai +++ b/unittests/shift.chai @@ -1 +1 @@ -print(2 << 2) +assert_equal(8, 2 << 2) diff --git a/unittests/shift.txt b/unittests/shift.txt deleted file mode 100644 index 45a4fb7..0000000 --- a/unittests/shift.txt +++ /dev/null @@ -1 +0,0 @@ -8 diff --git a/unittests/string_concat.chai b/unittests/string_concat.chai index a4c15e1..40bf4aa 100644 --- a/unittests/string_concat.chai +++ b/unittests/string_concat.chai @@ -1 +1 @@ -print("hello, " + "there") +assert_equal("hello, there", "hello, " + "there") diff --git a/unittests/string_concat.txt b/unittests/string_concat.txt deleted file mode 100644 index 493a899..0000000 --- a/unittests/string_concat.txt +++ /dev/null @@ -1 +0,0 @@ -hello, there diff --git a/unittests/string_find.chai b/unittests/string_find.chai index 8b1f5e7..f2cc1f8 100644 --- a/unittests/string_find.chai +++ b/unittests/string_find.chai @@ -1 +1 @@ -print(find("123abab", "ab")) +assert_equal(3, find("123abab", "ab")) diff --git a/unittests/string_find.txt b/unittests/string_find.txt deleted file mode 100644 index 00750ed..0000000 --- a/unittests/string_find.txt +++ /dev/null @@ -1 +0,0 @@ -3 diff --git a/unittests/string_find_first_not_of.chai b/unittests/string_find_first_not_of.chai index 3daebc1..4d5fd8d 100644 --- a/unittests/string_find_first_not_of.chai +++ b/unittests/string_find_first_not_of.chai @@ -1 +1 @@ -print(find_first_not_of("abcd", "abd")) +assert_equal(2, find_first_not_of("abcd", "abd")) diff --git a/unittests/string_find_first_not_of.txt b/unittests/string_find_first_not_of.txt deleted file mode 100644 index 0cfbf08..0000000 --- a/unittests/string_find_first_not_of.txt +++ /dev/null @@ -1 +0,0 @@ -2 diff --git a/unittests/string_find_first_of.chai b/unittests/string_find_first_of.chai index 224af97..0200bb2 100644 --- a/unittests/string_find_first_of.chai +++ b/unittests/string_find_first_of.chai @@ -1 +1 @@ -print(find_first_of("abab", "bec")) +assert_equal(1, find_first_of("abab", "bec")) diff --git a/unittests/string_find_first_of.txt b/unittests/string_find_first_of.txt deleted file mode 100644 index d00491f..0000000 --- a/unittests/string_find_first_of.txt +++ /dev/null @@ -1 +0,0 @@ -1 diff --git a/unittests/string_find_last_not_of.chai b/unittests/string_find_last_not_of.chai index cf2627f..0090f9f 100644 --- a/unittests/string_find_last_not_of.chai +++ b/unittests/string_find_last_not_of.chai @@ -1 +1 @@ -print(find_last_not_of("abab", "ac")) +assert_equal(3, find_last_not_of("abab", "ac")) diff --git a/unittests/string_find_last_not_of.txt b/unittests/string_find_last_not_of.txt deleted file mode 100644 index 00750ed..0000000 --- a/unittests/string_find_last_not_of.txt +++ /dev/null @@ -1 +0,0 @@ -3 diff --git a/unittests/string_find_last_of.chai b/unittests/string_find_last_of.chai index ee0576a..72f0f6a 100644 --- a/unittests/string_find_last_of.chai +++ b/unittests/string_find_last_of.chai @@ -1 +1 @@ -print(find_last_of("abab", "bec")) +assert_equal(3, find_last_of("abab", "bec")) diff --git a/unittests/string_find_last_of.txt b/unittests/string_find_last_of.txt deleted file mode 100644 index 00750ed..0000000 --- a/unittests/string_find_last_of.txt +++ /dev/null @@ -1 +0,0 @@ -3 diff --git a/unittests/string_init.txt b/unittests/string_init.txt deleted file mode 100644 index 696fb6b..0000000 --- a/unittests/string_init.txt +++ /dev/null @@ -1 +0,0 @@ -bob diff --git a/unittests/string_rfind.chai b/unittests/string_rfind.chai index 880eba0..01675f3 100644 --- a/unittests/string_rfind.chai +++ b/unittests/string_rfind.chai @@ -1 +1 @@ -print(rfind("123abab", "ab")) +assert_equal(5, rfind("123abab", "ab")) diff --git a/unittests/string_rfind.txt b/unittests/string_rfind.txt deleted file mode 100644 index 7ed6ff8..0000000 --- a/unittests/string_rfind.txt +++ /dev/null @@ -1 +0,0 @@ -5 diff --git a/unittests/sum.chai b/unittests/sum.chai index b352626..7502ae7 100644 --- a/unittests/sum.chai +++ b/unittests/sum.chai @@ -1 +1 @@ -print(sum([1, 2, 3, 4])) +assert_equal(10, sum([1, 2, 3, 4])) diff --git a/unittests/sum.txt b/unittests/sum.txt deleted file mode 100644 index f599e28..0000000 --- a/unittests/sum.txt +++ /dev/null @@ -1 +0,0 @@ -10 diff --git a/unittests/take.chai b/unittests/take.chai index 092aea5..5110392 100644 --- a/unittests/take.chai +++ b/unittests/take.chai @@ -1 +1 @@ -print(take([1, 2, 3, 4], 2)) +assert_equal(2, take([1, 2, 3, 4], 2).back()) diff --git a/unittests/take.txt b/unittests/take.txt deleted file mode 100644 index 44e2ace..0000000 --- a/unittests/take.txt +++ /dev/null @@ -1 +0,0 @@ -[1, 2] diff --git a/unittests/take_while.chai b/unittests/take_while.chai index 9f60b5a..56a4ba2 100644 --- a/unittests/take_while.chai +++ b/unittests/take_while.chai @@ -1 +1 @@ -print(take_while([1, 2, 3, 4], odd)) +assert_equal([1], take_while([1, 2, 3, 4], odd)) diff --git a/unittests/take_while.txt b/unittests/take_while.txt deleted file mode 100644 index 7660873..0000000 --- a/unittests/take_while.txt +++ /dev/null @@ -1 +0,0 @@ -[1] diff --git a/unittests/type_info.chai b/unittests/type_info.chai index a4b84c2..fc2dd3e 100644 --- a/unittests/type_info.chai +++ b/unittests/type_info.chai @@ -1,10 +1,11 @@ -print(string_type.name()); -print(string_type.is_type_const()); -print(string_type.is_type_reference()); -print(string_type.is_type_void()); -print(string_type.is_type_undef()); -print(string_type.is_type_pointer()); -print("string".get_type_info().name()); -print(string_type.bare_equal("string".get_type_info())); +assert_equal("string", string_type.name()); +assert_equal(false, string_type.is_type_const()); +assert_equal(false, string_type.is_type_reference()); +assert_equal(false, string_type.is_type_void()); +assert_equal(false, string_type.is_type_undef()); +assert_equal(false, string_type.is_type_pointer()); +assert_equal("string", "string".get_type_info().name()); +assert_equal(true, string_type.bare_equal("string".get_type_info())); + +assert_equal(true, "bob".is_type(string_type)); -print("bob".is_type(string_type)); diff --git a/unittests/type_info.txt b/unittests/type_info.txt deleted file mode 100644 index d7afd85..0000000 --- a/unittests/type_info.txt +++ /dev/null @@ -1,9 +0,0 @@ -string -false -false -false -false -false -string -true -true diff --git a/unittests/use.chai b/unittests/use.chai index 30d4e44..1d31935 100644 --- a/unittests/use.chai +++ b/unittests/use.chai @@ -1,3 +1,4 @@ use("unittests/use.inc") -greet() +assert_equal("hello", greet()) + diff --git a/unittests/use.inc b/unittests/use.inc index 46a1c75..5a0dd99 100644 --- a/unittests/use.inc +++ b/unittests/use.inc @@ -1,3 +1,3 @@ def greet { - print("hello") + return("hello") } diff --git a/unittests/use.txt b/unittests/use.txt deleted file mode 100644 index ce01362..0000000 --- a/unittests/use.txt +++ /dev/null @@ -1 +0,0 @@ -hello diff --git a/unittests/vector_access.chai b/unittests/vector_access.chai index 0980485..34d483c 100644 --- a/unittests/vector_access.chai +++ b/unittests/vector_access.chai @@ -1,2 +1,2 @@ var x = [1, 2, 3] -print(x[2]) +assert_equal(3, x[2]) diff --git a/unittests/vector_access.txt b/unittests/vector_access.txt deleted file mode 100644 index 00750ed..0000000 --- a/unittests/vector_access.txt +++ /dev/null @@ -1 +0,0 @@ -3 diff --git a/unittests/vector_erase_at.chai b/unittests/vector_erase_at.chai index ac669c7..9a96218 100644 --- a/unittests/vector_erase_at.chai +++ b/unittests/vector_erase_at.chai @@ -1,3 +1,3 @@ var x = [1, 2, 3] x.erase_at(1) -print(x) +assert_equal([1,3], x); diff --git a/unittests/vector_erase_at.txt b/unittests/vector_erase_at.txt deleted file mode 100644 index f988c4a..0000000 --- a/unittests/vector_erase_at.txt +++ /dev/null @@ -1 +0,0 @@ -[1, 3] diff --git a/unittests/vector_inplace_init.chai b/unittests/vector_inplace_init.chai index fd69809..f16c15b 100644 --- a/unittests/vector_inplace_init.chai +++ b/unittests/vector_inplace_init.chai @@ -1,2 +1,2 @@ var x = [1, 2, 3] -print(x) +assert_equal(3, x.size()) diff --git a/unittests/vector_inplace_init.txt b/unittests/vector_inplace_init.txt deleted file mode 100644 index b5d8bb5..0000000 --- a/unittests/vector_inplace_init.txt +++ /dev/null @@ -1 +0,0 @@ -[1, 2, 3] diff --git a/unittests/vector_insert_at.chai b/unittests/vector_insert_at.chai index f0d92b9..4f6ec45 100644 --- a/unittests/vector_insert_at.chai +++ b/unittests/vector_insert_at.chai @@ -1,3 +1,3 @@ var x = [1, 2, 3] x.insert_at(1, 6) -print(x) +assert_equal([1,6,2,3], x); diff --git a/unittests/vector_insert_at.txt b/unittests/vector_insert_at.txt deleted file mode 100644 index 4517f0f..0000000 --- a/unittests/vector_insert_at.txt +++ /dev/null @@ -1 +0,0 @@ -[1, 6, 2, 3] diff --git a/unittests/vector_push_back.chai b/unittests/vector_push_back.chai index be4c741..715082b 100644 --- a/unittests/vector_push_back.chai +++ b/unittests/vector_push_back.chai @@ -1,3 +1,5 @@ var x = [1, 2] x.push_back(3) -print(x) +assert_equal(3, x.size()) +assert_equal(3, x.back()) +assert_equal(1, x.front()) diff --git a/unittests/vector_push_back.txt b/unittests/vector_push_back.txt deleted file mode 100644 index b5d8bb5..0000000 --- a/unittests/vector_push_back.txt +++ /dev/null @@ -1 +0,0 @@ -[1, 2, 3] diff --git a/unittests/vector_push_empty.chai b/unittests/vector_push_empty.chai index 25ae617..29c568d 100644 --- a/unittests/vector_push_empty.chai +++ b/unittests/vector_push_empty.chai @@ -1,3 +1,4 @@ var bob = [] bob.push_back(3) -print(bob) +assert_equal(1, bob.size()) +assert_equal(3, bob.front()) diff --git a/unittests/vector_push_empty.txt b/unittests/vector_push_empty.txt deleted file mode 100644 index 0480263..0000000 --- a/unittests/vector_push_empty.txt +++ /dev/null @@ -1 +0,0 @@ -[3] diff --git a/unittests/zip.chai b/unittests/zip.chai index 085b5a0..d39583f 100644 --- a/unittests/zip.chai +++ b/unittests/zip.chai @@ -1 +1,5 @@ -print(zip([1, 2, 3], [4, 5, 6])) +var z = zip([1, 2, 3], [4, 5, 6]) + +assert_equal([1,4], z[0]) +assert_equal([2,5], z[1]) +assert_equal([3,6], z[2]) diff --git a/unittests/zip.txt b/unittests/zip.txt deleted file mode 100644 index 0bf6c82..0000000 --- a/unittests/zip.txt +++ /dev/null @@ -1 +0,0 @@ -[[1, 4], [2, 5], [3, 6]] diff --git a/unittests/zip_with.chai b/unittests/zip_with.chai index d26aac3..1fe3dd9 100644 --- a/unittests/zip_with.chai +++ b/unittests/zip_with.chai @@ -1 +1,3 @@ -print(zip_with(`+`, [1, 2, 3], [4, 5, 6])) +var z = zip_with(`+`, [1, 2, 3], [4, 5, 6]) + +assert_equal([5,7,9], z) diff --git a/unittests/zip_with.txt b/unittests/zip_with.txt deleted file mode 100644 index b5ab842..0000000 --- a/unittests/zip_with.txt +++ /dev/null @@ -1 +0,0 @@ -[5, 7, 9]