Merge pull request #239 from ChaiScript/assign_to_result_of_map
Add test for assignment of map() return vector
This commit is contained in:
commit
52c96de6a8
@ -1,29 +1,41 @@
|
|||||||
assert_equal([true, false, true], map([1,2,3], odd))
|
// Map function
|
||||||
|
|
||||||
|
{
|
||||||
|
assert_equal([true, false, true], map([1,2,3], odd))
|
||||||
|
|
||||||
|
var v = [1, 2, 3];
|
||||||
|
var y = map(v, fun(s) { s*2; });
|
||||||
|
y[0] = 1;
|
||||||
|
assert_equal(1, y[0]);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// Map objects
|
||||||
|
|
||||||
var m = ["a":1, "b":2];
|
{
|
||||||
|
var m = ["a":1, "b":2];
|
||||||
|
|
||||||
assert_equal(1, m.count("a"))
|
assert_equal(1, m.count("a"))
|
||||||
assert_equal(0, m.count("c"))
|
assert_equal(0, m.count("c"))
|
||||||
assert_equal(1, m.erase("a"))
|
assert_equal(1, m.erase("a"))
|
||||||
assert_equal(1, m.size())
|
assert_equal(1, m.size())
|
||||||
assert_equal(0, m.erase("a"))
|
assert_equal(0, m.erase("a"))
|
||||||
|
|
||||||
assert_equal(1, m.size());
|
assert_equal(1, m.size());
|
||||||
|
|
||||||
var m2 = ["c":3, "b":4]
|
var m2 = ["c":3, "b":4]
|
||||||
m.insert(m2);
|
m.insert(m2);
|
||||||
|
|
||||||
assert_equal(3, m["c"])
|
assert_equal(3, m["c"])
|
||||||
// The inserted values do not overwrite the existing ones
|
// The inserted values do not overwrite the existing ones
|
||||||
assert_equal(2, m["b"])
|
assert_equal(2, m["b"])
|
||||||
assert_equal(2, m.size())
|
assert_equal(2, m.size())
|
||||||
|
|
||||||
var v = "bob";
|
var v = "bob";
|
||||||
|
|
||||||
m.insert_ref(Map_Pair("d", v))
|
m.insert_ref(Map_Pair("d", v))
|
||||||
|
|
||||||
assert_equal("bob", m["d"])
|
assert_equal("bob", m["d"])
|
||||||
v = "bob2"
|
v = "bob2"
|
||||||
assert_equal("bob2", m["d"])
|
assert_equal("bob2", m["d"])
|
||||||
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user