 (def id    "test-id")
 (def attr  "test-attr")
 
-(ensure-table creds {:name       table
-                     :hash-key   {:name id :type :s}
-                     :throughput {:write 1 :read 1}})
+(defn setup-table!
+  []
+  (ensure-table creds {:name       table
+                       :hash-key   {:name id :type :s}
+                       :throughput {:write 1 :read 1}})
 
-(defn setup-table
-  []
   (batch-write-item creds
     [:delete table {id "1"}]
     [:delete table {id "2"}]

        item-3 (get-item creds table {id "3"})
        item-4 (get-item creds table {id "4"})]

    (is (= "foo" (item-1 attr)) "batch-write-item :put failed")
    (is (= "bar" (item-2 attr)) "batch-write-item :put failed")
    (is (= "baz" (item-3 attr)) "batch-write-item :put failed")
    (is (= "foobar" (item-4 attr)) "batch-write-item :put failed")

    (is (= true (some #(= (% attr) "foo") items)))

    [:put table {id "4" attr "foobar"}]))

(deftest test-batch-simple
  (setup-table!)

  (let [result
        (batch-get-item creds
          {table {:key-name "test-id"
                  :keys ["1" "2" "3" "4"]
                  :consistent true}})
        consis
        (batch-get-item creds
          {table {:key-name "test-id"
                  :keys ["1" "2" "3" "4"]
                  :consistent true}})
        attrs
        (batch-get-item creds
          {table {:key-name "test-id"
                  :keys ["1" "2" "3" "4"]
                  :consistent true
                  :attrs [attr]}})

        items  (get-in result [:responses table])
        item-1 (get-item creds table {id "1"})
