aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authors-ol <s+removethis@s-ol.nu>2026-04-10 22:58:19 +0000
committers-ol <s+removethis@s-ol.nu>2026-04-11 21:55:39 +0000
commit2d35a370349ee43e7a886058c484e0359dee7c27 (patch)
treef8e390d01f3ff5c8c32ef1e72059f2eaf0dca8ed
parentlib/glsl-view: support array uniforms (diff)
downloadalive-2d35a370349ee43e7a886058c484e0359dee7c27.tar.gz
alive-2d35a370349ee43e7a886058c484e0359dee7c27.zip
spec: test Array equality
-rw-r--r--spec/internal/result/const_spec.moon16
-rw-r--r--spec/internal/result/sig_spec.moon9
2 files changed, 23 insertions, 2 deletions
diff --git a/spec/internal/result/const_spec.moon b/spec/internal/result/const_spec.moon
index 3f31306..325c92b 100644
--- a/spec/internal/result/const_spec.moon
+++ b/spec/internal/result/const_spec.moon
@@ -1,5 +1,5 @@
import do_setup from require 'spec.test_setup'
-import Constant, RTNode, Scope, SimpleRegistry, T from require 'alv'
+import Constant, RTNode, Scope, SimpleRegistry, T, Array from require 'alv'
import Op, Builtin from require 'alv.base'
class TestOp extends Op
@@ -104,6 +104,20 @@ describe 'Constant', ->
assert.is.equal (Constant.num 3), val
assert.not.equal (Constant.num 4), val
+ it 'compares complex values', ->
+ ta = Array 3, T.num
+ tb = Array 3, T.num
+
+ a = Constant ta, { 1, 2, 3 }
+ b = Constant ta, { 1, 2, 3 }
+ c = Constant tb, { 1, 2, 3 }
+ d = Constant ta, { 1, 2, 4 }
+
+ assert.is.equal a, a
+ assert.is.equal b, a
+ assert.is.equal c, a
+ assert.not.equal d, a
+
it ':dirty is always false', ->
val = Constant.num 3
assert.is.false val\dirty!
diff --git a/spec/internal/result/sig_spec.moon b/spec/internal/result/sig_spec.moon
index 65363bc..2d3304c 100644
--- a/spec/internal/result/sig_spec.moon
+++ b/spec/internal/result/sig_spec.moon
@@ -1,5 +1,5 @@
import do_setup from require 'spec.test_setup'
-import SigStream, Constant, RTNode, Scope, SimpleRegistry, T from require 'alv'
+import SigStream, Constant, T, Array from require 'alv'
import Op, Builtin from require 'alv.base'
setup do_setup
@@ -59,6 +59,13 @@ describe 'SigStream', ->
assert.is.equal (Constant.str 'hello'), val
assert.not.equal (Constant.sym 'hello'), val
+ it 'compares complex values', ->
+ ta = Array 3, T.num
+ tb = Array 3, T.num
+
+ assert.is.equal (Constant ta, {1, 2, 3}), (SigStream tb, {1, 2, 3})
+ assert.not.equal (Constant ta, {1, 2, 3}), (SigStream tb, {1, 2, 4})
+
describe ':set', ->
it 'sets the value', ->
val = SigStream T.num, 3