add children tests

brodykenrick-master
Vicnet 2013-10-08 15:35:47 +02:00
parent a9175af124
commit 4401a136b9
3 changed files with 101 additions and 1 deletions

64
testdata/scad/misc/children-tests.scad vendored Normal file
View File

@ -0,0 +1,64 @@
module child1() {
echo("child1");
}
module child2() {
echo("child2");
}
module child3() {
echo("child3");
}
module child4() {
echo("child4");
}
module child5() {
echo("child5");
}
module test_children_empty() {
echo("Children empty: begin");
children();
echo("Children empty: end");
}
test_children_empty() {
child1();child2();child3();child4();child5();
}
module test_children_scalar() {
echo("Children scalar: begin");
children(0); // child1
children(4); // child5
children(2); // child3
children(5); // out
children(-1); // out
echo("Children scalar: end");
}
test_children_scalar() {
child1();child2();child3();child4();child5();
}
module test_children_vector() {
echo("Children vector: begin");
children([4]); // child5 last
children([0,3,1]); // child1, child4, child2
children([5,-1]); // out, out
echo("Children vector: end");
}
test_children_vector() {
child1();child2();child3();child4();child5();
}
module test_children_range() {
echo("Children range: begin");
children([0:4]); // all
children([1:2]); // child2, child3
children([0:2:4]); // child1, child3, child5
children([4:-1:0]); // out, out
echo("Children range: end");
}
test_children_range() {
child1();child2();child3();child4();child5();
}
// to avoid no object error
cube(1.0);

View File

@ -772,7 +772,8 @@ list(APPEND ECHO_FILES ${FUNCTION_FILES}
${CMAKE_SOURCE_DIR}/../testdata/scad/misc/value-reassignment-tests2.scad
${CMAKE_SOURCE_DIR}/../testdata/scad/misc/variable-scope-tests.scad
${CMAKE_SOURCE_DIR}/../testdata/scad/misc/lookup-tests.scad
${CMAKE_SOURCE_DIR}/../testdata/scad/misc/expression-shortcircuit-tests.scad)
${CMAKE_SOURCE_DIR}/../testdata/scad/misc/expression-shortcircuit-tests.scad
${CMAKE_SOURCE_DIR}/../testdata/scad/misc/children-tests.scad)
list(APPEND DUMPTEST_FILES ${FEATURES_FILES} ${EXAMPLE_FILES})
list(APPEND DUMPTEST_FILES ${CMAKE_SOURCE_DIR}/../testdata/scad/misc/escape-test.scad

View File

@ -0,0 +1,35 @@
ECHO: "Children empty: begin"
ECHO: "child1"
ECHO: "child2"
ECHO: "child3"
ECHO: "child4"
ECHO: "child5"
ECHO: "Children empty: end"
ECHO: "Children scalar: begin"
ECHO: "child1"
ECHO: "child5"
ECHO: "child3"
WARNING: Children index (5) out of bounds (5 children)
WARNING: Negative children index (-1) not allowed
ECHO: "Children scalar: end"
ECHO: "Children vector: begin"
ECHO: "child5"
ECHO: "child1"
ECHO: "child4"
ECHO: "child2"
WARNING: Children index (5) out of bounds (5 children)
WARNING: Negative children index (-1) not allowed
ECHO: "Children vector: end"
ECHO: "Children range: begin"
ECHO: "child1"
ECHO: "child2"
ECHO: "child3"
ECHO: "child4"
ECHO: "child5"
ECHO: "child2"
ECHO: "child3"
ECHO: "child1"
ECHO: "child3"
ECHO: "child5"
WARNING: Bad range parameter for children: too many elements (-4).
ECHO: "Children range: end"