Add Licensing and Contributing
[clnl] / src / test / clnl / modeltests.lisp
1 ; Copyright 2022 Frank Duncan (frank@consxy.com) under AGPL3.  See distributed LICENSE.txt.
2 (in-package #:clnl-test)
3
4 (defmodelcommandtest "globals 1"
5  "globals [a]"
6  "set a 5 crt a"
7  "4D66EDE80A8F4CA820D80853E763446502EA4E4E")
8
9 (defmodelreportertest "globals 2"
10  "globals [a]"
11  "set a 5"
12  "a"
13  "5"
14  "F8507A0D88D681CCBF01898FEA263791F9DDCE63")
15
16 (defmodelcommandtest "to 1"
17  "globals [a]
18 to setup
19   set a 2
20 end
21
22 to go
23   crt a
24 end"
25  "setup go go"
26  "1A20E368DD101521791FB5D7C8461C1ED12EAE7A")
27
28 (defmodelcommandtest "to 2"
29  "globals [a]
30 to setup
31   set a 2
32 end
33
34 to go
35   setup
36   crt a
37 end"
38  "go"
39  "46C620AB8995266C4A2094C461BE197BBACEB8C3")
40
41 (defmodelcommandtest "turtles-own 1"
42  "turtles-own [a b]
43 to setup
44   crt 10 [
45     set a 2
46   ]
47 end"
48  "setup"
49  "482947557971AC2A66CB35AA5D6850A489C45215")
50
51 (defmodelcommandtest "turtles-own 2"
52  "turtles-own [a b]
53 to setup
54   crt 10 [
55     set a 2
56     set b a + 1
57   ]
58 end
59
60 to go
61   ask turtles [ fd b ]
62 end"
63  "setup go"
64  "F8A2BFD71A8A064C37DDB744217AB07CDB0686EB")
65
66 (defmodelcommandtest "patches-own 1"
67  "patches-own [a]
68 to setup
69   ask patches [
70     set a 2
71   ]
72 end"
73  "setup"
74  "73FE87B52A2DAB0EC02DB23F26DB3B5336A61679")
75
76 (defmodelcommandtest "patches-own 2"
77  "patches-own [a b]
78 to setup
79   ask patches [
80     set a 2
81     set b a + 1
82   ]
83 end
84
85 to go
86   ask patches [ set pcolor b ]
87 end"
88  "setup go"
89  "2972B3EC1285BDA17656401001E1AE667FA7F5AF")
90
91 (defmodelcommandtest "breeds 1"
92  "breed [wolves wolf]
93
94 to setup
95   create-turtles 50
96   create-turtles 50 [ fd 1 ]
97   create-wolves 50
98   set-default-shape wolves \"sheep\"
99   create-wolves 50 [ fd 1 ]
100 end
101
102 to go
103   ask turtles [ fd 1 ]
104   ask wolves [ fd 1 ]
105   ask turtles [ if 1 < count turtles-here [ fd 1 ] ]
106   ask wolves [ if 1 < count turtles-here [ fd 1 ] ]
107   ask turtles [ if 1 < count wolves-here [ fd 1 ] ]
108   ask wolves [ if 1 < count wolves-here [ fd 1 ] ]
109 end"
110  "setup go"
111  "2614B99F64ACFA2BD64D66B129C0A17F2150FADD")
112
113 (defmodelcommandtest "procedures stop"
114  "to setup
115   create-turtles 5
116   stop
117   create-turtles 5
118 end
119
120 to go
121   if 5 < count turtles [ stop ]
122   crt 1
123 end"
124  "setup go go"
125  "438848EF35C6B0D28D50961072C70FCC02BB4FD8")
126
127 (defmodelfiletest "UI 0" "resources/clnl/UI-test.nlogo"
128  "go"
129  "05D33A55C91B4A90B22F28A814C9EDB0F420FC09")
130
131 (defmodelfiletest "UI 1" "resources/clnl/UI-test.nlogo"
132  (":button \"setup\"" "crt 10 [ if new-turtles-green [ set color green ] ]")
133  "B64C556E61397493D4A17B79665E446C42E3EE3D")
134
135 (defmodelfiletest "UI 2" "resources/clnl/UI-test.nlogo"
136  (":button \"setup\" :button \"go\"" "crt 10 [ if new-turtles-green [ set color green ] ] go")
137  "3D086EFD6B3C1D1DF1155D35915D08B3BA72BA4F")
138
139 (defmodelfiletest "UI 3" "resources/clnl/UI-test.nlogo"
140  (":button \"setup\" :button \"go\" 1"
141   "crt 10 [ if new-turtles-green [ set color green ] ] go ask turtles [ rt 90 ] go")
142  "84C76F4C140672F6FBF28AFC16C45B010F7E1740")
143
144 (defmodelfiletest "UI 4" "resources/clnl/UI-test.nlogo"
145  (":button \"stopping\"" "repeat 80 [ create-and-move ]")
146  "7D11BDB52364BEF162C3D3E461AD8BFB8E3B438E"
147  t)
148
149 (defmodelfiletest "Wolf Sheep 1" "resources/clnl/models/Wolf Sheep Predation.nlogo"
150  "setup go go go go go go go go go go go go go go"
151  "9777CCF18935E52D8380C9C6DC02BFFBEE1F1149")
152
153 (defmodelfiletest "Wolf Sheep 2" "resources/clnl/models/Wolf Sheep Predation.nlogo"
154  "set grass? not grass? setup go go go go go go go go go go go go go go"
155  "FC38F01DC0058C5EFF93F2228535ED7C616ECFF0")