]> gitweb.factorcode.org Git - factor.git/blob - basis/models/product/product-tests.factor
core, basis, extra: Remove DOS line endings from files.
[factor.git] / basis / models / product / product-tests.factor
1 USING: arrays generic kernel math models namespaces sequences assocs
2 tools.test models.product accessors locals ;
3 IN: models.product.tests
4
5 [ ] [
6     1 <model> "a" set
7     2 <model> "b" set
8     "a" get "b" get 2array <product> "c" set
9 ] unit-test
10
11 [ ] [ "c" get activate-model ] unit-test
12
13 [ { 1 2 } ] [ "c" get value>> ] unit-test
14
15 [ ] [ 3 "b" get set-model ] unit-test
16
17 [ { 1 3 } ] [ "c" get value>> ] unit-test
18
19 [ ] [ { 4 5 } "c" get set-model ] unit-test
20
21 [ { 4 5 } ] [ "c" get value>> ] unit-test
22
23 [ ] [ "c" get deactivate-model ] unit-test
24
25 TUPLE: an-observer { i integer } ;
26
27 M: an-observer model-changed nip [ 1 + ] change-i drop ;
28
29 [ 1 0 ] [
30     [let
31         1 <model> :> m1
32         2 <model> :> m2
33         { m1 m2 } <product> :> c
34         an-observer new :> o1
35         an-observer new :> o2
36         
37         o1 m1 add-connection
38         o2 m2 add-connection
39
40         c activate-model
41     
42         "OH HAI" m1 set-model
43         o1 i>>
44         o2 i>>
45     ]
46 ] unit-test