summaryrefslogtreecommitdiffstats
path: root/test/sch
diff options
context:
space:
mode:
authorMichael Hwang <mhwang@research.att.com>2016-10-17 17:32:25 -0400
committerMichael Hwang <mhwang@research.att.com>2017-08-23 13:43:09 -0400
commit16a9c5b8c6b91ea856450d99cdfa6a18c57b7f1b (patch)
tree14e7baadd42e8d8dcfa9e9b177b1bb6f05d8522a /test/sch
parent5c203e2c84b5ebcb0eb827038b370fb962595745 (diff)
Make first commit
Change-Id: I7dd166e4052d48e2b333cfaadb8a0b64009b2cbc Issue-Id: DCAEGEN2-44 Signed-off-by: Michael Hwang <mhwang@research.att.com>
Diffstat (limited to 'test/sch')
-rw-r--r--test/sch/handle_test.clj38
-rw-r--r--test/sch/parse_test.clj63
2 files changed, 101 insertions, 0 deletions
diff --git a/test/sch/handle_test.clj b/test/sch/handle_test.clj
new file mode 100644
index 0000000..9cbf9f7
--- /dev/null
+++ b/test/sch/handle_test.clj
@@ -0,0 +1,38 @@
+; ============LICENSE_START=======================================================
+; org.onap.dcae
+; ================================================================================
+; Copyright (c) 2017 AT&T Intellectual Property. All rights reserved.
+; ================================================================================
+; Licensed under the Apache License, Version 2.0 (the "License");
+; you may not use this file except in compliance with the License.
+; You may obtain a copy of the License at
+;
+; http://www.apache.org/licenses/LICENSE-2.0
+;
+; Unless required by applicable law or agreed to in writing, software
+; distributed under the License is distributed on an "AS IS" BASIS,
+; WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+; See the License for the specific language governing permissions and
+; limitations under the License.
+; ============LICENSE_END=========================================================
+;
+; ECOMP is a trademark and service mark of AT&T Intellectual Property.
+
+(ns sch.handle-test
+ (:use (clojure test))
+ (:require [cheshire.core :refer [parse-stream]]
+ [sch.handle :refer :all])
+ )
+
+(deftest deployed-funcs-test
+ (let [requests [{:asdcResourceId "123" :typeName "pizza"}
+ {:asdcResourceId "456" :typeName "hamburger"}
+ {:asdcResourceId "789" :typeName "hotdog"}]
+ attempted [{:asdcResourceId "456" :typeName "hamburger"}
+ {:asdcResourceId "789" :typeName "hotdog"}]
+ completed [{:asdcResourceId "789" :typeName "hotdog"}]
+ ]
+ (is (= (deployed-ok attempted completed) completed))
+ (is (= (deployed-error attempted completed) [(first attempted)]))
+ (is (= (deployed-already requests attempted) [(first requests)]))
+ ))
diff --git a/test/sch/parse_test.clj b/test/sch/parse_test.clj
new file mode 100644
index 0000000..06b5734
--- /dev/null
+++ b/test/sch/parse_test.clj
@@ -0,0 +1,63 @@
+; ============LICENSE_START=======================================================
+; org.onap.dcae
+; ================================================================================
+; Copyright (c) 2017 AT&T Intellectual Property. All rights reserved.
+; ================================================================================
+; Licensed under the Apache License, Version 2.0 (the "License");
+; you may not use this file except in compliance with the License.
+; You may obtain a copy of the License at
+;
+; http://www.apache.org/licenses/LICENSE-2.0
+;
+; Unless required by applicable law or agreed to in writing, software
+; distributed under the License is distributed on an "AS IS" BASIS,
+; WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+; See the License for the specific language governing permissions and
+; limitations under the License.
+; ============LICENSE_END=========================================================
+;
+; ECOMP is a trademark and service mark of AT&T Intellectual Property.
+
+(ns sch.parse-test
+ (:use (clojure test))
+ (:require [cheshire.core :refer [parse-stream]]
+ [sch.parse :refer :all])
+ )
+
+
+; TODO: May want to use fixtures..
+(defn read-change-event!
+ [event-file-path]
+ (with-open [rdr (clojure.java.io/reader event-file-path)]
+ (parse-stream rdr true))
+ )
+
+(deftest generate-test
+ (letfn [(get-blueprint [artifact-url]
+ "Fake blueprint")]
+ (let [change-event (read-change-event! "fixtures/4_insert.json")
+ get-locations (partial get-service-locations slurp)
+ service-types (generate-dcae-service-type-requests get-blueprint
+ get-locations
+ change-event)
+ expected-st { :asdcResourceId "3d5927fc-a28e-41e9-9e79-57289aa7f754",
+ :asdcServiceId "9eaf59ee-2fe0-48a9-8d20-6f9b09ba807b",
+ :owner "MICHAEL SHITRIT",
+ :typeName "sample-blueprint",
+ :typeVersion 2,
+ :blueprintTemplate "Fake blueprint",
+ :asdcServiceURL "/asdc/v1/catalog/services/9eaf59ee-2fe0-48a9-8d20-6f9b09ba807b/metadata"
+ :serviceLocations ["CLLI1" "CLL2"] }
+ ]
+
+ (is (= (count service-types) 1))
+ (is (= expected-st (first service-types)))
+ )))
+
+(deftest pick-out-artifact-test
+ (let [service-metadata (read-change-event! "fixtures/4_insert.json")
+ stub-request { :asdcResourceId "3d5927fc-a28e-41e9-9e79-57289aa7f754"
+ :typeName "sample-blueprint" }
+ actual-artifact (pick-out-artifact service-metadata stub-request)]
+ (is (= (:artifactName actual-artifact) (:typeName stub-request)))
+ ))