blob: f5ed0ae1086bd5109d6b76e40bbd8c51c73e84b7 [file] [log] [blame]
xuegao841ddaa2019-09-19 14:23:14 +02001/*-
2 * ============LICENSE_START=======================================================
3 * ONAP CLAMP
4 * ================================================================================
5 * Copyright (C) 2019 AT&T Intellectual Property. All rights
6 * reserved.
7 * ================================================================================
8 * Licensed under the Apache License, Version 2.0 (the "License");
9 * you may not use this file except in compliance with the License.
10 * You may obtain a copy of the License at
11 *
12 * http://www.apache.org/licenses/LICENSE-2.0
13 *
14 * Unless required by applicable law or agreed to in writing, software
15 * distributed under the License is distributed on an "AS IS" BASIS,
16 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
17 * See the License for the specific language governing permissions and
18 * limitations under the License.
19 * ============LICENSE_END============================================
20 * ===================================================================
21 *
22 */
23import React from 'react';
24import { shallow } from 'enzyme';
sebdet4dc849f2019-11-15 17:49:42 +010025import UserInfoModal from './UserInfoModal';
xuegao841ddaa2019-09-19 14:23:14 +020026
sebdet4dc849f2019-11-15 17:49:42 +010027describe('Verify UserInfoModal', () => {
xuegao841ddaa2019-09-19 14:23:14 +020028
29 beforeEach(() => {
30 fetch.resetMocks();
31 fetch.mockImplementation(() => {
32 return Promise.resolve({
33 ok: true,
34 status: 200,
35 json: () => {
36 return Promise.resolve({
37 "userName": "test",
xuegao564fdb02019-10-02 11:18:10 +020038 "cldsVersion": "1.0.0"
xuegao841ddaa2019-09-19 14:23:14 +020039 });
40 }});
41 });
42 })
43
44 it('Test the render method full permission', () => {
sebdet4dc849f2019-11-15 17:49:42 +010045 const component = shallow(<UserInfoModal />)
xuegao841ddaa2019-09-19 14:23:14 +020046 component.setState({ userInfo: {
47 "userName": "test",
48 "cldsVersion": "1.0.0",
sebdet76580072020-02-23 09:31:04 -080049 "allPermissions": ["permission1","permission2"]
xuegao841ddaa2019-09-19 14:23:14 +020050 }});
51 expect(component).toMatchSnapshot();
52 });
53
54 it('Test the render method no permission', () => {
sebdet4dc849f2019-11-15 17:49:42 +010055 const component = shallow(<UserInfoModal />)
xuegao841ddaa2019-09-19 14:23:14 +020056 component.setState({ userInfo: {}
57 });
58
59 expect(component.find('FormControl').length).toEqual(0);
60 });
61
62 it('Test the render method read permission', () => {
sebdet4dc849f2019-11-15 17:49:42 +010063 const component = shallow(<UserInfoModal />)
xuegao841ddaa2019-09-19 14:23:14 +020064 component.setState({ userInfo: {
65 "userName": "test",
66 "cldsVersion": "1.0.0",
sebdet76580072020-02-23 09:31:04 -080067 "allPermissions": ["permission1","permission2"]
xuegao841ddaa2019-09-19 14:23:14 +020068 }});
69
sebdet76580072020-02-23 09:31:04 -080070 expect(component.find('FormControl').length).toEqual(4);
xuegao841ddaa2019-09-19 14:23:14 +020071
72 const forms = component.find('FormControl');
73 expect(forms.get(0).props.defaultValue).toEqual("test");
74 expect(forms.get(1).props.defaultValue).toEqual("1.0.0");
sebdet76580072020-02-23 09:31:04 -080075 expect(forms.get(2).props.defaultValue).toEqual("permission1");
76 expect(forms.get(3).props.defaultValue).toEqual("permission2");
xuegao841ddaa2019-09-19 14:23:14 +020077 });
78});