Advertisement
Guest User

Untitled

a guest
Apr 23rd, 2022
60
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. (deftest select-test
  2.   (testing
  3.    (is (= (vec (select student))
  4.           [{:id 1, :year 1998, :surname "Ivanov"} {:id 2, :year 1997, :surname "Petrov"} {:id 3, :year 1996, :surname "Sidorov"}]))
  5.     (is (= (vec (select student :order-by :year))
  6.            (vec '({:id 3, :year 1996, :surname "Sidorov"} {:id 2, :year 1997, :surname "Petrov"} {:id 1, :year 1998, :surname "Ivanov"}))))
  7.     (is (= (vec (select student :where #(> (:id %) 1)))
  8.            (vec '({:id 2, :year 1997, :surname "Petrov"} {:id 3, :year 1996, :surname "Sidorov"}))))
  9.     (is (= (vec (select student :limit 2))
  10.            (vec '({:id 1, :year 1998, :surname "Ivanov"} {:id 2, :year 1997, :surname "Petrov"}))))
  11.     (is (= (vec (select student :where #(> (:id %) 1) :limit 1))
  12.            (vec '({:id 2, :year 1997, :surname "Petrov"}))))
  13.     (is (= (vec (select student :where #(> (:id %) 1) :order-by :year :limit 2))
  14.            (vec '({:id 3, :year 1996, :surname "Sidorov"} {:id 2, :year 1997, :surname "Petrov"}))))
  15.     (is (= (vec (select student-subject :joins [[:student_id student :id] [:subject_id subject :id]]))
  16.            (vec '[{:subject "Math", :subject_id 1, :surname "Ivanov", :year 1998, :student_id 1, :id 1} {:subject "Math", :subject_id 1, :surname "Petrov", :year 1997, :student_id 2, :id 2} {:subject "CS", :subject_id 2, :surname "Petrov", :year 1997, :student_id 2, :id 2} {:subject "CS", :subject_id 2, :surname "Sidorov", :year 1996, :student_id 3, :id 3}])))
  17.     (is (= (vec (select student-subject :limit 2 :joins [[:student_id student :id] [:subject_id subject :id]]))
  18.            (vec '({:subject "Math", :subject_id 1, :surname "Ivanov", :year 1998, :student_id 1, :id 1} {:subject "Math", :subject_id 1, :surname "Petrov", :year 1997, :student_id 2, :id 2}))))))
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement