 
 (deftest test-player-move
   (are [pos action] (= pos (-> (example-game)
-                               (player-move action)))
+                               (run-player-action action)
+                               (player-position)))
                     [3 3] :right
                     [1 3] :left
                     [2 2] :up

  (let [game (-> (example-game)
                 (configure-zombie-weapon [1 2] {::weapon/recharge-delay 0})
                 (configure-zombie-weapon [0 2] {::weapon/recharge-delay 0})
                 (step-times 6))]
    (is (nil? (player-health game)))
    (is (nil? (player-position game)))))


(deftest test-player-does-not-move-out-of-the-world
  (are [pos action] (= pos (-> (example-game)
                               (set-player [0 4])
                               (run-player-action action)
                               (player-position)))
                    [0 4] :left
                    [0 4] :down))

(deftest test-player-cannot-move-on-if-a-terrain-is-blocked
  (is (= [0 1] (-> (example-game)
                   (set-player [0 1])
                   (run-player-action :down)
                   (player-position)))))

(deftest test-player-attack-does-not-hit-the-zombie
  (let [game (-> (example-game)
