Add new code new version
[sdc.git] / openecomp-ui / test / softwareProduct / components / monitoring / SoftwareProductComponentsMonitoring.test.js
1 /*-
2  * ============LICENSE_START=======================================================
3  * SDC
4  * ================================================================================
5  * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
6  * ================================================================================
7  * Licensed under the Apache License, Version 2.0 (the "License");
8  * you may not use this file except in compliance with the License.
9  * You may obtain a copy of the License at
10  * 
11  *      http://www.apache.org/licenses/LICENSE-2.0
12  * 
13  * Unless required by applicable law or agreed to in writing, software
14  * distributed under the License is distributed on an "AS IS" BASIS,
15  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16  * See the License for the specific language governing permissions and
17  * limitations under the License.
18  * ============LICENSE_END=========================================================
19  */
20
21 import expect from 'expect';
22 import React from 'react';
23 import TestUtils from 'react-addons-test-utils';
24 import {mapStateToProps} from 'sdc-app/onboarding/softwareProduct/components/monitoring/SoftwareProductComponentsMonitoring.js';
25 import SoftwareProductComponentsMonitoringView from 'sdc-app/onboarding/softwareProduct/components/monitoring/SoftwareProductComponentsMonitoringView.jsx';
26
27 describe('SoftwareProductComponentsMonitoring Module Tests', function () {
28
29         it('should mapper exist', () => {
30                 expect(mapStateToProps).toExist();
31         });
32
33         it('should return empty file names', () => {
34                 let softwareProduct = {softwareProductEditor: {data: {}}, softwareProductComponents: {monitoring: {}}};
35                 var results = mapStateToProps({softwareProduct});
36                 expect(results.trapFilename).toEqual(undefined);
37                 expect(results.pollFilename).toEqual(undefined);
38         });
39
40         it('should return trap file name', () => {
41                 const monitoring = {
42                         trapFilename: '123'
43                 };
44                 let softwareProduct = {softwareProductEditor: {data: {}}, softwareProductComponents: {monitoring}};
45                 var results = mapStateToProps({softwareProduct});
46                 expect(results.trapFilename).toEqual(monitoring.trapFilename);
47                 expect(results.pollFilename).toEqual(undefined);
48         });
49
50         it('should return poll file names', () => {
51                 const monitoring = {
52                         pollFilename: '123'
53                 };
54                 let softwareProduct = {softwareProductEditor: {data: {}}, softwareProductComponents: {monitoring}};
55                 var results = mapStateToProps({softwareProduct});
56                 expect(results.trapFilename).toEqual(undefined);
57                 expect(results.pollFilename).toEqual(monitoring.pollFilename);
58
59                 let renderer = TestUtils.createRenderer();
60                 renderer.render(<SoftwareProductComponentsMonitoringView {...results} />);
61                 let renderedOutput = renderer.getRenderOutput();
62                 expect(renderedOutput).toExist();
63         });
64
65         it('should return both file names', () => {
66                 const monitoring = {
67                         trapFilename: '1234',
68                         trapFilename: '123'
69                 };
70                 let softwareProduct = {softwareProductEditor: {data: {}}, softwareProductComponents: {monitoring}};
71                 var results = mapStateToProps({softwareProduct});
72                 expect(results.trapFilename).toEqual(monitoring.trapFilename);
73                 expect(results.pollFilename).toEqual(monitoring.pollFilename);
74
75                 let renderer = TestUtils.createRenderer();
76                 renderer.render(<SoftwareProductComponentsMonitoringView {...results} />);
77                 let renderedOutput = renderer.getRenderOutput();
78                 expect(renderedOutput).toExist();
79         });
80
81         it('should change state to dragging', done => {
82                 var view = TestUtils.renderIntoDocument(<SoftwareProductComponentsMonitoringView />);
83                 expect(view.state.dragging).toBe(false);
84                 view.handleOnDragEnter(false);
85                 setTimeout(()=> {
86                         expect(view.state.dragging).toBe(true);
87                         done();
88                 }, 100);
89         });
90
91         it('should not change state to dragging', done => {
92                 var view = TestUtils.renderIntoDocument(<SoftwareProductComponentsMonitoringView />);
93                 expect(view.state.dragging).toBe(false);
94                 view.handleOnDragEnter(true);
95                 setTimeout(()=> {
96                         expect(view.state.dragging).toBe(false);
97                         done();
98                 }, 0);
99         });
100
101 });