about summary refs log tree commit diff stats
path: root/js/scripting-lang/tests/integration_01_basic_features.txt
diff options
context:
space:
mode:
Diffstat (limited to 'js/scripting-lang/tests/integration_01_basic_features.txt')
-rw-r--r--js/scripting-lang/tests/integration_01_basic_features.txt37
1 files changed, 37 insertions, 0 deletions
diff --git a/js/scripting-lang/tests/integration_01_basic_features.txt b/js/scripting-lang/tests/integration_01_basic_features.txt
new file mode 100644
index 0000000..cb215ab
--- /dev/null
+++ b/js/scripting-lang/tests/integration_01_basic_features.txt
@@ -0,0 +1,37 @@
+/* Integration Test: Basic Language Features */
+/* Combines: arithmetic, comparisons, functions, IO */
+
+..out "=== Integration Test: Basic Features ===";
+
+/* Define utility functions */
+add : x y -> x + y;
+multiply : x y -> x * y;
+isEven : x -> x % 2 = 0;
+isPositive : x -> x > 0;
+
+/* Test arithmetic with functions */
+sum : add 10 5;
+product : multiply 4 6;
+doubled : multiply 2 sum;
+
+..assert sum = 15;
+..assert product = 24;
+..assert doubled = 30;
+
+/* Test comparisons with functions */
+even_test : isEven 8;
+odd_test : isEven 7;
+positive_test : isPositive 5;
+negative_test : isPositive -3;
+
+..assert even_test = true;
+..assert odd_test = false;
+..assert positive_test = true;
+..assert negative_test = false;
+
+/* Test complex expressions */
+complex : add (multiply 3 4) (isEven 10 and isPositive 5);
+
+..assert complex = 13;
+
+..out "Basic features integration test completed"; 
\ No newline at end of file