Add new code new version

Change-Id: Ic02a76313503b526f17c3df29eb387a29fe6a42a
Signed-off-by: Michael Lando <ml636r@att.com>
diff --git a/openecomp-ui/test/softwareProduct/attachments/SoftwareproductAttachmentsHelper.test.js b/openecomp-ui/test/softwareProduct/attachments/SoftwareproductAttachmentsHelper.test.js
new file mode 100644
index 0000000..851560c
--- /dev/null
+++ b/openecomp-ui/test/softwareProduct/attachments/SoftwareproductAttachmentsHelper.test.js
@@ -0,0 +1,153 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * 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=========================================================
+ */
+
+import expect from 'expect';
+import SoftwareProductAttachmentsActionHelper from 'sdc-app/onboarding/softwareProduct/attachments/SoftwareProductAttachmentsActionHelper.js';
+import {storeCreator} from 'sdc-app/AppStore.js';
+import deepFreeze from 'deep-freeze';
+import {actionTypes} from 'sdc-app/onboarding/softwareProduct/SoftwareProductConstants.js';
+
+
+
+
+
+
+describe('SoftwareProductAttachments ActionHelper', () => {
+
+	it('function does exist', () => {
+		expect(SoftwareProductAttachmentsActionHelper).toExist();
+	});
+
+	it('toggleExpanded function check', () => {
+
+
+		const validationData = {
+			importStructure: {
+				HEAT: [
+					{
+						fileName: 'hot-mog-0108-bs1271.yml',
+						env: {
+							fileName: 'hot-mog-0108-bs1271.env'
+						},
+						errors: [
+							{
+								'level': 'WARNING',
+								'message': 'Port not bind to any NOVA Server, Resource Id [sm02_port_2]'
+							},
+							{
+								'level': 'WARNING',
+								'message': 'Port not bind to any NOVA Server, Resource Id [sm01_port_2]'
+							}
+						]
+					}
+				]
+			}
+		};
+
+		const currentSoftwareProduct = {
+			name: 'VSp',
+			description: 'dfdf',
+			vendorName: 'V1',
+			vendorId: '97B3E2525E0640ACACF87CE6B3753E80',
+			category: 'resourceNewCategory.application l4+',
+			subCategory: 'resourceNewCategory.application l4+.database',
+			id: 'D4774719D085414E9D5642D1ACD59D20',
+			version: '0.10',
+			viewableVersions: ['0.1', '0.2'],
+			status: 'Locked',
+			lockingUser: 'cs0008',
+			validationData
+		};
+
+
+		const store = storeCreator();
+		deepFreeze(store.getState());
+		deepFreeze(currentSoftwareProduct);
+
+		store.dispatch({
+			type:actionTypes.SOFTWARE_PRODUCT_LOADED,
+			response: currentSoftwareProduct
+		});
+
+		expect(store.getState().softwareProduct.softwareProductAttachments.attachmentsTree.children[0].expanded).toBe(true);
+		SoftwareProductAttachmentsActionHelper.toggleExpanded(store.dispatch, {path:[0]});
+		expect(store.getState().softwareProduct.softwareProductAttachments.attachmentsTree.children[0].expanded).toBe(false);
+	});
+
+	it('onSelectNode & onUnselectNode function check', () => {
+
+
+		const validationData = {
+			importStructure: {
+				HEAT: [
+					{
+						fileName: 'hot-mog-0108-bs1271.yml',
+						env: {
+							fileName: 'hot-mog-0108-bs1271.env'
+						},
+						errors: [
+							{
+								'level': 'WARNING',
+								'message': 'Port not bind to any NOVA Server, Resource Id [sm02_port_2]'
+							},
+							{
+								'level': 'WARNING',
+								'message': 'Port not bind to any NOVA Server, Resource Id [sm01_port_2]'
+							}
+						]
+					}
+				]
+			}
+		};
+
+		const currentSoftwareProduct = {
+			name: 'VSp',
+			description: 'dfdf',
+			vendorName: 'V1',
+			vendorId: '97B3E2525E0640ACACF87CE6B3753E80',
+			category: 'resourceNewCategory.application l4+',
+			subCategory: 'resourceNewCategory.application l4+.database',
+			id: 'D4774719D085414E9D5642D1ACD59D20',
+			version: '0.10',
+			viewableVersions: ['0.1', '0.2'],
+			status: 'Locked',
+			lockingUser: 'cs0008',
+			validationData
+		};
+
+		deepFreeze(currentSoftwareProduct);
+		
+		const store = storeCreator();
+		deepFreeze(store.getState());
+
+		store.dispatch({
+			type:actionTypes.SOFTWARE_PRODUCT_LOADED,
+			response: currentSoftwareProduct
+		});
+		let expectedNodeName = 'name';
+		expect(store.getState().softwareProduct.softwareProductAttachments.selectedNode).toBe(undefined);
+		SoftwareProductAttachmentsActionHelper.onSelectNode(store.dispatch, {nodeName:expectedNodeName});
+		expect(store.getState().softwareProduct.softwareProductAttachments.selectedNode).toBe(expectedNodeName);
+		SoftwareProductAttachmentsActionHelper.onUnselectNode(store.dispatch);
+		expect(store.getState().softwareProduct.softwareProductAttachments.selectedNode).toBe(undefined);
+	});
+
+
+});