<html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <link rel="stylesheet" href="../../coverage.css"/> <title> the_great_game/merchants/merchants.clj </title> </head> <body> <span class="covered" title="1 out of 1 forms covered"> 001 (ns the-great-game.merchants.merchants </span><br/> <span class="not-tracked" title="0 out of 0 forms covered"> 002 "Trade planning for merchants, primarily." </span><br/> <span class="not-tracked" title="0 out of 0 forms covered"> 003 (:require [taoensso.timbre :as l :refer [info error spy]] </span><br/> <span class="not-tracked" title="0 out of 0 forms covered"> 004 [the-great-game.utils :refer [deep-merge]] </span><br/> <span class="not-tracked" title="0 out of 0 forms covered"> 005 [the-great-game.merchants.strategies.simple :refer [move-merchant]])) </span><br/> <span class="blank" title="0 out of 0 forms covered"> 006 </span><br/> <span class="blank" title="0 out of 0 forms covered"> 007 </span><br/> <span class="covered" title="1 out of 1 forms covered"> 008 (defn run </span><br/> <span class="not-tracked" title="0 out of 0 forms covered"> 009 "Return a partial world based on this `world`, but with each merchant moved." </span><br/> <span class="not-tracked" title="0 out of 0 forms covered"> 010 [world] </span><br/> <span class="not-covered" title="0 out of 1 forms covered"> 011 (try </span><br/> <span class="not-covered" title="0 out of 2 forms covered"> 012 (reduce </span><br/> <span class="not-covered" title="0 out of 1 forms covered"> 013 deep-merge </span><br/> <span class="not-covered" title="0 out of 1 forms covered"> 014 world </span><br/> <span class="not-covered" title="0 out of 3 forms covered"> 015 (map </span><br/> <span class="not-covered" title="0 out of 1 forms covered"> 016 #(try </span><br/> <span class="not-covered" title="0 out of 6 forms covered"> 017 (let [move-fn (or </span><br/> <span class="not-covered" title="0 out of 7 forms covered"> 018 (-> world :merchants % :move-fn) </span><br/> <span class="not-tracked" title="0 out of 0 forms covered"> 019 move-merchant)] </span><br/> <span class="not-covered" title="0 out of 7 forms covered"> 020 (apply move-fn (list % world))) </span><br/> <span class="not-tracked" title="0 out of 0 forms covered"> 021 (catch Exception any </span><br/> <span class="not-covered" title="0 out of 17 forms covered"> 022 (l/error any "Failure while moving merchant " %) </span><br/> <span class="not-covered" title="0 out of 1 forms covered"> 023 {})) </span><br/> <span class="not-covered" title="0 out of 5 forms covered"> 024 (keys (:merchants world)))) </span><br/> <span class="not-tracked" title="0 out of 0 forms covered"> 025 (catch Exception any </span><br/> <span class="not-covered" title="0 out of 16 forms covered"> 026 (l/error any "Failure while moving merchants") </span><br/> <span class="not-covered" title="0 out of 1 forms covered"> 027 world))) </span><br/> <span class="blank" title="0 out of 0 forms covered"> 028 </span><br/> </body> </html>