diff --git a/Teszteset1.in b/Teszteset1.in
new file mode 100644
index 0000000000000000000000000000000000000000..05ece42d0c25917bbb86298de8fae3b39e4b3cb6
--- /dev/null
+++ b/Teszteset1.in
@@ -0,0 +1,9 @@
+parsemap 4 5
+wwwww
+wmthw
+wkmsw
+wwwww
+
+setswitch f_2_3 f_2_1
+
+stat f_2_1
diff --git a/Teszteset1.out b/Teszteset1.out
new file mode 100644
index 0000000000000000000000000000000000000000..a2abca89d09d2d11bc598f7b5c5a9551ce275205
--- /dev/null
+++ b/Teszteset1.out
@@ -0,0 +1,7 @@
+neighborUp: f_1_1
+neighborRight: f_2_2
+neighborDown: f_3_1
+neighborLeft: f_2_0
+moveable: null
+fluid: no fluid
+sHole: f_2_3
\ No newline at end of file
diff --git a/Teszteset10.in b/Teszteset10.in
new file mode 100644
index 0000000000000000000000000000000000000000..05f8cf8c29d27917688593b960d22f4cb91889fe
--- /dev/null
+++ b/Teszteset10.in
@@ -0,0 +1,14 @@
+parsemap 4 6
+wwwwww
+wmmmmw
+wmmmmw
+wwwwww
+worker w1 5 f_1_2
+crate c1 f_1_3
+
+step w1 right
+
+stat f_1_3
+stat f_1_4
+
+stat w1
\ No newline at end of file
diff --git a/Teszteset10.out b/Teszteset10.out
new file mode 100644
index 0000000000000000000000000000000000000000..fb4ced04c6cfd8d416e50f4c6560855b6337ab2b
--- /dev/null
+++ b/Teszteset10.out
@@ -0,0 +1,16 @@
+neighborUp: f_0_3
+neighborRight: f_1_4
+neighborDown: f_2_3
+neighborLeft: f_1_2
+moveable: w1
+fluid: no fluid
+neighborUp: f_0_4
+neighborRight: f_1_5
+neighborDown: f_2_4
+neighborLeft: f_1_3
+moveable: c1
+fluid: no fluid
+myField: f_1_3
+points: 0
+force: 5.0
+alive: true
\ No newline at end of file
diff --git a/Teszteset11.in b/Teszteset11.in
new file mode 100644
index 0000000000000000000000000000000000000000..51aadb0c447ae8ab7d6c92c73d0b75a2ea1129bb
--- /dev/null
+++ b/Teszteset11.in
@@ -0,0 +1,14 @@
+parsemap 4 6
+wwwwww
+wmmtmw
+wmmmmw
+wwwwww
+worker w1 5 f_1_2
+crate c1 f_1_3
+
+stat c1
+
+step w1 right
+
+stat w1
+stat c1
\ No newline at end of file
diff --git a/Teszteset11.out b/Teszteset11.out
new file mode 100644
index 0000000000000000000000000000000000000000..c7b8bee92663d2dde0b5449a2638831e99458320
--- /dev/null
+++ b/Teszteset11.out
@@ -0,0 +1,10 @@
+myField: f_1_3
+couldMove: false
+isOnTarget: false
+myField: f_1_3
+points: 1
+force: 5.0
+alive: true
+myField: f_1_4
+couldMove: true
+isOnTarget: true
\ No newline at end of file
diff --git a/Teszteset12.in b/Teszteset12.in
new file mode 100644
index 0000000000000000000000000000000000000000..8bb38ef13a4492b0b88973c9a6699c43153535a7
--- /dev/null
+++ b/Teszteset12.in
@@ -0,0 +1,14 @@
+parsemap 4 6
+wwwwww
+wmmkmw
+wmmsmw
+wwwwww
+worker w1 5 f_1_2
+crate c1 f_1_3
+setswitch f_2_3 f_1_3
+
+stat f_2_3
+
+step w1 right
+
+stat f_2_3
\ No newline at end of file
diff --git a/Teszteset12.out b/Teszteset12.out
new file mode 100644
index 0000000000000000000000000000000000000000..a7c3120f4a9a1745a408e5850acd2776d9ddc5d6
--- /dev/null
+++ b/Teszteset12.out
@@ -0,0 +1,14 @@
+neighborUp: f_1_3
+neighborRight: f_2_4
+neighborDown: f_3_3
+neighborLeft: f_2_2
+moveable: null
+fluid: no fluid
+opened: false
+neighborUp: f_1_3
+neighborRight: f_2_4
+neighborDown: f_3_3
+neighborLeft: f_2_2
+moveable: null
+fluid: no fluid
+opened: true
\ No newline at end of file
diff --git a/Teszteset13.in b/Teszteset13.in
new file mode 100644
index 0000000000000000000000000000000000000000..37430e2cebf9508fa8b7aa74db8433efc7958c92
--- /dev/null
+++ b/Teszteset13.in
@@ -0,0 +1,11 @@
+parsemap 4 6
+wwwwww
+wmmhmw
+wmmmmw
+wwwwww
+worker w1 5 f_1_2
+crate c1 f_1_3
+
+step w1 right
+
+stat c1
\ No newline at end of file
diff --git a/Teszteset13.out b/Teszteset13.out
new file mode 100644
index 0000000000000000000000000000000000000000..c54b3f1eb8b57b126a94e70dbeaad504a875bcda
--- /dev/null
+++ b/Teszteset13.out
@@ -0,0 +1 @@
+This doesn't exist!
\ No newline at end of file
diff --git a/Teszteset14.in b/Teszteset14.in
new file mode 100644
index 0000000000000000000000000000000000000000..e9b5af03a8cfdd50b6f52bd319bcd49d91f7b223
--- /dev/null
+++ b/Teszteset14.in
@@ -0,0 +1,13 @@
+parsemap 4 6
+wwwwww
+wmmsmw
+wmmkmw
+wwwwww
+worker w1 5 f_1_1
+crate c1 f_1_2
+setswitch f_1_3 f_2_3
+crate c2 f_2_3
+
+step w1 right
+
+stat c1
\ No newline at end of file
diff --git a/Teszteset14.out b/Teszteset14.out
new file mode 100644
index 0000000000000000000000000000000000000000..c54b3f1eb8b57b126a94e70dbeaad504a875bcda
--- /dev/null
+++ b/Teszteset14.out
@@ -0,0 +1 @@
+This doesn't exist!
\ No newline at end of file
diff --git a/Teszteset15.in b/Teszteset15.in
new file mode 100644
index 0000000000000000000000000000000000000000..bddc115a0986b0fd3718aec0e70351be9a499ff2
--- /dev/null
+++ b/Teszteset15.in
@@ -0,0 +1,12 @@
+parsemap 4 6
+wwwwww
+wmmsmw
+wmmkmw
+wwwwww
+worker w1 5 f_1_2
+crate c1 f_1_3
+setswitch f_1_3 f_2_3
+
+step w1 right
+
+stat c1
\ No newline at end of file
diff --git a/Teszteset15.out b/Teszteset15.out
new file mode 100644
index 0000000000000000000000000000000000000000..f9d96406b4f455455b7d059987e1b1c377e89af1
--- /dev/null
+++ b/Teszteset15.out
@@ -0,0 +1,3 @@
+myField: f_1_4
+couldMove: true
+isOnTarget: false
\ No newline at end of file
diff --git a/Teszteset16.in b/Teszteset16.in
new file mode 100644
index 0000000000000000000000000000000000000000..3c434d177307e582bbc579adf8b40762d24c2c93
--- /dev/null
+++ b/Teszteset16.in
@@ -0,0 +1,9 @@
+parsemap 4 6
+wwwwww
+wmmmmw
+wmmmmw
+wwwwww
+worker w1 5 f_1_1
+worker w2 5 f_1_2
+step w1 right
+stat w2
\ No newline at end of file
diff --git a/Teszteset16.out b/Teszteset16.out
new file mode 100644
index 0000000000000000000000000000000000000000..a2d1778376795883e9cfadae0bdc4cfc298bbefc
--- /dev/null
+++ b/Teszteset16.out
@@ -0,0 +1,4 @@
+myField: f_1_3
+points: 0
+force: 5.0
+alive: true
\ No newline at end of file
diff --git a/Teszteset17.in b/Teszteset17.in
new file mode 100644
index 0000000000000000000000000000000000000000..274ae0e401ebffd88c44efe45d7f7cd94524e606
--- /dev/null
+++ b/Teszteset17.in
@@ -0,0 +1,10 @@
+parsemap 4 6
+wwwwww
+wmmmmw
+wmmmmw
+wwwwww
+worker w1 5 f_1_1
+crate c f_1_2
+worker w2 5 f_1_3
+step w1 right
+stat w2
\ No newline at end of file
diff --git a/Teszteset17.out b/Teszteset17.out
new file mode 100644
index 0000000000000000000000000000000000000000..0206be6e61df6f53c9c30515a1db8aa8c64a96a0
--- /dev/null
+++ b/Teszteset17.out
@@ -0,0 +1,4 @@
+myField: f_1_4
+points: 0
+force: 5.0
+alive: true
\ No newline at end of file
diff --git a/Teszteset18.in b/Teszteset18.in
new file mode 100644
index 0000000000000000000000000000000000000000..a236de3fcddb5c7f01fdea6bda3d81b273dce8bf
--- /dev/null
+++ b/Teszteset18.in
@@ -0,0 +1,10 @@
+parsemap 4 6
+wwwwww
+wmmmmw
+wmmmmw
+wwwwww
+worker w1 5 f_1_1
+crate c1 f_1_2
+crate c2 f_1_3
+step w1 right
+stat c2
\ No newline at end of file
diff --git a/Teszteset18.out b/Teszteset18.out
new file mode 100644
index 0000000000000000000000000000000000000000..fd203fa714461ee7695cfeab016d08618331441f
--- /dev/null
+++ b/Teszteset18.out
@@ -0,0 +1,3 @@
+myField: f_1_4
+couldMove: false
+isOnTarget: false
\ No newline at end of file
diff --git a/Teszteset19.in b/Teszteset19.in
new file mode 100644
index 0000000000000000000000000000000000000000..3da5d3ddcc79ee20796653041953aeea082924a6
--- /dev/null
+++ b/Teszteset19.in
@@ -0,0 +1,10 @@
+parsemap 4 6
+wwwwww
+wmtmmw
+wmmmmw
+wwwwww
+worker w1 5 f_1_1
+crate c1 f_1_2
+step w1 right
+stat c1
+stat w1
\ No newline at end of file
diff --git a/Teszteset19.out b/Teszteset19.out
new file mode 100644
index 0000000000000000000000000000000000000000..7e2d09d183c273af765cb3b4a4dd5ae9a2b4210e
--- /dev/null
+++ b/Teszteset19.out
@@ -0,0 +1,7 @@
+myField: f_1_3
+couldMove: true
+isOnTarget. false
+myField: f_1_2
+points: -1
+force: 5.0
+alive: true
\ No newline at end of file
diff --git a/Teszteset2.in b/Teszteset2.in
new file mode 100644
index 0000000000000000000000000000000000000000..0a452f3fc821f0e06b96008eef865ed07dceee63
--- /dev/null
+++ b/Teszteset2.in
@@ -0,0 +1,11 @@
+parsemap 4 6
+wwwwww
+wmmmmw
+wmmmmw
+wwwwww
+
+worker w1 5 f_1_1
+step w1 left
+
+stat f_1_1
+stat w1
\ No newline at end of file
diff --git a/Teszteset2.out b/Teszteset2.out
new file mode 100644
index 0000000000000000000000000000000000000000..c5d6c89eeb44d485df8517808d24ef52dcd41dc1
--- /dev/null
+++ b/Teszteset2.out
@@ -0,0 +1,10 @@
+neighborUp: f_0_1
+neighborRight: f_1_2
+neighborDown: f_2_1
+neighborLeft: f_1_0
+moveable: w1
+fluid: no fluid
+myField: f_1_1
+points: 0
+force: 5.0
+alive: true
\ No newline at end of file
diff --git a/Teszteset20.in b/Teszteset20.in
new file mode 100644
index 0000000000000000000000000000000000000000..098786abe4468c87c89f6804aae286a40e4752e8
--- /dev/null
+++ b/Teszteset20.in
@@ -0,0 +1,10 @@
+parsemap 4 6
+wwwwww
+wmkmmw
+wmsmmw
+wwwwww
+setswitch f_2_2 f_1_2
+worker w1 5 f_1_1
+crate c1 f_1_2
+step w1 right
+stat f_2_2
\ No newline at end of file
diff --git a/Teszteset20.out b/Teszteset20.out
new file mode 100644
index 0000000000000000000000000000000000000000..2965be0e9df3dba20127148d6a28d8266dd54a85
--- /dev/null
+++ b/Teszteset20.out
@@ -0,0 +1,7 @@
+neighborUp: f_1_2
+neighborRight: f_2_3
+neighborDown: f_3_2
+neighborLeft: f_2_1
+moveable: null
+fluid: no fluid
+opened: false
\ No newline at end of file
diff --git a/Teszteset21.in b/Teszteset21.in
new file mode 100644
index 0000000000000000000000000000000000000000..54d8ecf7632434b364c4725910bee3c290097ebc
--- /dev/null
+++ b/Teszteset21.in
@@ -0,0 +1,9 @@
+parsemap 4 6
+wwwwww
+wmmmmw
+wmmmmw
+wwwwww
+worker w1 5 f_1_1
+worker w2 5 f_1_2
+step w2 left
+stat w1
\ No newline at end of file
diff --git a/Teszteset21.out b/Teszteset21.out
new file mode 100644
index 0000000000000000000000000000000000000000..ba92605c6e4875e3338858e415c14b2d2bcc163e
--- /dev/null
+++ b/Teszteset21.out
@@ -0,0 +1,4 @@
+myField: f_1_1
+points: 0
+force: 0.0
+alive: false
\ No newline at end of file
diff --git a/Teszteset22.in b/Teszteset22.in
new file mode 100644
index 0000000000000000000000000000000000000000..89f825d4b6e9c9338b3d5913b1d926d371ae2fbd
--- /dev/null
+++ b/Teszteset22.in
@@ -0,0 +1,11 @@
+parsemap 4 6
+wwwwww
+wmmmmw
+wmmmmw
+wwwwww
+worker w1 5 f_1_1
+worker w2 5 f_1_2
+worker w3 5 f_1_3
+step w3 left
+stat w1
+stat w2
\ No newline at end of file
diff --git a/Teszteset22.out b/Teszteset22.out
new file mode 100644
index 0000000000000000000000000000000000000000..97a9d7efb4dae055db611a7672e3b4ec2f786d6f
--- /dev/null
+++ b/Teszteset22.out
@@ -0,0 +1,8 @@
+myField: f_1_1
+points: 0
+force: 0.0
+alive: false
+myField: f_1_1
+points: 0
+force: 5.0
+alive: true
\ No newline at end of file
diff --git a/Teszteset23.in b/Teszteset23.in
new file mode 100644
index 0000000000000000000000000000000000000000..fad7619b14ce0cb7795f20ec694af88b39544fe4
--- /dev/null
+++ b/Teszteset23.in
@@ -0,0 +1,14 @@
+parsemap 4 6
+wwwwww
+wmmsmw
+wmmkmw
+wwwwww
+setswitch f_1_3 f_2_3
+worker w1 5 f_1_1
+crate c1 f_1_2
+crate c2 f_2_2
+step w1 right
+step w1 left
+step w1 down
+step w1 right
+stat f_1_3
\ No newline at end of file
diff --git a/Teszteset23.out b/Teszteset23.out
new file mode 100644
index 0000000000000000000000000000000000000000..c54b3f1eb8b57b126a94e70dbeaad504a875bcda
--- /dev/null
+++ b/Teszteset23.out
@@ -0,0 +1 @@
+This doesn't exist!
\ No newline at end of file
diff --git a/Teszteset24.in b/Teszteset24.in
new file mode 100644
index 0000000000000000000000000000000000000000..988e59e062fe55b4c6c1d1345f7300e32a4020c4
--- /dev/null
+++ b/Teszteset24.in
@@ -0,0 +1,8 @@
+parsemap 4 6
+wwwwww
+wmmmmw
+wmmmmw
+wwwwww
+worker w1 5 f_1_1
+putfluid f_1_1 h
+stat f_1_1
\ No newline at end of file
diff --git a/Teszteset24.out b/Teszteset24.out
new file mode 100644
index 0000000000000000000000000000000000000000..872d873cd1ed4eef0a400d7d2c919b453dce3f38
--- /dev/null
+++ b/Teszteset24.out
@@ -0,0 +1,6 @@
+neighborUp: f_0_0
+neighborRight: f_1_2
+neighborDown: f_2_1
+neighborLeft: f_1_0
+moveable: w1
+fluid: honey
\ No newline at end of file
diff --git a/Teszteset25.in b/Teszteset25.in
new file mode 100644
index 0000000000000000000000000000000000000000..71e6c81a5a078bdd078251ccf9866c0ff7bcf176
--- /dev/null
+++ b/Teszteset25.in
@@ -0,0 +1,10 @@
+parsemap 4 6
+wwwwww
+wmmmmw
+wmmmmw
+wwwwww
+worker w1 5 f_1_1
+putfluid f_1_1 o
+step w1 right
+stat f_1_1
+stat w1
\ No newline at end of file
diff --git a/Teszteset25.out b/Teszteset25.out
new file mode 100644
index 0000000000000000000000000000000000000000..d6cafcb9ea3571ef722830a3334886bdbd8b80ee
--- /dev/null
+++ b/Teszteset25.out
@@ -0,0 +1,10 @@
+neighborUp: f_0_0
+neighborRight: f_1_2
+neighborDown: f_2_1
+neighborLeft: f_1_0
+moveable: null
+fluid: oil
+myField: f_1_2
+points: 0
+force: 5.0
+alive: true
\ No newline at end of file
diff --git a/Teszteset26.in b/Teszteset26.in
new file mode 100644
index 0000000000000000000000000000000000000000..1257ee142e2ed756714859f22a755cd79f047ea5
--- /dev/null
+++ b/Teszteset26.in
@@ -0,0 +1,9 @@
+parsemap 4 6
+wwwwww
+wmmmmw
+wmmmmw
+wwwwww
+worker w1 5 f_1_1
+putfluid f_1_1 h
+putfluid f_1_1 o
+stat f_1_1
\ No newline at end of file
diff --git a/Teszteset26.out b/Teszteset26.out
new file mode 100644
index 0000000000000000000000000000000000000000..131d5fabaef02528319fc98bbd5c749acc6e7cba
--- /dev/null
+++ b/Teszteset26.out
@@ -0,0 +1,6 @@
+neighborUp: f_0_0
+neighborRight: f_1_2
+neighborDown: f_2_1
+neighborLeft: f_1_0
+moveable: w1
+fluid: oil
\ No newline at end of file
diff --git a/Teszteset27.in b/Teszteset27.in
new file mode 100644
index 0000000000000000000000000000000000000000..2879608b59f11e50526f57aac1c48468b357b95e
--- /dev/null
+++ b/Teszteset27.in
@@ -0,0 +1,12 @@
+parsemap 4 6
+wwwwww
+wsmkmw
+wmmmmw
+wwwwww
+setswitch f_1_1 f_1_3
+worker w1 5 f_1_1
+crate c1 f_1_2
+putfluid f_1_1 h
+step w1 right
+step w1 right
+stat f_1_1
\ No newline at end of file
diff --git a/Teszteset27.out b/Teszteset27.out
new file mode 100644
index 0000000000000000000000000000000000000000..3ee7bce4efc35c14b9999a2873022cf01f8e5404
--- /dev/null
+++ b/Teszteset27.out
@@ -0,0 +1,6 @@
+neighborUp: f_0_0
+neighborRight: f_1_2
+neighborDown: f_2_1
+neighborLeft: f_1_0
+moveable: null
+fluid: honey
\ No newline at end of file
diff --git a/Teszteset28.in b/Teszteset28.in
new file mode 100644
index 0000000000000000000000000000000000000000..00b0d6f06e163dce1e0ebc859317479d72e49934
--- /dev/null
+++ b/Teszteset28.in
@@ -0,0 +1,10 @@
+parsemap 4 6
+wwwwww
+wmmmmw
+wmmmmw
+wwwwww
+worker w1 3 f_1_1
+crate c1 f_1_2
+crate c2 f_1_3
+step w1 right
+stat w1
\ No newline at end of file
diff --git a/Teszteset28.out b/Teszteset28.out
new file mode 100644
index 0000000000000000000000000000000000000000..1052764be3cd0ec3f1fe04fb2ebc2b06564c5a5e
--- /dev/null
+++ b/Teszteset28.out
@@ -0,0 +1,4 @@
+myField: f_1_2
+points: 0
+force: 3.0
+alive: true
\ No newline at end of file
diff --git a/Teszteset29.in b/Teszteset29.in
new file mode 100644
index 0000000000000000000000000000000000000000..cf47f2e8358edbd6390715e8cbec876cb3946f99
--- /dev/null
+++ b/Teszteset29.in
@@ -0,0 +1,10 @@
+parsemap 4 6
+wwwwww
+wmmmmw
+wmmmmw
+wwwwww
+worker w1 2 f_1_1
+crate c1 f_1_2
+crate c2 f_1_3
+step w1 right
+stat w1
\ No newline at end of file
diff --git a/Teszteset29.out b/Teszteset29.out
new file mode 100644
index 0000000000000000000000000000000000000000..b5347b5e9375e89402ba8c395e2c2648a6a2d45c
--- /dev/null
+++ b/Teszteset29.out
@@ -0,0 +1,4 @@
+myField: f_1_1
+points: 0
+force: 2.0
+alive: true
\ No newline at end of file
diff --git a/Teszteset3.in b/Teszteset3.in
new file mode 100644
index 0000000000000000000000000000000000000000..9b9d8d2390eed59c2e667c63740e79eab3a613bc
--- /dev/null
+++ b/Teszteset3.in
@@ -0,0 +1,13 @@
+parsemap 4 6
+wwwwww
+wmmmmw
+wmmmmw
+wwwwww
+
+worker w1 5 f_1_1
+step w1 right
+
+stat f_1_1
+stat f_1_2
+
+stat w1
\ No newline at end of file
diff --git a/Teszteset3.out b/Teszteset3.out
new file mode 100644
index 0000000000000000000000000000000000000000..73886dd60333ed49f107e0eabae06b2f58ce062d
--- /dev/null
+++ b/Teszteset3.out
@@ -0,0 +1,16 @@
+neighborUp: f_0_1
+neighborRight: f_1_2
+neighborDown: f_2_1
+neighborLeft: f_1_0
+moveable: null
+fluid: no fluid
+neighborUp: f_0_2
+neighborRight: f_1_3
+neighborDown: f_2_2
+neighborLeft: f_1_1
+moveable: w1
+fluid: no fluid
+myField: f_1_2
+points: 0
+force: 5.0
+alive: true
\ No newline at end of file
diff --git a/Teszteset30.in b/Teszteset30.in
new file mode 100644
index 0000000000000000000000000000000000000000..88ae9dbb86904d37f547f24371d38f2a4a188abe
--- /dev/null
+++ b/Teszteset30.in
@@ -0,0 +1,11 @@
+parsemap 4 6
+wwwwww
+wmmmmw
+wmmmmw
+wwwwww
+worker w1 3 f_1_1
+crate c1 f_1_2
+crate c2 f_1_3
+putfluid f_1_1 h
+step w1 right
+stat w1
\ No newline at end of file
diff --git a/Teszteset30.out b/Teszteset30.out
new file mode 100644
index 0000000000000000000000000000000000000000..d5847263c2b736d05a9fc7ccc136e8853da681ec
--- /dev/null
+++ b/Teszteset30.out
@@ -0,0 +1,4 @@
+myField: f_1_1
+points: 0
+force: 3.0
+alive: true
\ No newline at end of file
diff --git a/Teszteset31.in b/Teszteset31.in
new file mode 100644
index 0000000000000000000000000000000000000000..fc383e3b60bd5b34b63027785e1b34a3814f53d2
--- /dev/null
+++ b/Teszteset31.in
@@ -0,0 +1,11 @@
+parsemap 4 6
+wwwwww
+wmmmmw
+wmmmmw
+wwwwww
+worker w1 2 f_1_1
+crate c1 f_1_2
+crate c2 f_1_3
+putfluid f_1_1 o
+step w1 right
+stat w1
\ No newline at end of file
diff --git a/Teszteset31.out b/Teszteset31.out
new file mode 100644
index 0000000000000000000000000000000000000000..d2cdae09d5837fe21d42ca8a84728eb8f0854079
--- /dev/null
+++ b/Teszteset31.out
@@ -0,0 +1,4 @@
+myField: f_1_2
+points: 0
+force: 2.0
+alive: true
\ No newline at end of file
diff --git a/Teszteset32.in b/Teszteset32.in
new file mode 100644
index 0000000000000000000000000000000000000000..fa41d986f5770dcd6013cc6b6e43faa089713f35
--- /dev/null
+++ b/Teszteset32.in
@@ -0,0 +1,13 @@
+parsemap 4 6
+wwwwww
+wmmmmw
+wmmmmw
+wwwwww
+worker w1 2 f_1_1
+crate c1 f_1_2
+crate c2 f_1_3
+putfluid f_1_1 o
+putfluid f_1_2 o
+putfluid f_1_3 h
+step w1 right
+stat w1
\ No newline at end of file
diff --git a/Teszteset32.out b/Teszteset32.out
new file mode 100644
index 0000000000000000000000000000000000000000..d2cdae09d5837fe21d42ca8a84728eb8f0854079
--- /dev/null
+++ b/Teszteset32.out
@@ -0,0 +1,4 @@
+myField: f_1_2
+points: 0
+force: 2.0
+alive: true
\ No newline at end of file
diff --git a/Teszteset33.in b/Teszteset33.in
new file mode 100644
index 0000000000000000000000000000000000000000..b5dbe10819e704aec21a0455386bd85fce5c150e
--- /dev/null
+++ b/Teszteset33.in
@@ -0,0 +1,13 @@
+parsemap 4 6
+wwwwww
+wmmmmw
+wmmmmw
+wwwwww
+worker w1 3 f_1_1
+crate c1 f_1_2
+crate c2 f_1_3
+putfluid f_1_1 o
+putfluid f_1_2 h
+putfluid f_1_3 h
+step w1 right
+stat w1
\ No newline at end of file
diff --git a/Teszteset33.out b/Teszteset33.out
new file mode 100644
index 0000000000000000000000000000000000000000..d5847263c2b736d05a9fc7ccc136e8853da681ec
--- /dev/null
+++ b/Teszteset33.out
@@ -0,0 +1,4 @@
+myField: f_1_1
+points: 0
+force: 3.0
+alive: true
\ No newline at end of file
diff --git a/Teszteset4.in b/Teszteset4.in
new file mode 100644
index 0000000000000000000000000000000000000000..7413b1543aa46e5fe1550fa7b6bbf7a92aa11698
--- /dev/null
+++ b/Teszteset4.in
@@ -0,0 +1,13 @@
+parsemap 4 6
+wwwwww
+wmtmmw
+wmmmmw
+wwwwww
+
+worker w1 5 f_1_1
+step w1 right
+
+stat f_1_1
+stat f_1_2
+
+stat w1
diff --git a/Teszteset4.out b/Teszteset4.out
new file mode 100644
index 0000000000000000000000000000000000000000..73886dd60333ed49f107e0eabae06b2f58ce062d
--- /dev/null
+++ b/Teszteset4.out
@@ -0,0 +1,16 @@
+neighborUp: f_0_1
+neighborRight: f_1_2
+neighborDown: f_2_1
+neighborLeft: f_1_0
+moveable: null
+fluid: no fluid
+neighborUp: f_0_2
+neighborRight: f_1_3
+neighborDown: f_2_2
+neighborLeft: f_1_1
+moveable: w1
+fluid: no fluid
+myField: f_1_2
+points: 0
+force: 5.0
+alive: true
\ No newline at end of file
diff --git a/Teszteset5.in b/Teszteset5.in
new file mode 100644
index 0000000000000000000000000000000000000000..2141fe94275ac07c8dd845cc620eaf082a09e2e9
--- /dev/null
+++ b/Teszteset5.in
@@ -0,0 +1,13 @@
+parsemap 4 6
+wwwwww
+wmkmmw
+wmmsmw
+wwwwww
+setswitch f_2_3 f_1_2
+worker w1 5 f_1_1
+step w1 right
+
+stat f_2_3
+stat f_1_2
+
+stat w1
\ No newline at end of file
diff --git a/Teszteset5.out b/Teszteset5.out
new file mode 100644
index 0000000000000000000000000000000000000000..d34958dde64684239ccff3e45f3fa5e00b54ea51
--- /dev/null
+++ b/Teszteset5.out
@@ -0,0 +1,17 @@
+neighborUp: f_1_3
+neighborRight: f_2_4
+neighborDown: f_3_3
+neighborLeft: f_2_2
+moveable: null
+fluid: no fluid
+opened: false
+neighborUp: f_0_2
+neighborRight: f_1_3
+neighborDown: f_2_2
+neighborLeft: f_1_1
+moveable: w1
+fluid: no fluid
+myField: f_1_2
+points: 0
+force: 5.0
+alive: true
\ No newline at end of file
diff --git a/Teszteset6.in b/Teszteset6.in
new file mode 100644
index 0000000000000000000000000000000000000000..8d09f13d57f49d1e40482132c79917d44a11cf63
--- /dev/null
+++ b/Teszteset6.in
@@ -0,0 +1,13 @@
+parsemap 4 6
+wwwwww
+wmhmmw
+wmmmmw
+wwwwww
+
+worker w1 5 f_1_1
+step w1 right
+
+stat f_1_1
+stat f_1_2
+
+stat w1
\ No newline at end of file
diff --git a/Teszteset6.out b/Teszteset6.out
new file mode 100644
index 0000000000000000000000000000000000000000..02ef68a9f15bc08bf7fd9d84d9879c4241c2daf9
--- /dev/null
+++ b/Teszteset6.out
@@ -0,0 +1,16 @@
+neighborUp: f_0_1
+neighborRight: f_1_2
+neighborDown: f_2_1
+neighborLeft: f_1_0
+moveable: null
+fluid: no fluid
+neighborUp: f_0_2
+neighborRight: f_1_3
+neighborDown: f_2_2
+neighborLeft: f_1_1
+moveable: null
+fluid: no fluid
+myField: f_1_2
+points: 0
+force: 0.0
+alive: false
\ No newline at end of file
diff --git a/Teszteset7.in b/Teszteset7.in
new file mode 100644
index 0000000000000000000000000000000000000000..5a37a6d5ae5e06b8eea07344a13af584aa85371a
--- /dev/null
+++ b/Teszteset7.in
@@ -0,0 +1,16 @@
+parsemap 4 6
+wwwwww
+wmsmmw
+wmkmmw
+wwwwww
+
+setswitch f_1_2 f_2_2
+worker w1 5 f_1_1
+crate c1 f_2_2
+
+step w1 right
+
+stat f_1_1
+stat f_1_2
+
+stat w1
\ No newline at end of file
diff --git a/Teszteset7.out b/Teszteset7.out
new file mode 100644
index 0000000000000000000000000000000000000000..02ef68a9f15bc08bf7fd9d84d9879c4241c2daf9
--- /dev/null
+++ b/Teszteset7.out
@@ -0,0 +1,16 @@
+neighborUp: f_0_1
+neighborRight: f_1_2
+neighborDown: f_2_1
+neighborLeft: f_1_0
+moveable: null
+fluid: no fluid
+neighborUp: f_0_2
+neighborRight: f_1_3
+neighborDown: f_2_2
+neighborLeft: f_1_1
+moveable: null
+fluid: no fluid
+myField: f_1_2
+points: 0
+force: 0.0
+alive: false
\ No newline at end of file
diff --git a/Teszteset8.in b/Teszteset8.in
new file mode 100644
index 0000000000000000000000000000000000000000..7c560e505c065a1cf0b95238a89f9d58e2286729
--- /dev/null
+++ b/Teszteset8.in
@@ -0,0 +1,15 @@
+parsemap 4 6
+wwwwww
+wmsmmw
+wmkmmw
+wwwwww
+
+setswitch f_1_2 f_2_2
+worker w1 5 f_1_1
+
+step w1 right
+
+stat f_1_1
+stat f_1_2
+
+stat w1
\ No newline at end of file
diff --git a/Teszteset8.out b/Teszteset8.out
new file mode 100644
index 0000000000000000000000000000000000000000..73886dd60333ed49f107e0eabae06b2f58ce062d
--- /dev/null
+++ b/Teszteset8.out
@@ -0,0 +1,16 @@
+neighborUp: f_0_1
+neighborRight: f_1_2
+neighborDown: f_2_1
+neighborLeft: f_1_0
+moveable: null
+fluid: no fluid
+neighborUp: f_0_2
+neighborRight: f_1_3
+neighborDown: f_2_2
+neighborLeft: f_1_1
+moveable: w1
+fluid: no fluid
+myField: f_1_2
+points: 0
+force: 5.0
+alive: true
\ No newline at end of file
diff --git a/Teszteset9.in b/Teszteset9.in
new file mode 100644
index 0000000000000000000000000000000000000000..bcd876138c5e9f38d698bd7cb6746b6a20d7b825
--- /dev/null
+++ b/Teszteset9.in
@@ -0,0 +1,14 @@
+parsemap 4 6
+wwwwww
+wmmmmw
+wmmmmw
+wwwwww
+worker w1 5 f_1_3
+crate c1 f_1_4
+
+step w1 right
+
+stat f_1_3
+stat f_1_4
+
+stat w1
\ No newline at end of file
diff --git a/Teszteset9.out b/Teszteset9.out
new file mode 100644
index 0000000000000000000000000000000000000000..fb4ced04c6cfd8d416e50f4c6560855b6337ab2b
--- /dev/null
+++ b/Teszteset9.out
@@ -0,0 +1,16 @@
+neighborUp: f_0_3
+neighborRight: f_1_4
+neighborDown: f_2_3
+neighborLeft: f_1_2
+moveable: w1
+fluid: no fluid
+neighborUp: f_0_4
+neighborRight: f_1_5
+neighborDown: f_2_4
+neighborLeft: f_1_3
+moveable: c1
+fluid: no fluid
+myField: f_1_3
+points: 0
+force: 5.0
+alive: true
\ No newline at end of file
diff --git a/testere.ps1 b/testere.ps1
new file mode 100644
index 0000000000000000000000000000000000000000..7ef67bbd3189acba1ec6d89d0faa355959b076e6
--- /dev/null
+++ b/testere.ps1
@@ -0,0 +1,41 @@
+function test([string]$testfile, [string]$expectedfile) {
+    $expResult = cat $expectedfile
+
+    $input = cat $testfile
+    $output = echo $input | java -cp .\bin\ killer_sokoban.Main
+
+    $diff = compare $output $expResult
+
+    if ($diff.Length -eq 0) {
+        echo "Test with test file $testfile passed."
+    } else {
+        echo "Test with test file $testfile FAILED!"
+        echo "Got:"
+        echo "-------------------------------------"
+        echo $output
+        echo "Expected:"
+        echo "-------------------------------------"
+        echo $expResult
+    }
+}
+
+function testAll() {
+    $tfiles = dir -fi "*.in" -Name
+
+    foreach ($item in $tfiles) {
+        $temp = $item.Substring(0, $item.LastIndexOf('.'))
+
+        test $item "$temp.out"
+    }
+}
+
+#main
+
+if ($args.Count -eq 0) {
+    testAll
+} elseif($args.Count -eq 2) {
+    test $args[0] $args[1]
+} else {
+    echo "Wrong number of arguments!"
+}
+