@@ -4,6 +4,55 @@ import (
44 "testing"
55)
66
7+ // 0.18 Binary seems equal to 0.17 binary, just the default values changed
8+ func Test0_18 (t * testing.T ) {
9+ file , err := OpenArchiveFile ("factorio_save_testfiles/test_0_18.zip" , "level.dat" )
10+ if err != nil {
11+ t .Fatalf ("Error opening level.dat: %s" , err )
12+ }
13+ defer file .Close ()
14+
15+ var header SaveHeader
16+ err = header .ReadFrom (file )
17+ if err != nil {
18+ t .Fatalf ("Error reading header: %s" , err )
19+ }
20+
21+ testHeader := SaveHeader {
22+ FactorioVersion : Version {0 , 18 , 2 , 2 },
23+ Campaign : "transport-belt-madness" ,
24+ Name : "level-01" ,
25+ BaseMod : "base" ,
26+ Difficulty : 1 ,
27+ Finished : false ,
28+ PlayerWon : false ,
29+ NextLevel : "" ,
30+ CanContinue : false ,
31+ FinishedButContinuing : false ,
32+ SavingReplay : false ,
33+ AllowNonAdminDebugOptions : true ,
34+ LoadedFrom : Version {0 , 18 , 2 },
35+ LoadedFromBuild : 49204 ,
36+ AllowedCommands : 1 ,
37+ Mods : []Mod {
38+ {
39+ Version : Version {0 , 18 , 2 },
40+ Name : "base" ,
41+ },
42+ {
43+ Version : Version {2 , 0 , 0 },
44+ Name : "belt-balancer" ,
45+ },
46+ {
47+ Version : Version {2 , 0 , 1 },
48+ Name : "train-station-overview" ,
49+ },
50+ },
51+ }
52+
53+ header .Equals (testHeader , t )
54+ }
55+
756func Test0_17 (t * testing.T ) {
857 file , err := OpenArchiveFile ("factorio_save_testfiles/test_0_17.zip" , "level.dat" )
958 if err != nil {
@@ -18,29 +67,29 @@ func Test0_17(t *testing.T) {
1867 }
1968
2069 testHeader := SaveHeader {
21- FactorioVersion : Version {0 ,17 ,1 , 1 },
22- Campaign : "transport-belt-madness" ,
23- Name : "level-01" ,
24- BaseMod : "base" ,
25- Difficulty : 0 ,
26- Finished : false ,
27- PlayerWon : false ,
28- NextLevel : "" ,
29- CanContinue : false ,
30- FinishedButContinuing : false ,
31- SavingReplay : true ,
70+ FactorioVersion : Version {0 , 17 , 1 , 1 },
71+ Campaign : "transport-belt-madness" ,
72+ Name : "level-01" ,
73+ BaseMod : "base" ,
74+ Difficulty : 0 ,
75+ Finished : false ,
76+ PlayerWon : false ,
77+ NextLevel : "" ,
78+ CanContinue : false ,
79+ FinishedButContinuing : false ,
80+ SavingReplay : true ,
3281 AllowNonAdminDebugOptions : true ,
33- LoadedFrom : Version {0 ,17 ,1 },
34- LoadedFromBuild : 43001 ,
35- AllowedCommands : 1 ,
36- Mods : []Mod {
82+ LoadedFrom : Version {0 , 17 , 1 },
83+ LoadedFromBuild : 43001 ,
84+ AllowedCommands : 1 ,
85+ Mods : []Mod {
3786 {
38- Version : Version {0 ,2 , 0 },
39- Name : "Warehousing" ,
87+ Version : Version {0 , 2 , 0 },
88+ Name : "Warehousing" ,
4089 },
4190 {
42- Version : Version {0 ,17 ,1 },
43- Name : "base" ,
91+ Version : Version {0 , 17 , 1 },
92+ Name : "base" ,
4493 },
4594 },
4695 }
@@ -62,29 +111,29 @@ func Test0_16(t *testing.T) {
62111 }
63112
64113 testHeader := SaveHeader {
65- FactorioVersion : Version {0 ,16 ,51 ,0 },
66- Campaign : "transport-belt-madness" ,
67- Name : "level-01" ,
68- BaseMod : "base" ,
69- Difficulty : 0 ,
70- Finished : false ,
71- PlayerWon : false ,
72- NextLevel : "" ,
73- CanContinue : false ,
74- FinishedButContinuing : false ,
75- SavingReplay : true ,
114+ FactorioVersion : Version {0 , 16 , 51 , 0 },
115+ Campaign : "transport-belt-madness" ,
116+ Name : "level-01" ,
117+ BaseMod : "base" ,
118+ Difficulty : 0 ,
119+ Finished : false ,
120+ PlayerWon : false ,
121+ NextLevel : "" ,
122+ CanContinue : false ,
123+ FinishedButContinuing : false ,
124+ SavingReplay : true ,
76125 AllowNonAdminDebugOptions : true ,
77- LoadedFrom : Version {0 ,16 ,51 },
78- LoadedFromBuild : 36654 ,
79- AllowedCommands : 1 ,
80- Mods : []Mod {
126+ LoadedFrom : Version {0 , 16 , 51 },
127+ LoadedFromBuild : 36654 ,
128+ AllowedCommands : 1 ,
129+ Mods : []Mod {
81130 {
82- Version : Version {0 ,1 , 3 },
83- Name : "Warehousing" ,
131+ Version : Version {0 , 1 , 3 },
132+ Name : "Warehousing" ,
84133 },
85134 {
86- Version : Version {0 ,16 ,51 },
87- Name : "base" ,
135+ Version : Version {0 , 16 , 51 },
136+ Name : "base" ,
88137 },
89138 },
90139 }
@@ -106,28 +155,28 @@ func Test0_15(t *testing.T) {
106155 }
107156
108157 testHeader := SaveHeader {
109- FactorioVersion : Version {0 ,15 ,40 ,0 },
110- Campaign : "transport-belt-madness" ,
111- Name : "level-01" ,
112- BaseMod : "base" ,
113- Difficulty : 0 ,
114- Finished : false ,
115- PlayerWon : false ,
116- NextLevel : "" ,
117- CanContinue : false ,
158+ FactorioVersion : Version {0 , 15 , 40 , 0 },
159+ Campaign : "transport-belt-madness" ,
160+ Name : "level-01" ,
161+ BaseMod : "base" ,
162+ Difficulty : 0 ,
163+ Finished : false ,
164+ PlayerWon : false ,
165+ NextLevel : "" ,
166+ CanContinue : false ,
118167 FinishedButContinuing : false ,
119- SavingReplay : true ,
120- LoadedFrom : Version {0 ,15 ,40 },
121- LoadedFromBuild : 30950 ,
122- AllowedCommands : 1 ,
123- Mods : []Mod {
168+ SavingReplay : true ,
169+ LoadedFrom : Version {0 , 15 , 40 },
170+ LoadedFromBuild : 30950 ,
171+ AllowedCommands : 1 ,
172+ Mods : []Mod {
124173 {
125- Version : Version {0 ,0 , 13 },
126- Name : "Warehousing" ,
174+ Version : Version {0 , 0 , 13 },
175+ Name : "Warehousing" ,
127176 },
128177 {
129- Version : Version {0 ,15 ,40 },
130- Name : "base" ,
178+ Version : Version {0 , 15 , 40 },
179+ Name : "base" ,
131180 },
132181 },
133182 }
@@ -149,28 +198,28 @@ func Test0_14(t *testing.T) {
149198 }
150199
151200 testHeader := SaveHeader {
152- FactorioVersion : Version {0 ,14 ,23 ,0 },
153- Campaign : "transport-belt-madness" ,
154- Name : "level-01" ,
155- BaseMod : "base" ,
156- Difficulty : 1 ,
157- Finished : false ,
158- PlayerWon : false ,
159- NextLevel : "" ,
160- CanContinue : false ,
201+ FactorioVersion : Version {0 , 14 , 23 , 0 },
202+ Campaign : "transport-belt-madness" ,
203+ Name : "level-01" ,
204+ BaseMod : "base" ,
205+ Difficulty : 1 ,
206+ Finished : false ,
207+ PlayerWon : false ,
208+ NextLevel : "" ,
209+ CanContinue : false ,
161210 FinishedButContinuing : false ,
162- SavingReplay : true ,
163- LoadedFrom : Version {0 ,14 ,23 },
164- LoadedFromBuild : 25374 ,
165- AllowedCommands : 1 ,
166- Mods : []Mod {
211+ SavingReplay : true ,
212+ LoadedFrom : Version {0 , 14 , 23 },
213+ LoadedFromBuild : 25374 ,
214+ AllowedCommands : 1 ,
215+ Mods : []Mod {
167216 {
168- Version : Version {0 ,0 , 11 },
169- Name : "Warehousing" ,
217+ Version : Version {0 , 0 , 11 },
218+ Name : "Warehousing" ,
170219 },
171220 {
172- Version : Version {0 ,14 ,23 },
173- Name : "base" ,
221+ Version : Version {0 , 14 , 23 },
222+ Name : "base" ,
174223 },
175224 },
176225 }
@@ -192,28 +241,28 @@ func Test0_13(t *testing.T) {
192241 }
193242
194243 testHeader := SaveHeader {
195- FactorioVersion : Version {0 ,13 ,20 ,0 },
196- Campaign : "transport-belt-madness" ,
197- Name : "level-01" ,
198- BaseMod : "base" ,
199- Difficulty : 1 ,
200- Finished : false ,
201- PlayerWon : false ,
202- NextLevel : "" ,
203- CanContinue : false ,
244+ FactorioVersion : Version {0 , 13 , 20 , 0 },
245+ Campaign : "transport-belt-madness" ,
246+ Name : "level-01" ,
247+ BaseMod : "base" ,
248+ Difficulty : 1 ,
249+ Finished : false ,
250+ PlayerWon : false ,
251+ NextLevel : "" ,
252+ CanContinue : false ,
204253 FinishedButContinuing : false ,
205- SavingReplay : true ,
206- LoadedFrom : Version {0 ,13 ,20 },
207- LoadedFromBuild : 24011 ,
208- AllowedCommands : 1 ,
209- Mods : []Mod {
254+ SavingReplay : true ,
255+ LoadedFrom : Version {0 , 13 , 20 },
256+ LoadedFromBuild : 24011 ,
257+ AllowedCommands : 1 ,
258+ Mods : []Mod {
210259 {
211- Version : Version {1 ,1 , 0 },
212- Name : "Extra-Virtual-Signals" ,
260+ Version : Version {1 , 1 , 0 },
261+ Name : "Extra-Virtual-Signals" ,
213262 },
214263 {
215- Version : Version {0 ,13 ,20 },
216- Name : "base" ,
264+ Version : Version {0 , 13 , 20 },
265+ Name : "base" ,
217266 },
218267 },
219268 }
@@ -234,7 +283,7 @@ func (h *SaveHeader) Equals(other SaveHeader, t *testing.T) {
234283 if h .BaseMod != other .BaseMod {
235284 t .Errorf ("BaseMod not equal: %s --- %s" , h .BaseMod , other .BaseMod )
236285 }
237- if h .Difficulty != other .Difficulty {
286+ if h .Difficulty != other .Difficulty {
238287 t .Errorf ("Difficulty not equal: %d --- %d" , h .Difficulty , other .Difficulty )
239288 }
240289 if h .Finished != other .Finished {
0 commit comments