summaryrefslogtreecommitdiff
path: root/testdata/modulecache-tests
diff options
context:
space:
mode:
Diffstat (limited to 'testdata/modulecache-tests')
-rw-r--r--testdata/modulecache-tests/README.txt40
-rwxr-xr-xtestdata/modulecache-tests/cascade.sh12
-rwxr-xr-xtestdata/modulecache-tests/cascade2.sh12
3 files changed, 52 insertions, 12 deletions
diff --git a/testdata/modulecache-tests/README.txt b/testdata/modulecache-tests/README.txt
index ce341ca..214acc5 100644
--- a/testdata/modulecache-tests/README.txt
+++ b/testdata/modulecache-tests/README.txt
@@ -26,13 +26,6 @@ o Open use-mcad.scad
o Compile (F5)
o Check that you get a rounded box
-Test4: USE Non-existing file
-------
-
-o Open usenonexsistingfile.scad
-o Compile (F5)
-o Verify that you get: WARNING: Can't open 'use' file 'nofile.scad'.
-
Test5: Overload USEd module
------
@@ -84,10 +77,13 @@ Test11: Missing include file appears
o rm missing.scad
o Open includemissing.scad
o Compile (F5)
-o Verify that you get: WARNING: Can't open 'use' file 'missing.scad'.
+o Verify that you get: WARNING: Can't open include file 'missing.scad'.
o echo "module missing() { sphere(10); }" > missing.scad
+o Reload and Compile (F4) - verify that the sphere appeared
o rm missing.scad
-o Reload and Compile (F4) - verify that the sphere is gone
+o Reload and Compile (F4) - verify that the sphere is still there
+o echo "module missing() { sphere(20); }" > missing.scad
+o Reload and Compile (F4) - verify that the sphere increased in size
Test12: Missing include file in subpath appears
------
@@ -96,15 +92,35 @@ o Open includemissingsub.scad
o Compile (F5)
o Verify that you get: WARNING: Can't open include file 'subdir/missingsub.scad'.
o echo "module missingsub() { sphere(10); }" > subdir/missingsub.scad
+o Reload and Compile (F4) - verify that the sphere appeared
o rm subdir/missingsub.scad
-o Reload and Compile (F4) - verify that the sphere is gone
+o Reload and Compile (F4) - verify that the sphere is still there
+o echo "module missingsub() { sphere(20); }" > subdir/missingsub.scad
+o Reload and Compile (F4) - verify that the sphere increased in size
Test13: Missing library file appears
-------
o rm missing.scad
o Open usemissing.scad
o Compile (F5)
-o Verify that you get: WARNING: Can't open 'use' file 'missing.scad'.
+o Verify that you get: WARNING: Can't open library file 'missing.scad'.
o echo "module missing() { sphere(10); }" > missing.scad
+o Reload and Compile (F4) - verify that the sphere appeared
o rm missing.scad
-o Compile (F5) - verify that the sphere is gone
+o Reload and Compile (F4) - verify that the sphere is still there
+o echo "module missing() { sphere(20); }" > missing.scad
+o Reload and Compile (F4) - verify that the sphere increased in size
+
+Test14: Automatic reload of cascading changes
+-------
+
+o ./cascade.sh
+o Open cascadetest.scad
+o Turn on Automatic Reload and Compile
+o Verify that the 4 objects render correctly
+o rm cascadetest.scad
+o Verify that no rerendering was triggered (the 4 objects are still there)
+o rm cascade*.scad
+o Verify that no rerendering was triggered (the 4 objects are still there)
+o ./cascade2.sh
+o Verify that everything reloads at once without flickering
diff --git a/testdata/modulecache-tests/cascade.sh b/testdata/modulecache-tests/cascade.sh
new file mode 100755
index 0000000..5dd0ef7
--- /dev/null
+++ b/testdata/modulecache-tests/cascade.sh
@@ -0,0 +1,12 @@
+#!/bin/bash
+
+rm cascade*.scad
+echo "include <cascade-A.scad> include <cascade-B.scad> use <cascade-C.scad> use <cascade-D.scad> A(); translate([11,0,0]) B(); translate([22,0,0]) C(); translate([33,0,0]) D();" > cascadetest.scad
+sleep 0.05
+echo "module A() { sphere(5); }" > cascade-A.scad
+sleep 0.05
+echo "module B() { cube([8,8,8], center=true); }" > cascade-B.scad
+sleep 0.05
+echo "module C() { cylinder(h=8, r=5, center=true); }" > cascade-C.scad
+sleep 0.05
+echo "module D() { cylinder(h=10, r1=5, r2=0, center=true); }" > cascade-D.scad
diff --git a/testdata/modulecache-tests/cascade2.sh b/testdata/modulecache-tests/cascade2.sh
new file mode 100755
index 0000000..50f98e0
--- /dev/null
+++ b/testdata/modulecache-tests/cascade2.sh
@@ -0,0 +1,12 @@
+#!/bin/bash
+
+rm cascade-*.scad
+echo "include <cascade-A.scad> include <cascade-B.scad> use <cascade-C.scad> use <cascade-D.scad> A(); translate([11,0,0]) B(); translate([22,0,0]) C(); translate([33,0,0]) D();" > cascadetest.scad
+sleep 0.1
+echo "module A() { sphere(6); }" > cascade-A.scad
+sleep 0.1
+echo "module B() { cube([10,10,10], center=true); }" > cascade-B.scad
+sleep 0.1
+echo "module C() { cylinder(h=10, r=6, center=true); }" > cascade-C.scad
+sleep 0.1
+echo "module D() { cylinder(h=12, r1=6, r2=0, center=true); }" > cascade-D.scad
contact: Jan Huwald // Impressum