Merge "Move to alpine"
diff --git a/src/main/resources/META-INF/resources/designer/modeler/dist/index.html b/src/main/resources/META-INF/resources/designer/modeler/dist/index.html
index dd88ec2..6b8efed 100644
--- a/src/main/resources/META-INF/resources/designer/modeler/dist/index.html
+++ b/src/main/resources/META-INF/resources/designer/modeler/dist/index.html
@@ -41,7 +41,7 @@
         </div>
     </div>
 
-    <div class="canvas" id="js-canvas"></div>
+    <div class="canvas" id="js-canvas" style="margin-top:100px"></div>
 </div>
 </body>
 
diff --git a/src/main/resources/META-INF/resources/designer/partials/portfolios/ConfirmRevertChanges.html b/src/main/resources/META-INF/resources/designer/partials/portfolios/ConfirmRevertChanges.html
deleted file mode 100644
index 9c66d4e..0000000
--- a/src/main/resources/META-INF/resources/designer/partials/portfolios/ConfirmRevertChanges.html
+++ /dev/null
@@ -1,47 +0,0 @@
-<!--
-  ============LICENSE_START=======================================================
-  ONAP CLAMP
-  ================================================================================
-  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============================================
-  ===================================================================
-  
-  -->
-
-<div attribute-test="confirmrevertchanges" id="configure-widgets">
-	<div attribute-test="confirmrevertchangesh" class="modal-header">
-		<button type="button" class="close" ng-click="close(false)"
-			aria-hidden="true" style="margin-top: -3px">&times;</button>
-		<h4>Create Model</h4>
-	</div>
-	<div attribute-test="confirmrevertchangesh" class="modal-body" style="height: 150px">
-		<div style="height: 30px"></div>
-
-			
-				<label for="modelName" class="col-sm-3 control-label">Revert Changes for Model:</label>
-				<span ng-bind="utmModels.name"></span>
-				
-					<input type="hidden" class="form-control" id="modelName" name="modelName" ng-value="utmModels.name">
-			
-		
-	</div>
-	<div class="modal-footer">
-
-		<button ng-click="revertChanges()" class="btn btn-primary" ng-disabled="model.modelName.$error.pattern || nameinUse" class="btn btn-primary">Revert</button>
-		<button ng-click="close(true)" class="btn btn-primary">Cancel</button>
-	</div>
-</div>
-
diff --git a/src/main/resources/META-INF/resources/designer/scripts/CldsModelService.js b/src/main/resources/META-INF/resources/designer/scripts/CldsModelService.js
index 8a6981c..5848f54 100644
--- a/src/main/resources/META-INF/resources/designer/scripts/CldsModelService.js
+++ b/src/main/resources/META-INF/resources/designer/scripts/CldsModelService.js
@@ -259,24 +259,18 @@
 	    }
 	    function manageCLImage(modelName) {
 	    	getModelImage(modelName).then(function(pars) {
-		    	//var svg=' <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" color-interpolation="auto" color-rendering="auto" fill="black" fill-opacity="1" font-family="Dialog" font-size="12px" font-style="normal" font-weight="normal" image-rendering="auto" shape-rendering="auto" stroke="black" stroke-dasharray="none" stroke-dashoffset="0" stroke-linecap="square" stroke-linejoin="miter" stroke-miterlimit="10" stroke-opacity="1" stroke-width="1" text-rendering="auto"><!--Generated by the Batik Graphics2D SVG Generator--> <defs id="genericDefs"/> <g> <g stroke-width="2"> <circle cx="20" cy="21" fill="none" r="10"/> <line fill="none" x1="30" x2="91" y1="21" y2="21"/> <polygon fill="none" points=" 89 19 89 23 93 21"/> <polygon points=" 89 19 89 23 93 21" stroke="none"/>  <g class="djs-group" xmlns="http://www.w3.org/2000/svg"> <g class="djs-element djs-shape" data-element-id="VesCollector_1g9cmz0" transform="matrix(1,0,0,1,207,140)" style="display: block;"> <rect fill="none" class="djs-outline" x="-6" y="-6" width="132" height="92"></rect> <g > <rect x="0" y="0" width="120" height="80" rx="0" ry="0" style="stroke-width: 2;" stroke="#000000" fill="#ffffff"></rect> <polyline points="120,80 120,20 " style="stroke-width: 2;" fill="none" stroke="#000000"></polyline> <polyline points="20,0 20,80 " style="stroke-width: 2;" fill="none" stroke="#000000"></polyline> <text style="font-family: Arial,sans-serif; font-size: 12px;" class=" djs-label"> <tspan x="25.5" y="43.5">VesCollector</tspan> </text> </g>  <rect x="0" y="0" width="120" height="80" style="stroke-opacity: 0; stroke-width: 15;" fill="none" stroke="#ffffff" class="djs-hit"></rect> </g> </g>  <line fill="none" x1="105" x2="105" y1="1" y2="44"/> <line fill="none" x1="160" x2="221" y1="21" y2="21"/> <polygon fill="none" points=" 219 19 219 23 223 21"/> <polygon points=" 219 19 219 23 223 21" stroke="none"/>  <g class="djs-element djs-shape" data-element-id="tca"> <rect fill="none" class="djs-outline"  height="90" width="132" x="225"  y="1"/> <rect x="230" y="6" width="120" height="80" rx="0" ry="0" style="stroke-width: 2;" stroke="#000000" fill="#ffffff"></rect> <text font-family="sans-serif" stroke="none" x="228" xml:space="preserve" y="22"  >third_app</text> <line fill="none" x1="225" x2="290" y1="33" y2="33"/> <rect x="230" y="6" width="120" height="80"	style="stroke-opacity: 0; stroke-width: 15;" fill="none" stroke="#ffffff" class="djs-hit"></rect> </g>  <line fill="none" x1="290" x2="351" y1="21" y2="21"/> <polygon fill="none" points=" 349 19 349 23 353 21"/> <polygon points=" 349 19 349 23 353 21" stroke="none"/> <rect fill="none" height="43" id="first_app" width="65" x="355" y="1"/> <text font-family="sans-serif" stroke="none" x="360" xml:space="preserve" y="22" data-element-id="tca">first_app</text> <line fill="none" x1="355" x2="420" y1="33" y2="33"/> <line fill="none" x1="420" x2="481" y1="21" y2="21"/> <polygon fill="none" points=" 479 19 479 23 483 21"/> <polygon points=" 479 19 479 23 483 21" stroke="none"/> <rect fill="none" height="43" id="second_app" width="65" x="485" y="1"/> <text font-family="sans-serif" stroke="none" x="479" xml:space="preserve" y="22" data-element-id="tca">second_app</text> <line fill="none" x1="485" x2="550" y1="33" y2="33"/> <line fill="none" x1="550" x2="611" y1="21" y2="21"/> <polygon fill="none" points=" 609 19 609 23 613 21"/> <polygon points=" 609 19 609 23 613 21" stroke="none"/> <rect fill="none" height="43" id="policy" width="65" x="615" y="1"/> <text font-family="sans-serif" stroke="none" x="630" xml:space="preserve" y="22" data-element-id="policyc">Policy</text> <line fill="none" x1="615" x2="647" y1="22" y2="1"/> <line fill="none" x1="680" x2="741" y1="21" y2="21"/> <polygon fill="none" points=" 739 19 739 23 743 21"/> <polygon points=" 739 19 739 23 743 21" stroke="none"/> <circle cx="755" cy="21" fill="none" r="10" stroke-width="4"/> </g> </g> </svg>';
-	    		var svg = pars;
+		    	//var svg='<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/2000/svg"> <defs> <marker viewBox="0 0 20 20" markerWidth="10" markerHeight="10" orient="auto" refX="11" refY="10" id="markerSjdype4kmnw"> <path d="M 1 5 L 11 10 L 1 15 Z" style="stroke-width: 1; stroke-linecap: round; stroke-dasharray: 10000, 1;" fill="#000000" /> </marker> <marker viewBox="0 0 20 20" markerWidth="20" markerHeight="20" orient="auto" refX="6" refY="6" id="markerSjdype4kmny"> <circle cx="6" cy="6" r="3.5" style="stroke-width: 1; stroke-linecap: round; stroke-dasharray: 10000, 1;" fill="#ffffff" stroke="#000000" /> </marker> <marker viewBox="0 0 20 20" markerWidth="20" markerHeight="20" orient="auto" refX="8.5" refY="5" id="markerSjdype4kmo0"> <path d="m 1 5 l 0 -3 l 7 3 l -7 3 z" style="stroke-width: 1; stroke-linecap: butt; stroke-dasharray: 10000, 1;" fill="#ffffff" stroke="#000000" /> </marker> <marker viewBox="0 0 20 20" markerWidth="10" markerHeight="10" orient="auto" refX="11" refY="10" id="markerSjdype4kmo2"> <path d="M 1 5 L 11 10 L 1 15" style="stroke-width: 1; stroke-linecap: round; stroke-dasharray: 10000, 1;" fill="#ffffff" stroke="#000000" /> </marker> <marker viewBox="0 0 20 20" markerWidth="10" markerHeight="10" orient="auto" refX="-1" refY="10" id="markerSjdype4kmo4"> <path d="M 0 10 L 8 6 L 16 10 L 8 14 Z" style="stroke-width: 1; stroke-linecap: round; stroke-dasharray: 10000, 1;" fill="#ffffff" stroke="#000000" /> </marker> <marker viewBox="0 0 20 20" markerWidth="10" markerHeight="10" orient="auto" refX="-5" refY="10" id="markerSjdype4kmo6"> <path d="M 1 4 L 5 16" style="stroke-width: 1; stroke-linecap: round; stroke-dasharray: 10000, 1;" fill="#000000" stroke="#000000" /> </marker> </defs><g fill-opacity="1" color-rendering="auto" color-interpolation="auto" text-rendering="auto" stroke="black" stroke-linecap="square" stroke-miterlimit="10" shape-rendering="auto" stroke-opacity="1" fill="black" stroke-dasharray="none" font-weight="normal" stroke-width="1" font-family="&apos;Dialog&apos;" font-style="normal" data-element-id="start-circle" stroke-linejoin="miter" font-size="12px" image-rendering="auto" stroke-dashoffset="0"><!--Generated by the Batik Graphics2D SVG Generator--> <defs id="genericDefs"/> <g> <g shape-rendering="geometricPrecision" text-rendering="optimizeQuality" stroke-width="2"> <circle fill="none" r="17" cx="34" cy="41"/> </g> </g> </g> <g fill-opacity="1" color-rendering="auto" color-interpolation="auto" text-rendering="auto" stroke="black" stroke-linecap="square" stroke-miterlimit="10" shape-rendering="auto" stroke-opacity="1" fill="black" stroke-dasharray="none" font-weight="normal" stroke-width="1" font-family="&apos;Dialog&apos;" font-style="normal" data-element-id="Arrow_d0b22360-770d-4b05-b81c-cf148b121341" stroke-linejoin="miter" font-size="12px" image-rendering="auto" stroke-dashoffset="0"><!--Generated by the Batik Graphics2D SVG Generator--> <defs id="genericDefs"/> <g> <g shape-rendering="geometricPrecision" text-rendering="optimizeQuality" stroke-width="2"> <line y2="41" fill="none" x1="51" x2="170" y1="41"/> <polygon fill="none" points=" 166 38 166 44 172 41"/>             <polygon points=" 166 38 166 44 172 41" stroke="none"/> </g> </g> </g> <g fill-opacity="1" color-rendering="auto" color-interpolation="auto" text-rendering="auto" stroke="black" stroke-linecap="square" stroke-miterlimit="10" shape-rendering="auto" stroke-opacity="1" fill="black" stroke-dasharray="none" font-weight="normal" stroke-width="1" font-family="&apos;Dialog&apos;" font-style="normal" data-element-id="VES" stroke-linejoin="miter" font-size="12px" image-rendering="auto" stroke-dashoffset="0"><!--Generated by the Batik Graphics2D SVG Generator--> <defs id="genericDefs"/> <g> <g shape-rendering="geometricPrecision" text-rendering="optimizeQuality" stroke-width="2"> <rect fill="none" x="174" width="123" y="1" height="82"/> </g> <g fill-opacity="0" fill="rgb(0,0,0)" text-rendering="optimizeQuality" shape-rendering="geometricPrecision" stroke="rgb(0,0,0)" stroke-opacity="0" stroke-width="2"> <rect x="174" width="123" y="1" height="82" stroke="none"/> </g> <g font-family="sans-serif" shape-rendering="geometricPrecision" text-rendering="optimizeQuality"> <text x="223" xml:space="preserve" y="42" stroke="none">VES</text> <line y2="83" fill="none" stroke-width="2" x1="194" x2="194" y1="1"/> </g> </g> </g> <g fill-opacity="1" color-rendering="auto" color-interpolation="auto" text-rendering="auto" stroke="black" stroke-linecap="square" stroke-miterlimit="10" shape-rendering="auto" stroke-opacity="1" fill="black" stroke-dasharray="none" font-weight="normal" stroke-width="1" font-family="&apos;Dialog&apos;" font-style="normal" data-element-id="Arrow_d4351927-d77a-4e04-82d1-cd8f2b008137" stroke-linejoin="miter" font-size="12px" image-rendering="auto" stroke-dashoffset="0"><!--Generated by the Batik Graphics2D SVG Generator--> <defs id="genericDefs"/> <g> <g text-rendering="optimizeQuality" stroke-width="2" shape-rendering="geometricPrecision" font-family="sans-serif"> <line y2="41" fill="none" x1="297" x2="416" y1="41"/> <polygon fill="none" points=" 412 38 412 44 418 41"/> <polygon points=" 412 38 412 44 418 41" stroke="none"/> </g> </g> </g>    <g fill-opacity="1" color-rendering="auto" color-interpolation="auto" text-rendering="auto" stroke="black" stroke-linecap="square" stroke-miterlimit="10" shape-rendering="auto" stroke-opacity="1" fill="black" stroke-dasharray="none" font-weight="normal" stroke-width="1" font-family="&apos;Dialog&apos;" font-style="normal" data-element-id="TCA" stroke-linejoin="miter" font-size="12px" image-rendering="auto" stroke-dashoffset="0"><!--Generated by the Batik Graphics2D SVG Generator--> <defs id="genericDefs"/> <g> <g text-rendering="optimizeQuality" stroke-width="2" shape-rendering="geometricPrecision" font-family="sans-serif"> <rect fill="none" x="420" width="123" y="1" height="82"/> </g> <g fill-opacity="0" fill="rgb(0,0,0)" text-rendering="optimizeQuality" font-family="sans-serif" shape-rendering="geometricPrecision" stroke="rgb(0,0,0)" stroke-opacity="0" stroke-width="2"> <rect x="420" width="123" y="1" height="82" stroke="none"/> </g> <g font-family="sans-serif" shape-rendering="geometricPrecision" text-rendering="optimizeQuality"> <text x="470" xml:space="preserve" y="42" stroke="none">TCA</text> <line y2="62" fill="none" stroke-width="2" x1="420" x2="543" y1="62"/> </g> </g> </g>   <g fill-opacity="1" color-rendering="auto" color-interpolation="auto" text-rendering="auto" stroke="black" stroke-linecap="square" stroke-miterlimit="10" shape-rendering="auto" stroke-opacity="1" fill="black" stroke-dasharray="none" font-weight="normal" stroke-width="1" font-family="&apos;Dialog&apos;" font-style="normal" data-element-id="Arrow_5ae2966f-f971-4c3b-8237-efa551beb531" stroke-linejoin="miter" font-size="12px" image-rendering="auto" stroke-dashoffset="0"><!--Generated by the Batik Graphics2D SVG Generator--> <defs id="genericDefs"/> <g> <g text-rendering="optimizeQuality" stroke-width="2" shape-rendering="geometricPrecision" font-family="sans-serif"> <line y2="41" fill="none" x1="543" x2="662" y1="41"/> <polygon fill="none" points=" 658 38 658 44 664 41"/> <polygon points=" 658 38 658 44 664 41" stroke="none"/> </g> </g> </g> <g fill-opacity="1" color-rendering="auto" color-interpolation="auto" text-rendering="auto" stroke="black" stroke-linecap="square" stroke-miterlimit="10" shape-rendering="auto" stroke-opacity="1" fill="black" stroke-dasharray="none" font-weight="normal" stroke-width="1" font-family="&apos;Dialog&apos;" font-style="normal" data-element-id="Policy" stroke-linejoin="miter" font-size="12px" image-rendering="auto" stroke-dashoffset="0"><!--Generated by the Batik Graphics2D SVG Generator--> <defs id="genericDefs"/> <g> <g text-rendering="optimizeQuality" stroke-width="2" shape-rendering="geometricPrecision" font-family="sans-serif"> <rect fill="none" x="666" width="123" y="1" height="82"/> </g> <g fill-opacity="0" fill="rgb(0,0,0)" text-rendering="optimizeQuality" font-family="sans-serif" shape-rendering="geometricPrecision" stroke="rgb(0,0,0)" stroke-opacity="0" stroke-width="2"> <rect x="666" width="123" y="1" height="82" stroke="none"/> </g> <g font-family="sans-serif" shape-rendering="geometricPrecision" text-rendering="optimizeQuality"> <text x="710" xml:space="preserve" y="42" stroke="none">Policy</text> <line y2="1" fill="none" stroke-width="2" x1="666" x2="727" y1="42"/> </g> </g> </g> <g fill-opacity="1" color-rendering="auto" color-interpolation="auto" text-rendering="auto" stroke="black" stroke-linecap="square" stroke-miterlimit="10" shape-rendering="auto" stroke-opacity="1" fill="black" stroke-dasharray="none" font-weight="normal" stroke-width="1" font-family="&apos;Dialog&apos;" font-style="normal" data-element-id="Arrow_ed5ccaed-6d8c-44e9-8245-85f66523cb44" stroke-linejoin="miter" font-size="12px" image-rendering="auto" stroke-dashoffset="0"><!--Generated by the Batik Graphics2D SVG Generator--> <defs id="genericDefs"/> <g> <g text-rendering="optimizeQuality" stroke-width="2" shape-rendering="geometricPrecision" font-family="sans-serif"> <line y2="41" fill="none" x1="789" x2="908" y1="41"/> <polygon fill="none" points=" 904 38 904 44 910 41"/> <polygon points=" 904 38 904 44 910 41" stroke="none"/> </g> </g> </g> <g fill-opacity="1" color-rendering="auto" color-interpolation="auto" text-rendering="auto" stroke="black" stroke-linecap="square" stroke-miterlimit="10" shape-rendering="auto" stroke-opacity="1" fill="black" stroke-dasharray="none" font-weight="normal" stroke-width="1" font-family="&apos;Dialog&apos;" font-style="normal" data-element-id="circle_stop" stroke-linejoin="miter" font-size="12px" image-rendering="auto" stroke-dashoffset="0"><!--Generated by the Batik Graphics2D SVG Generator--> <defs id="genericDefs"/> <g> <g text-rendering="optimizeQuality" stroke-width="4" shape-rendering="geometricPrecision" font-family="sans-serif"> <circle fill="none" r="17" cx="929" cy="41"/> </g> </g> </g> </svg>';
+		    	var svg = pars;
 			    if ($("#svgContainer").length > 0)
 				    $("#svgContainer").remove();
 			    $("#js-canvas").append(
 			    "<span id=\"svgContainer\">" + svg + "</span>");
-			    /* added code for height width viewBox */
-			    $("#svgContainer svg").removeAttr("height");
-			    $("#svgContainer svg").removeAttr('viewBox');
-			    $("#svgContainer svg").removeAttr('width');
 			    $("#svgContainer svg").attr('width', '100%');
 			    $("#svgContainer svg").attr('height', '100%');
 			    $("#svgContainer").click(
 			    function(event) {
 				    console.log("svgContainer:" + $("#svgContainer svg"));
-				    // console.log($(event.target).parent().html())
-				    // console.log($($(event.target).parent()).attr("data-element-id"))
-				    var name = $($(event.target).parent()).attr("data-element-id")
+				    var name = $($($($(event.target).parent()).parent()).parent()).attr("data-element-id")
 				    lastElementSelected = $($(event.target).parent()).attr(
 				    "data-element-id")
 				    checkIfElementType(name)
diff --git a/src/main/resources/META-INF/resources/designer/scripts/ToscaModelService.js b/src/main/resources/META-INF/resources/designer/scripts/ToscaModelService.js
index 261a69c..c99a455 100644
--- a/src/main/resources/META-INF/resources/designer/scripts/ToscaModelService.js
+++ b/src/main/resources/META-INF/resources/designer/scripts/ToscaModelService.js
@@ -35,11 +35,4 @@
 			return response.data;
 		});
 	};
-	this.getMsProperties = function(policyType) {
-		setTimeout(function(){ alert("Hello"); }, 3000);
-		return getMsUI(policyType);
-	};
-	
-	
-	
  }]);
diff --git a/src/main/resources/META-INF/resources/designer/scripts/app.js b/src/main/resources/META-INF/resources/designer/scripts/app.js
index 9ae2697..59a27bd 100644
--- a/src/main/resources/META-INF/resources/designer/scripts/app.js
+++ b/src/main/resources/META-INF/resources/designer/scripts/app.js
@@ -257,8 +257,6 @@
 				    window.open(value);
 			    } else if (name == "Contact Us") {
 				    $rootScope.contactUs();
-			    } else if (name == "Revert Model Changes") {
-				    $scope.cldsRevertModel();
 			    } else if (name == "Close Model") {
 				    $scope.cldsClose();
 			    } else if (name == "Open CL") {
@@ -299,9 +297,6 @@
 	            link : "/cldsOpenModelProperties",
 	            name : "Properties CL"
 	        }, {
-	            link : "/RevertChanges",
-	            name : "Revert Model Changes"
-	        }, {
 	            link : "/Close",
 	            name : "Close Model"
 	        } ],
@@ -312,7 +307,7 @@
 	        // disabled for Dublin since Policy doesn't support updating in this release
 		    //   link : "/cldsUpdate",
 	        //    name : "Update"
-	        }, {
+	        //}, {
 	            link : "/cldsStop",
 	            name : "Stop"
 	        }, {
@@ -497,25 +492,6 @@
 			    callBack(null);
 		    });
 	    };
-	    $scope.cldsRevertModel = function() {
-
-		    var dlg = dialogs.create(
-		    'partials/portfolios/ConfirmRevertChanges.html',
-		    'CldsOpenModelCtrl', {
-		        closable : true,
-		        draggable : true
-		    }, {
-		        size : 'lg',
-		        keyboard : true,
-		        backdrop : 'static',
-		        windowClass : 'my-class'
-		    });
-		    dlg.result.then(function(name) {
-
-		    }, function() {
-
-		    });
-	    };
 	    $rootScope.cldsOpenModelProperties = function() {
 
 		    var dlg = dialogs.create(
diff --git a/src/main/resources/META-INF/resources/designer/scripts/menuHandler.js b/src/main/resources/META-INF/resources/designer/scripts/menuHandler.js
index 43c9275..1509d3e 100644
--- a/src/main/resources/META-INF/resources/designer/scripts/menuHandler.js
+++ b/src/main/resources/META-INF/resources/designer/scripts/menuHandler.js
@@ -61,13 +61,7 @@
 		    .remove('ThisLink');
 		    document.getElementById('Close Model').classList
 		    .remove('ThisLink');
-		    // disable models options
-		    document.getElementById('Save CL').classList.add('ThisLink');
-		    document.getElementById('Revert Model Changes').classList
-		    .add('ThisLink');
 	    } else {
-		    // enable menu options
-		    document.getElementById('Save CL').classList.remove('ThisLink');
 		    document.getElementById('Properties CL').classList
 		    .remove('ThisLink');
 		    document.getElementById('Revert Model Changes').classList
diff --git a/src/main/resources/META-INF/resources/designer/scripts/propertyController.js b/src/main/resources/META-INF/resources/designer/scripts/propertyController.js
index d479565..c3f1aaf 100644
--- a/src/main/resources/META-INF/resources/designer/scripts/propertyController.js
+++ b/src/main/resources/META-INF/resources/designer/scripts/propertyController.js
@@ -20,9 +20,9 @@
  * ===================================================================
  * 
  */
- function saveMsProperties(type, form) {
+
+function saveMsProperties(type, form) {
 	 var newMsProperties = cl_props["microServicePolicies"];
-	 
     for (p in newMsProperties) {
         if (newMsProperties[p]["name"] == type) {
         	newMsProperties[p]["properties"] = form;
@@ -40,9 +40,9 @@
 		 def.resolve(data);
 	 }).error(function(data) {
 		 def.reject("Save Model not successful");
-		 return def.promise;
-    };
+	 });
     cl_props["microServicePolicies"] = newMsProperties;
+    return def.promise;
 }
 
 function saveGlobalProperties(form) {
@@ -57,9 +57,9 @@
 		 def.resolve(data);
 	 }).error(function(data) {
 		 def.reject("Save Model not successful");
-		 return def.promise;
-    };
+	 });
     cl_props["globalPropertiesJson"] = form;
+    return def.promise;
 }
 
 function saveOpPolicyProperties(form) {
@@ -77,10 +77,10 @@
 		 def.resolve(data);
 	 }).error(function(data) {
 		 def.reject("Save Model not successful");
-		 return def.promise;
-   };
+   });
 	
-        cl_props["operationalPolicies"] = newOpProperties;
+   cl_props["operationalPolicies"] = newOpProperties;
+   return def.promise;
 }
 
 function getOperationalPolicyProperty() {
@@ -122,3 +122,4 @@
 function getDeploymentStatusURL() {
     return cl_props["dcaeDeploymentStatusUrl"];
 }
+module.exports = { getOperationalPolicyProperty,getGlobalProperty,getMsProperty,getMsUI,getStatus,getDeploymentID,getDeploymentStatusURL };
\ No newline at end of file
diff --git a/src/test/java/org/onap/clamp/clds/it/AuthorizationControllerItCase.java b/src/test/java/org/onap/clamp/clds/it/AuthorizationControllerItCase.java
index 477c71a..a15c556 100644
--- a/src/test/java/org/onap/clamp/clds/it/AuthorizationControllerItCase.java
+++ b/src/test/java/org/onap/clamp/clds/it/AuthorizationControllerItCase.java
@@ -25,6 +25,7 @@
 
 import static org.junit.Assert.assertFalse;
 import static org.junit.Assert.assertTrue;
+
 import com.att.eelf.configuration.EELFLogger;
 import com.att.eelf.configuration.EELFManager;
 
@@ -85,7 +86,7 @@
         Mockito.when(securityContext.getAuthentication()).thenReturn(authentication);
         PrincipalUtils.setSecurityContext(securityContext);
 
-        AuthorizationController auth = new AuthorizationController ();
+        AuthorizationController auth = new AuthorizationController();
         assertTrue(auth.isUserPermittedNoException(new SecureServicePermission("permission-type-cl","dev","read")));
         assertTrue(auth.isUserPermittedNoException(new SecureServicePermission("permission-type-cl-manage","dev","DEPLOY")));
         assertTrue(auth.isUserPermittedNoException(new SecureServicePermission("permission-type-filter-vf","dev","12345-55555-55555-5555")));
diff --git a/src/test/javascript/propertyController.test.js b/src/test/javascript/propertyController.test.js
new file mode 100644
index 0000000..6cb7791
--- /dev/null
+++ b/src/test/javascript/propertyController.test.js
@@ -0,0 +1,45 @@
+
+describe('Property controller tests', function() {
+	var clModel = '{"name": "ClosedLoopTest","dcaeDeploymentId":"testId","dcaeDeploymentStatusUrl":"testUrl","lastComputedState":"DESIGN","svgRepresentation": "representation","globalPropertiesJson": [{"name":"deployParameters","value":{"location_id":"","service_id":"","policy_id":"AUTO_GENERATED_POLICY_ID_AT_SUBMIT"}}], "blueprint": "yaml","lastComputedState": "DESIGN","operationalPolicies": [ {"name": "OpPolicyTest", "configurationsJson": { "policy1": [{"name": "pname","value": "policy1"}]}}],"microServicePolicies": [{"name": "tca","properties": "", "shared": true,"policyTosca": "tosca","jsonRepresentation": {"schema":{"title":"DCAE TCA Config","type":"object","required":["name"],"properties":{"name":{"propertyOrder":101,"title":"Name","type":"string"}}}}}],"loopLogs": [{ } ] }';
+	cl_props = JSON.parse(clModel);
+	var propertyController = require('scripts/propertyController.js');
+	
+	test('getOperationalPolicyProperty', () => {
+		var policyProp = '{"policy1": [{"name": "pname","value": "policy1"}]}';
+		expect(propertyController.getOperationalPolicyProperty()).toEqual(JSON.parse(policyProp));
+	});
+
+	test('getGlobalProperty', () => {
+		var globalProp = '[{"name":"deployParameters","value":{"location_id":"","service_id":"","policy_id":"AUTO_GENERATED_POLICY_ID_AT_SUBMIT"}}]';
+		expect(propertyController.getGlobalProperty()).toEqual(JSON.parse(globalProp));
+	});
+
+	test('getMsPropertyTca', () => {
+		expect(propertyController.getMsProperty("tca")).toEqual('');
+	});
+
+	test('getMsUITca', () => {
+		var msUI = '{"schema":{"title":"DCAE TCA Config","type":"object","required":["name"],"properties":{"name":{"propertyOrder":101,"title":"Name","type":"string"}}}}';
+		expect(propertyController.getMsUI("tca")).toEqual(JSON.parse(msUI));
+	});
+
+	test('getMsPropertyNotExist', () => {
+		  expect(propertyController.getMsProperty("test")).toEqual(null);
+	});
+
+	test('getMsUINotExist', () => {
+		  expect(propertyController.getMsUI("test")).toEqual(null);
+	});
+
+	test('getStatus', () => {
+		  expect(propertyController.getStatus()).toEqual('DESIGN');
+	});
+
+	test('getDeploymentID', () => {
+		  expect(propertyController.getDeploymentID()).toEqual('testId');
+	});
+
+	test('getDeploymentStatusURL', () => {
+		  expect(propertyController.getDeploymentStatusURL()).toEqual('testUrl');
+	});
+});
\ No newline at end of file