mirror of
https://github.com/ChaiScript/ChaiScript.git
synced 2025-12-07 01:06:54 +08:00
Remove backward compatibility tests
This commit is contained in:
parent
d0d08d2ed9
commit
07fdb3bf6e
@ -1,2 +0,0 @@
|
|||||||
assert_throws("Error: \"Error, cannot assign to constant value.\"", fun() { 1 = 2 } );
|
|
||||||
assert_throws("Error: \"Error, cannot assign to constant value.\"", fun() { 1 + 2 = 2 } );
|
|
||||||
@ -1,2 +0,0 @@
|
|||||||
var prod = bind(foldl, _, `*`, 1.0)
|
|
||||||
assert_equal(60, prod([3, 4, 5]))
|
|
||||||
@ -1,34 +0,0 @@
|
|||||||
|
|
||||||
def add(x, y)
|
|
||||||
{
|
|
||||||
return x + y;
|
|
||||||
}
|
|
||||||
|
|
||||||
assert_equal(2, add.get_arity());
|
|
||||||
|
|
||||||
var b = bind(add, 2, _);
|
|
||||||
|
|
||||||
assert_equal(1, b.get_arity());
|
|
||||||
|
|
||||||
var c = bind(b, 3);
|
|
||||||
|
|
||||||
assert_equal(0, c.get_arity());
|
|
||||||
|
|
||||||
assert_equal(6, b(4));
|
|
||||||
assert_equal(5, c());
|
|
||||||
|
|
||||||
def concat2(a,b,c,d)
|
|
||||||
{
|
|
||||||
return to_string(a) + to_string(b) + to_string(c) + to_string(d);
|
|
||||||
}
|
|
||||||
|
|
||||||
var d = bind(concat2, _, " Hello ", _, " World");
|
|
||||||
assert_equal(2, d.get_arity());
|
|
||||||
|
|
||||||
assert_equal("1 Hello 3 World", d(1,3));
|
|
||||||
|
|
||||||
var e = bind(`<`, _, 5);
|
|
||||||
var types = e.get_param_types();
|
|
||||||
assert_equal(2, types.size());
|
|
||||||
assert_equal(true, types[0].bare_equal(bool_type));
|
|
||||||
|
|
||||||
@ -1 +0,0 @@
|
|||||||
{print("hello")}
|
|
||||||
@ -1 +0,0 @@
|
|||||||
assert_equal(false, !true)
|
|
||||||
@ -1,7 +0,0 @@
|
|||||||
var i = 0
|
|
||||||
while (i < 10) {
|
|
||||||
if (++i == 5) {
|
|
||||||
break
|
|
||||||
}
|
|
||||||
}
|
|
||||||
assert_equal(5, i);
|
|
||||||
@ -1 +0,0 @@
|
|||||||
assert_equal("b", to_string('b'))
|
|
||||||
@ -1,7 +0,0 @@
|
|||||||
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;
|
|
||||||
assert_equal(true, i.is_var_undef());
|
|
||||||
@ -1,3 +0,0 @@
|
|||||||
var v = collate(1, 2)
|
|
||||||
assert_equal(1, v[0])
|
|
||||||
assert_equal(2, v[1])
|
|
||||||
@ -1 +0,0 @@
|
|||||||
assert_equal(false, 1 > 2);
|
|
||||||
@ -1 +0,0 @@
|
|||||||
assert_equal(true, 1 < 2)
|
|
||||||
@ -1,5 +0,0 @@
|
|||||||
var v = concat([1, 2], [3, 4]);
|
|
||||||
|
|
||||||
assert_equal(4, v.size());
|
|
||||||
assert_equal(1, v[0]);
|
|
||||||
assert_equal(4, v[3]);
|
|
||||||
@ -1,4 +0,0 @@
|
|||||||
//If the following succeeds, the test passes
|
|
||||||
|
|
||||||
|
|
||||||
"Hello World".for_each(fun(x) { print(x) } )
|
|
||||||
@ -1 +0,0 @@
|
|||||||
assert_equal("3.5bob", 3.5.to_string() + "bob");
|
|
||||||
@ -1 +0,0 @@
|
|||||||
assert_equal("3bob", 3.to_string + "bob")
|
|
||||||
@ -1 +0,0 @@
|
|||||||
assert_equal(6.8, "3.5".to_double() + 3.3)
|
|
||||||
@ -1 +0,0 @@
|
|||||||
assert_equal(8, "4".to_int() + 4)
|
|
||||||
@ -1,11 +0,0 @@
|
|||||||
var a = [1,2,3, [4,5,6] ]
|
|
||||||
|
|
||||||
assert_equal(a[3][0], 4)
|
|
||||||
|
|
||||||
|
|
||||||
def Test::Test() { this.a = [1,2,3]; }
|
|
||||||
attr Test::a;
|
|
||||||
|
|
||||||
var t = Test();
|
|
||||||
|
|
||||||
assert_equal(t.a[0], 1)
|
|
||||||
@ -1,10 +0,0 @@
|
|||||||
assert_equal(`==`, `==`);
|
|
||||||
assert_not_equal(`==`, `<`);
|
|
||||||
assert_equal(`<`.get_arity(), 2);
|
|
||||||
assert_equal(get_arity.get_contained_functions().size(), 0);
|
|
||||||
assert_equal(get_arity.get_arity(), 1);
|
|
||||||
assert_equal(get_arity.get_param_types().size(), 2);
|
|
||||||
|
|
||||||
var paramtypes = get_arity.get_param_types();
|
|
||||||
|
|
||||||
assert_equal(true, paramtypes[1].bare_equal(Function_type));
|
|
||||||
@ -1 +0,0 @@
|
|||||||
assert_equal([3,4], drop([1, 2, 3, 4], 2))
|
|
||||||
@ -1 +0,0 @@
|
|||||||
assert_equal([2, 3], drop_while([1, 2, 3], odd))
|
|
||||||
@ -1,4 +0,0 @@
|
|||||||
var x=.5
|
|
||||||
assert_equal(.5, x)
|
|
||||||
var y=-.5
|
|
||||||
assert_equal(-.5, y)
|
|
||||||
@ -1 +0,0 @@
|
|||||||
assert_equal(7, eval("3 + 4"))
|
|
||||||
@ -1,38 +0,0 @@
|
|||||||
|
|
||||||
def deep()
|
|
||||||
{
|
|
||||||
try {
|
|
||||||
} catch {
|
|
||||||
|
|
||||||
} finally {
|
|
||||||
if (2)
|
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
def func()
|
|
||||||
{
|
|
||||||
deep();
|
|
||||||
}
|
|
||||||
|
|
||||||
def doing()
|
|
||||||
{
|
|
||||||
for (var i = 0; i < 10; ++i)
|
|
||||||
{
|
|
||||||
func();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
def while_doing()
|
|
||||||
{
|
|
||||||
while (true)
|
|
||||||
{
|
|
||||||
doing();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
var f = fun() { while_doing(); }
|
|
||||||
|
|
||||||
assert_true(get_eval_error(f).call_stack.size() <= 16)
|
|
||||||
@ -1 +0,0 @@
|
|||||||
assert_equal(true, even(4))
|
|
||||||
@ -1,9 +0,0 @@
|
|||||||
var x = 1
|
|
||||||
try {
|
|
||||||
throw(x)
|
|
||||||
x = 2
|
|
||||||
}
|
|
||||||
catch(e) {
|
|
||||||
x = e + 3
|
|
||||||
}
|
|
||||||
assert_equal(4, x);
|
|
||||||
@ -1,32 +0,0 @@
|
|||||||
var finallyone = false;
|
|
||||||
|
|
||||||
try {
|
|
||||||
throw(3)
|
|
||||||
}
|
|
||||||
catch(x) {
|
|
||||||
assert_equal(3, x)
|
|
||||||
}
|
|
||||||
finally {
|
|
||||||
finallyone = true;
|
|
||||||
}
|
|
||||||
|
|
||||||
assert_equal(true, finallyone);
|
|
||||||
|
|
||||||
var try2 = false;
|
|
||||||
var catch2 = false;
|
|
||||||
var finally2 = false;
|
|
||||||
|
|
||||||
|
|
||||||
try {
|
|
||||||
try2 = true;
|
|
||||||
}
|
|
||||||
catch {
|
|
||||||
catch2 = true;
|
|
||||||
}
|
|
||||||
finally {
|
|
||||||
finally2 = true;
|
|
||||||
}
|
|
||||||
|
|
||||||
assert_equal(true, try2);
|
|
||||||
assert_equal(false, catch2);
|
|
||||||
assert_equal(true, finally2);
|
|
||||||
@ -1 +0,0 @@
|
|||||||
assert_equal([1,3], filter([1, 2, 3, 4], odd))
|
|
||||||
@ -1,7 +0,0 @@
|
|||||||
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)
|
|
||||||
@ -1 +0,0 @@
|
|||||||
assert_equal(10, foldl([1, 2, 3, 4], `+`, 0))
|
|
||||||
@ -1,7 +0,0 @@
|
|||||||
var ret = []
|
|
||||||
|
|
||||||
for (var i = 0; i < 5; ++i) {
|
|
||||||
ret.push_back(i);
|
|
||||||
}
|
|
||||||
|
|
||||||
assert_equal([0,1,2,3,4], ret);
|
|
||||||
@ -1 +0,0 @@
|
|||||||
for_each([1, 2, 3], print)
|
|
||||||
@ -1,3 +0,0 @@
|
|||||||
var v = [1,2,3];
|
|
||||||
var r = range(v);
|
|
||||||
for_each(r, fun(x) { assert_equal(true, x>0); } )
|
|
||||||
@ -1,4 +0,0 @@
|
|||||||
// 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)
|
|
||||||
@ -1 +0,0 @@
|
|||||||
assert_equal(2, `+`.get_contained_functions()[0].get_arity())
|
|
||||||
@ -1,75 +0,0 @@
|
|||||||
|
|
||||||
#Test Function Description
|
|
||||||
def test_function(a)
|
|
||||||
{
|
|
||||||
return a;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
// test_function tests
|
|
||||||
assert_equal(test_function.get_arity(), 1);
|
|
||||||
assert_equal(test_function.get_contained_functions().size(), 0);
|
|
||||||
assert_equal(test_function.get_param_types().size(), 2);
|
|
||||||
|
|
||||||
assert_equal(test_function, test_function);
|
|
||||||
|
|
||||||
assert_not_equal(test_function, `+`);
|
|
||||||
|
|
||||||
assert_equal(test_function.call([1]), 1);
|
|
||||||
|
|
||||||
// dynamic object function tests
|
|
||||||
|
|
||||||
def int::test_fun()
|
|
||||||
{
|
|
||||||
return this;
|
|
||||||
}
|
|
||||||
|
|
||||||
assert_equal(test_fun.get_arity(), 1);
|
|
||||||
assert_equal(test_fun.get_contained_functions.size(), 1);
|
|
||||||
assert_equal(test_fun.get_param_types().size(), 2);
|
|
||||||
assert_equal(test_fun, test_fun);
|
|
||||||
var test_fun_types = test_fun.get_param_types();
|
|
||||||
assert_equal(true, test_fun_types[0].bare_equal(Object_type));
|
|
||||||
assert_equal(true, test_fun_types[1].bare_equal(int_type));
|
|
||||||
|
|
||||||
|
|
||||||
// built-ins tests
|
|
||||||
|
|
||||||
assert_equal(2, `==`.get_arity());
|
|
||||||
|
|
||||||
// < should be the merging of two functions bool <(PODObject, PODObject) and bool <(string, string)
|
|
||||||
// we want to peel it apart and make sure that's true
|
|
||||||
var types = `<`.get_param_types();
|
|
||||||
assert_equal(3, types.size());
|
|
||||||
assert_equal(true, types[0].bare_equal(bool_type));
|
|
||||||
assert_equal(true, types[1].bare_equal(Object_type));
|
|
||||||
assert_equal(true, types[2].bare_equal(Object_type));
|
|
||||||
assert_equal(2, `<`.get_contained_functions().size());
|
|
||||||
|
|
||||||
|
|
||||||
// guard existence tests
|
|
||||||
|
|
||||||
def with_guard(x) : x > 3 {}
|
|
||||||
def without_guard(x) {}
|
|
||||||
|
|
||||||
def group_guard(x) {}
|
|
||||||
def group_guard(x) : x > 3 {}
|
|
||||||
|
|
||||||
assert_equal(true, with_guard.has_guard());
|
|
||||||
assert_equal(false, without_guard.has_guard());
|
|
||||||
|
|
||||||
assert_equal(2, group_guard.get_contained_functions().size());
|
|
||||||
var group = group_guard.get_contained_functions();
|
|
||||||
|
|
||||||
assert_equal(true, group[0].has_guard())
|
|
||||||
assert_equal(false, group[1].has_guard())
|
|
||||||
|
|
||||||
assert_throws("Function does not have a guard", fun[group]() { group[1].get_guard(); } );
|
|
||||||
assert_throws("Function does not have a guard", fun[without_guard]() { without_guard.get_guard(); } );
|
|
||||||
|
|
||||||
var guard = with_guard.get_guard();
|
|
||||||
|
|
||||||
assert_equal(false, guard.has_guard());
|
|
||||||
assert_throws("Function does not have a guard", fun[guard]() { guard.get_guard(); } );
|
|
||||||
@ -1,3 +0,0 @@
|
|||||||
var x = `+`
|
|
||||||
x = `-`
|
|
||||||
assert_equal(1, x(5,4))
|
|
||||||
@ -1 +0,0 @@
|
|||||||
assert_equal([1,2,3,4,5,6,7,8,9,10], generate_range(1, 10))
|
|
||||||
@ -1,7 +0,0 @@
|
|||||||
load_module("test_module")
|
|
||||||
|
|
||||||
|
|
||||||
assert_equal(to_int(TestValue1), 1)
|
|
||||||
|
|
||||||
assert_equal(TestValue1.type_name(), "TestEnum")
|
|
||||||
|
|
||||||
@ -1,7 +0,0 @@
|
|||||||
var t = false;
|
|
||||||
|
|
||||||
if (true) {
|
|
||||||
t = true;
|
|
||||||
}
|
|
||||||
|
|
||||||
assert_equal(true, t);
|
|
||||||
@ -1,13 +0,0 @@
|
|||||||
var i = 3
|
|
||||||
var b1 = false;
|
|
||||||
var b2 = false;
|
|
||||||
|
|
||||||
if (i == 2) {
|
|
||||||
b1 = true;
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
b2 = true;
|
|
||||||
}
|
|
||||||
|
|
||||||
assert_equal(false, b1);
|
|
||||||
assert_equal(true, b2);
|
|
||||||
@ -1,18 +0,0 @@
|
|||||||
var b1 = false;
|
|
||||||
var b2 = false;
|
|
||||||
var b3 = false;
|
|
||||||
|
|
||||||
var i = 3
|
|
||||||
if (i == 2) {
|
|
||||||
b1 = true;
|
|
||||||
}
|
|
||||||
else if (i == 4) {
|
|
||||||
b2 = true;
|
|
||||||
}
|
|
||||||
else if (i == 3) {
|
|
||||||
b3 = true;
|
|
||||||
}
|
|
||||||
|
|
||||||
assert_equal(false, b1);
|
|
||||||
assert_equal(false, b2);
|
|
||||||
assert_equal(true, b3);
|
|
||||||
@ -1,14 +0,0 @@
|
|||||||
var i = 3
|
|
||||||
var b = false
|
|
||||||
if (i == 2) {
|
|
||||||
assert_equal(false, true)
|
|
||||||
}
|
|
||||||
else if (i == 4) {
|
|
||||||
assert_equal(false, true)
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
assert_equal(true, true)
|
|
||||||
b = true
|
|
||||||
}
|
|
||||||
|
|
||||||
assert_equal(true, b)
|
|
||||||
@ -1,10 +0,0 @@
|
|||||||
|
|
||||||
// tests more complex parses of the index operator
|
|
||||||
|
|
||||||
def Bob::bob3() { return [1,2,3]; }
|
|
||||||
def Bob::Bob() {}
|
|
||||||
var b = Bob();
|
|
||||||
|
|
||||||
|
|
||||||
assert_equal(b.bob3()[0], 1);
|
|
||||||
assert_equal((b.bob3())[1], 2);
|
|
||||||
@ -1,8 +0,0 @@
|
|||||||
load_module("test_module")
|
|
||||||
|
|
||||||
var t0 = TestBaseType()
|
|
||||||
var t = TestDerivedType();
|
|
||||||
|
|
||||||
assert_equal(t0.func(), 0);
|
|
||||||
assert_equal(t.func(), 1);
|
|
||||||
|
|
||||||
@ -1,3 +0,0 @@
|
|||||||
var bob = 5.5
|
|
||||||
assert_equal("5.5", "${bob}")
|
|
||||||
assert_equal("val: 8 and 8", "val: ${5.5 + 2.5} and ${bob + 2.5}")
|
|
||||||
@ -1,4 +0,0 @@
|
|||||||
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}")
|
|
||||||
@ -1 +0,0 @@
|
|||||||
assert_throws("Error: \"Error, cannot assign to constant value.\"", fun() { clone = `-` } );
|
|
||||||
@ -1,2 +0,0 @@
|
|||||||
assert_throws("Error: \"Unable to find appropriate'=' operator.\" With parameters: (int, const Function)", fun() { auto x = 5; x = `-`; } );
|
|
||||||
|
|
||||||
@ -1,4 +0,0 @@
|
|||||||
var i;
|
|
||||||
assert_equal(true, i.is_var_undef());
|
|
||||||
i = 5;
|
|
||||||
assert_equal(false, i.is_var_undef());
|
|
||||||
@ -1 +0,0 @@
|
|||||||
assert_equal("1*2*3", join([1, 2, 3], "*"))
|
|
||||||
@ -1,2 +0,0 @@
|
|||||||
var bob = fun(x) { x + 1 }
|
|
||||||
assert_equal(4, bob(3));
|
|
||||||
@ -1,8 +0,0 @@
|
|||||||
load_module("stl_extra")
|
|
||||||
|
|
||||||
var x = List()
|
|
||||||
x.push_back(3)
|
|
||||||
x.push_back("A")
|
|
||||||
|
|
||||||
assert_equal(3, x.front());
|
|
||||||
assert_equal("A", x.back());
|
|
||||||
@ -1,8 +0,0 @@
|
|||||||
load_module("stl_extra")
|
|
||||||
|
|
||||||
var x = List()
|
|
||||||
x.push_front(3)
|
|
||||||
x.push_front("A")
|
|
||||||
|
|
||||||
assert_equal("A", x.front());
|
|
||||||
assert_equal(3, x.back());
|
|
||||||
@ -1,2 +0,0 @@
|
|||||||
load_module("test_module")
|
|
||||||
assert_equal("Hello World", hello_world());
|
|
||||||
@ -1,9 +0,0 @@
|
|||||||
var total = 0
|
|
||||||
|
|
||||||
for (var i = 0; i < 10; ++i) {
|
|
||||||
for (var j = 0; j < 10; ++j) {
|
|
||||||
total += 1
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
assert_equal(100, total);
|
|
||||||
@ -1,8 +0,0 @@
|
|||||||
|
|
||||||
try {
|
|
||||||
eval("[\"hello\":5,\"j\",\"k\"]");
|
|
||||||
assert_true(false);
|
|
||||||
} catch (eval_error ee) {
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
@ -1 +0,0 @@
|
|||||||
assert_equal([true, false, true], map([1,2,3], odd))
|
|
||||||
@ -1,2 +0,0 @@
|
|||||||
var x = ["bob":2, "fred":3]
|
|
||||||
assert_equal(3, x["fred"])
|
|
||||||
@ -1,3 +0,0 @@
|
|||||||
var x = ["bob":1, "fred":2]
|
|
||||||
|
|
||||||
assert_equal(2, x.size());
|
|
||||||
@ -1 +0,0 @@
|
|||||||
assert_equal(3, (1 + 2))
|
|
||||||
@ -1 +0,0 @@
|
|||||||
assert_equal(3.5, 1.5 + 2)
|
|
||||||
@ -1,3 +0,0 @@
|
|||||||
var i = 3
|
|
||||||
assert_equal(2, --i)
|
|
||||||
assert_equal(2, i)
|
|
||||||
@ -1 +0,0 @@
|
|||||||
assert_equal(2, 10/5)
|
|
||||||
@ -1,3 +0,0 @@
|
|||||||
var i = 3
|
|
||||||
assert_equal(4, ++i)
|
|
||||||
assert_equal(4, i)
|
|
||||||
@ -1 +0,0 @@
|
|||||||
assert_equal(2, 11 % 3)
|
|
||||||
@ -1 +0,0 @@
|
|||||||
assert_equal(12, 3 * 4)
|
|
||||||
@ -1 +0,0 @@
|
|||||||
assert_equal(-7, -(3 + 4))
|
|
||||||
@ -1 +0,0 @@
|
|||||||
assert_equal(27, 3*(4+5))
|
|
||||||
@ -1 +0,0 @@
|
|||||||
assert_equal(2, 5 - 3)
|
|
||||||
@ -1 +0,0 @@
|
|||||||
assert_equal(5, max(3, 5))
|
|
||||||
@ -1,12 +0,0 @@
|
|||||||
attr Vector3::x
|
|
||||||
attr Vector3::y
|
|
||||||
attr Vector3::z
|
|
||||||
|
|
||||||
def Vector3::Vector3(x, y, z) {
|
|
||||||
this.x = x
|
|
||||||
this.y = y
|
|
||||||
this.z = z
|
|
||||||
}
|
|
||||||
|
|
||||||
var v = Vector3(1,2,3);
|
|
||||||
assert_equal(1, v.x);
|
|
||||||
@ -1 +0,0 @@
|
|||||||
assert_equal(6, [1, 2, 3].sum())
|
|
||||||
@ -1 +0,0 @@
|
|||||||
assert_equal(3, min(3, 5))
|
|
||||||
@ -1,20 +0,0 @@
|
|||||||
def bob(x, y, z) {
|
|
||||||
x + y + z
|
|
||||||
}
|
|
||||||
|
|
||||||
def bob(x, y) {
|
|
||||||
x - y
|
|
||||||
}
|
|
||||||
|
|
||||||
def bob(x) {
|
|
||||||
-x
|
|
||||||
}
|
|
||||||
|
|
||||||
def bob() {
|
|
||||||
10
|
|
||||||
}
|
|
||||||
|
|
||||||
assert_equal(10, bob())
|
|
||||||
assert_equal(-5, bob(5))
|
|
||||||
assert_equal(-1, bob(5,6))
|
|
||||||
assert_equal(18, bob(5,6,7))
|
|
||||||
@ -1,9 +0,0 @@
|
|||||||
def bob(x, y) : x > 10 { x - y }
|
|
||||||
|
|
||||||
def bob(x, y) : x > 5 { x - y + 10 }
|
|
||||||
|
|
||||||
def bob(x, y) { x + y }
|
|
||||||
|
|
||||||
assert_equal(7, bob(3,4))
|
|
||||||
assert_equal(9, bob(6,7))
|
|
||||||
assert_equal(-1, bob(11,12))
|
|
||||||
@ -1,9 +0,0 @@
|
|||||||
var x = [1, 2,
|
|
||||||
3, 4]
|
|
||||||
|
|
||||||
assert_equal(1, x[0])
|
|
||||||
|
|
||||||
var y = map(x,
|
|
||||||
fun(x) { x + 1 })
|
|
||||||
|
|
||||||
assert_equal(2, y[0])
|
|
||||||
@ -1,3 +0,0 @@
|
|||||||
assert_equal(10, 012)
|
|
||||||
assert_equal(31, 0x1f)
|
|
||||||
assert_equal(3, 0b11)
|
|
||||||
@ -1,6 +0,0 @@
|
|||||||
attr bob::z
|
|
||||||
def bob::bob() { this.z = 10 }
|
|
||||||
var x = bob()
|
|
||||||
def bob::fred(x) { this.z - x }
|
|
||||||
|
|
||||||
assert_equal(7, x.fred(3))
|
|
||||||
@ -1,9 +0,0 @@
|
|||||||
attr bob::z
|
|
||||||
def bob::bob() { this.z = 10 }
|
|
||||||
|
|
||||||
attr bob2::z
|
|
||||||
def bob2::bob2() { this.z = 12 }
|
|
||||||
|
|
||||||
var b = bob();
|
|
||||||
var b2 = bob2();
|
|
||||||
|
|
||||||
@ -1,11 +0,0 @@
|
|||||||
attr bob::z
|
|
||||||
def bob::bob() { }
|
|
||||||
|
|
||||||
var x = bob();
|
|
||||||
x.z = 10;
|
|
||||||
|
|
||||||
var y = clone(x);
|
|
||||||
y.z = 20;
|
|
||||||
|
|
||||||
assert_equal(10, x.z)
|
|
||||||
assert_equal(20, y.z)
|
|
||||||
@ -1,10 +0,0 @@
|
|||||||
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 )
|
|
||||||
@ -1,7 +0,0 @@
|
|||||||
def bob::bob() { }
|
|
||||||
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)
|
|
||||||
b.fred(12)
|
|
||||||
@ -1 +0,0 @@
|
|||||||
assert_equal(false, odd(4))
|
|
||||||
@ -1,9 +0,0 @@
|
|||||||
def Bob::`+`(y) { this.x + y.x }
|
|
||||||
def Bob::Bob() { }
|
|
||||||
attr Bob::x
|
|
||||||
var b = Bob()
|
|
||||||
var c = Bob()
|
|
||||||
b.x = 4
|
|
||||||
c.x = 5
|
|
||||||
|
|
||||||
assert_equal(9, b+c)
|
|
||||||
@ -1,9 +0,0 @@
|
|||||||
def Bob::Bob() { }
|
|
||||||
attr Bob::x
|
|
||||||
def `-`(a, b) : is_type(a, "Bob") && is_type(b, "Bob") { a.x - b.x }
|
|
||||||
var b = Bob()
|
|
||||||
var c = Bob()
|
|
||||||
b.x = 4
|
|
||||||
c.x = 5
|
|
||||||
|
|
||||||
assert_equal(-1, b-c)
|
|
||||||
@ -1,16 +0,0 @@
|
|||||||
var i = 1.0;
|
|
||||||
var j = 2.0;
|
|
||||||
var k = 3.0;
|
|
||||||
|
|
||||||
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)
|
|
||||||
|
|
||||||
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("Error: \"Error with numeric operator calling: %\"", fun[k]() { k % 2 } );
|
|
||||||
@ -1,31 +0,0 @@
|
|||||||
var i = 1;
|
|
||||||
var j = 2;
|
|
||||||
var k = 3;
|
|
||||||
|
|
||||||
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);
|
|
||||||
|
|
||||||
@ -1,5 +0,0 @@
|
|||||||
var p = Pair("Hello", "World")
|
|
||||||
|
|
||||||
assert_equal(p.first, "Hello")
|
|
||||||
assert_equal(p.second, "World")
|
|
||||||
|
|
||||||
@ -1,8 +0,0 @@
|
|||||||
load_module("test_module")
|
|
||||||
|
|
||||||
var i = 1;
|
|
||||||
var t0 = TestBaseType(i);
|
|
||||||
|
|
||||||
var t1 = TestBaseType(get_new_int())
|
|
||||||
|
|
||||||
|
|
||||||
@ -1 +0,0 @@
|
|||||||
assert_equal(14, 2 + 3 * 4)
|
|
||||||
@ -1 +0,0 @@
|
|||||||
assert_equal(-2, 5 - 4 - 3)
|
|
||||||
@ -1 +0,0 @@
|
|||||||
assert_equal(0, 10 / 5 % 2)
|
|
||||||
@ -1,3 +0,0 @@
|
|||||||
var x = var y = 4
|
|
||||||
assert_equal(4, x);
|
|
||||||
assert_equal(4, y);
|
|
||||||
@ -1 +0,0 @@
|
|||||||
assert_equal(24, product([1, 2, 3, 4]))
|
|
||||||
@ -1,4 +0,0 @@
|
|||||||
var x = [1, 2, 3, 4]
|
|
||||||
var r = range(x)
|
|
||||||
r.pop_front()
|
|
||||||
assert_equal(2, r.front());
|
|
||||||
@ -1,4 +0,0 @@
|
|||||||
var x = [1, 2, 3, 4]
|
|
||||||
var r = range(x)
|
|
||||||
r.pop_back()
|
|
||||||
assert_equal(3, r.back())
|
|
||||||
@ -1,5 +0,0 @@
|
|||||||
var v = [1,2,"hi", "world", 5.5]
|
|
||||||
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, `==`))
|
|
||||||
@ -1,6 +0,0 @@
|
|||||||
var v = [2, 1, "Hi", 5.5]
|
|
||||||
var r = v.find("Hi");
|
|
||||||
|
|
||||||
assert_equal("Hi", r.front())
|
|
||||||
var r2 = v.find(2, `<`);
|
|
||||||
assert_equal(1, r2.front());
|
|
||||||
Some files were not shown because too many files have changed in this diff Show More
Loading…
x
Reference in New Issue
Block a user