mirror of
https://github.com/unclebob/more-speech.git
synced 2024-09-30 02:21:02 +00:00
Pulled ui-context from tabs_spec and user-configuration-spec
This commit is contained in:
parent
530ef1ace7
commit
61e5709cf0
@ -31,20 +31,20 @@
|
||||
(set-mem :tabs-list [{:name "old-name"} {:name "some-name"}])
|
||||
(change-tabs-list-name "old-name" "new-name")
|
||||
(should= [{:name "new-name"} {:name "some-name"}]
|
||||
(:tabs-list @(:event-context @ui-context))))
|
||||
(get-mem :tabs-list)))
|
||||
|
||||
(it "changes does not change tabs-list name if it does not exist"
|
||||
(set-mem :tabs-list [{:name "old-name"} {:name "some-name"}])
|
||||
(change-tabs-list-name "bad-name" "new-name")
|
||||
(should= [{:name "old-name"} {:name "some-name"}]
|
||||
(:tabs-list @(:event-context @ui-context)))))
|
||||
(get-mem :tabs-list))))
|
||||
|
||||
(context "delete-tab-from-tabs-list"
|
||||
(it "deletes an existing tab"
|
||||
(set-mem :tabs-list [{:name "old-name"} {:name "some-name"}])
|
||||
(delete-tab-from-tabs-list "old-name")
|
||||
(should= [{:name "some-name"}]
|
||||
(:tabs-list @(:event-context @ui-context)))))
|
||||
(get-mem :tabs-list))))
|
||||
|
||||
(context "add-tab-to-tabs-list"
|
||||
(it "adds-a-tab"
|
||||
@ -52,7 +52,7 @@
|
||||
(add-tab-to-tabs-list "new-name")
|
||||
(should= [{:name "some-name"}
|
||||
{:name "new-name" :selected [] :blocked []}]
|
||||
(:tabs-list @(:event-context @ui-context))))
|
||||
(get-mem :tabs-list)))
|
||||
)
|
||||
|
||||
(context "select-id-in-tab"
|
||||
@ -61,5 +61,5 @@
|
||||
(add-id-to-tab "tab" :selected 1)
|
||||
(should= [{:name "tab" :selected [1]}
|
||||
{:name "another"}]
|
||||
(:tabs-list @(:event-context @ui-context)))))
|
||||
(get-mem :tabs-list))))
|
||||
)
|
||||
|
@ -3,10 +3,12 @@
|
||||
[more-speech.user-configuration :refer :all]
|
||||
[more-speech.ui.swing.ui-context :refer :all]))
|
||||
|
||||
(declare lte)
|
||||
|
||||
(describe "user configuration"
|
||||
(with-stubs)
|
||||
(context "basic functions"
|
||||
(before (reset! ui-context {:event-context (atom {})}))
|
||||
(before (clear-mem))
|
||||
(it "sets and gets a config"
|
||||
(set-config :test "test")
|
||||
(should= "test" (get-config :test)))
|
||||
@ -17,6 +19,7 @@
|
||||
)
|
||||
|
||||
(context "export user profile"
|
||||
(with lte (* 2 86400))
|
||||
(it "creates if empty"
|
||||
(let [uc (validate {})]
|
||||
(should (contains? uc :export-user-profile))
|
||||
@ -25,47 +28,32 @@
|
||||
|
||||
(it "decides if it is time to export"
|
||||
(with-redefs [keys-last-modified (fn [] 0)]
|
||||
(let [lte (* 2 86400)
|
||||
uc {:export-user-profile {:export-after-days 10
|
||||
:last-time-exported lte}}
|
||||
event-context (atom {:user-configuration uc})]
|
||||
(reset! ui-context {:event-context event-context})
|
||||
(should (should-export-profile? (* 12 86400)))
|
||||
(should (should-export-profile? (* 13 86400)))
|
||||
(should-not (should-export-profile? (* 11 86400))))))
|
||||
(set-config [:export-user-profile :export-after-days] 10)
|
||||
(set-config [:export-user-profile :last-time-exported] @lte)
|
||||
(should (should-export-profile? (* 12 86400)))
|
||||
(should (should-export-profile? (* 13 86400)))
|
||||
(should-not (should-export-profile? (* 11 86400)))))
|
||||
|
||||
(it "will export if keys file has changed"
|
||||
(with-redefs [keys-last-modified (fn [] (* 3 86400))]
|
||||
(let [lte (* 2 86400)
|
||||
uc {:export-user-profile {:export-after-days 10
|
||||
:last-time-exported lte}}
|
||||
event-context (atom {:user-configuration uc})]
|
||||
(reset! ui-context {:event-context event-context})
|
||||
(should (should-export-profile? (* 12 86400)))
|
||||
(should (should-export-profile? (* 13 86400)))
|
||||
(should (should-export-profile? (* 11 86400))))))
|
||||
(set-config [:export-user-profile :export-after-days] 10)
|
||||
(set-config [:export-user-profile :last-time-exported] @lte)
|
||||
(should (should-export-profile? (* 12 86400)))
|
||||
(should (should-export-profile? (* 13 86400)))
|
||||
(should (should-export-profile? (* 11 86400)))))
|
||||
|
||||
(it "won't export if :export-after-days is :never"
|
||||
(let [lte (* 2 86400)
|
||||
uc {:export-user-profile {:export-after-days :never
|
||||
:last-time-exported lte}}
|
||||
event-context (atom {:user-configuration uc})]
|
||||
(reset! ui-context {:event-context event-context})
|
||||
(should-not (should-export-profile? (* 12 86400)))
|
||||
(should-not (should-export-profile? (* 13 86400)))
|
||||
(should-not (should-export-profile? (* 11 86400)))))
|
||||
(set-config [:export-user-profile :export-after-days] :never)
|
||||
(set-config [:export-user-profile :last-time-exported] @lte)
|
||||
(should-not (should-export-profile? (* 12 86400)))
|
||||
(should-not (should-export-profile? (* 13 86400)))
|
||||
(should-not (should-export-profile? (* 11 86400))))
|
||||
|
||||
(it "sets the last exported time"
|
||||
(let [lte (* 2 86400)
|
||||
uc {:export-user-profile {:export-after-days 10
|
||||
:last-time-exported lte}}
|
||||
event-context (atom {:user-configuration uc})]
|
||||
(reset! ui-context {:event-context event-context}))
|
||||
(set-config [:export-user-profile :export-after-days] 10)
|
||||
(set-config [:export-user-profile :last-time-exported] @lte)
|
||||
(set-last-time-profile-exported 99)
|
||||
(let [event-context (:event-context @ui-context)]
|
||||
(should= 99 (get-in @event-context
|
||||
[:user-configuration :export-user-profile :last-time-exported])))
|
||||
)
|
||||
(should= 99 (get-config [:export-user-profile :last-time-exported])))
|
||||
)
|
||||
|
||||
(context "gather historical metadata"
|
||||
@ -76,25 +64,17 @@
|
||||
(should= 0 (get-in uc [:import-metadata :last-time-imported]))))
|
||||
|
||||
(it "decides if it is time to import"
|
||||
(let [lti (* 2 86400)
|
||||
uc {:import-metadata {:import-after-days 10
|
||||
:last-time-imported lti}}
|
||||
event-context (atom {:user-configuration uc})]
|
||||
(reset! ui-context {:event-context event-context})
|
||||
(should (should-import-metadata? (* 12 86400)))
|
||||
(should (should-import-metadata? (* 13 86400)))
|
||||
(should-not (should-import-metadata? (* 11 86400)))))
|
||||
(set-config [:import-metadata :import-after-days] 10)
|
||||
(set-config [:import-metadata :last-time-imported] (* 2 86400))
|
||||
(should (should-import-metadata? (* 12 86400)))
|
||||
(should (should-import-metadata? (* 13 86400)))
|
||||
(should-not (should-import-metadata? (* 11 86400))))
|
||||
|
||||
(it "sets the last imported time"
|
||||
(let [lti (* 2 86400)
|
||||
uc {:import-metadata {:import-after-days 10
|
||||
:last-time-imported lti}}
|
||||
event-context (atom {:user-configuration uc})]
|
||||
(reset! ui-context {:event-context event-context}))
|
||||
(set-config [:import-metadata :import-after-days] 10)
|
||||
(set-config [:import-metadata :last-time-imported] (* 2 86400))
|
||||
(set-last-time-metadata-imported 99)
|
||||
|
||||
(should= 99 (get-config [:import-metadata :last-time-imported]))
|
||||
)
|
||||
(should= 99 (get-config [:import-metadata :last-time-imported])))
|
||||
)
|
||||
)
|
||||
|
||||
|
@ -23,8 +23,7 @@
|
||||
lte (get xup :last-time-exported 0)
|
||||
xup (assoc xup :export-after-days xad
|
||||
:last-time-exported lte)]
|
||||
(assoc user-configuration :export-user-profile xup))
|
||||
)
|
||||
(assoc user-configuration :export-user-profile xup)))
|
||||
|
||||
(defn validate-import-metadata [uc]
|
||||
(let [im (get uc :import-metadata {})
|
||||
|
Loading…
Reference in New Issue
Block a user