From bb5fb34e2027c131ec198d521644159578548b82 Mon Sep 17 00:00:00 2001 From: saidone Date: Thu, 27 Jun 2024 07:31:44 +0200 Subject: [PATCH 1/2] optimize import --- src/cral/api/core/versions.clj | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/cral/api/core/versions.clj b/src/cral/api/core/versions.clj index fafac04..e5ac377 100644 --- a/src/cral/api/core/versions.clj +++ b/src/cral/api/core/versions.clj @@ -23,7 +23,8 @@ (:import (clojure.lang PersistentHashMap PersistentVector) (cral.model.auth Ticket) (cral.model.core GetVersionContentQueryParams - GetVersionRenditionContentQueryParams ListVersionHistoryQueryParams + GetVersionRenditionContentQueryParams + ListVersionHistoryQueryParams ListVersionRenditionsQueryParams RevertVersionBody RevertVersionQueryParams))) From 37e814e730939c083aff985d105c78c853570f15 Mon Sep 17 00:00:00 2001 From: saidone Date: Fri, 28 Jun 2024 08:10:43 +0200 Subject: [PATCH 2/2] get-version-rendition-content-test --- test/cral/versions_test.clj | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/test/cral/versions_test.clj b/test/cral/versions_test.clj index c00edfa..6c770ab 100644 --- a/test/cral/versions_test.clj +++ b/test/cral/versions_test.clj @@ -167,4 +167,26 @@ (is (= (:status get-version-rendition-info-response) 200)) (is (= (get-in get-version-rendition-info-response [:body :entry :id]) "doclib"))) ; clean up + (is (= (:status (nodes/delete-node ticket created-node-id {:permanent true})) 204)))) + +(deftest get-version-rendition-content-test + (let [ticket (get-in (auth/create-ticket c/user c/password) [:body :entry]) + ;; create node + created-node-id (get-in (nodes/create-node ticket (tu/get-guest-home ticket) (model/map->CreateNodeBody {:name (.toString (UUID/randomUUID)) :node-type cm/type-content})) [:body :entry :id])] + ;; add cm:versionable aspect + (nodes/update-node ticket created-node-id (model/map->UpdateNodeBody {:aspect-names [cm/asp-versionable]})) + ;; update the node content + (nodes/update-node-content ticket created-node-id (io/as-file (io/resource content-file))) + ;; ask for rendition creation + (versions/create-version-rendition ticket created-node-id "1.1" [(model/map->CreateVersionRenditionBody {:id "doclib"})]) + ;; get version rendition info + (loop [get-version-rendition-info-response nil] + (when-not (= (get-in get-version-rendition-info-response [:body :entry :status]) "CREATED") + (Thread/sleep 1000) + (recur (versions/get-version-rendition-info ticket created-node-id "1.1" "doclib")))) + (let [get-version-rendition-content-response (versions/get-version-rendition-content ticket created-node-id "1.1" "doclib")] + (is (= (:status get-version-rendition-content-response) 200)) + (is (bytes? (:body get-version-rendition-content-response))) + (is (> (alength (:body get-version-rendition-content-response)) 0))) + ; clean up (is (= (:status (nodes/delete-node ticket created-node-id {:permanent true})) 204)))) \ No newline at end of file