]> source.dussan.org Git - sonarqube.git/blob
b7bcb7e89628fa37ef149fca048ad273b306a613
[sonarqube.git] /
1 /*
2  * SonarQube
3  * Copyright (C) 2009-2020 SonarSource SA
4  * mailto:info AT sonarsource DOT com
5  *
6  * This program is free software; you can redistribute it and/or
7  * modify it under the terms of the GNU Lesser General Public
8  * License as published by the Free Software Foundation; either
9  * version 3 of the License, or (at your option) any later version.
10  *
11  * This program is distributed in the hope that it will be useful,
12  * but WITHOUT ANY WARRANTY; without even the implied warranty of
13  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
14  * Lesser General Public License for more details.
15  *
16  * You should have received a copy of the GNU Lesser General Public License
17  * along with this program; if not, write to the Free Software Foundation,
18  * Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
19  */
20 import { shallow } from 'enzyme';
21 import * as React from 'react';
22 import { ProjectAnalysisModes } from '../../../ProjectAnalysisStepFromBuildTool';
23 import JavaGradleCustom from '../JavaGradleCustom';
24 import { RenderCustomContent } from '../JavaMavenCustom';
25
26 const host = 'https://sonarcloud.io';
27 const organization = 'use-the-force';
28 const projectKey = 'luke-lightsaber';
29 const token = 'sonarsource123';
30
31 it('should render correctly', () => {
32   expect(
33     shallow(
34       <JavaGradleCustom
35         host={host}
36         mode={ProjectAnalysisModes.Custom}
37         onDone={jest.fn()}
38         organization={organization}
39         projectKey={projectKey}
40         toggleModal={jest.fn()}
41         token={token}
42       />
43     )
44   ).toMatchSnapshot();
45 });
46
47 it('should render gradle custom content', () => {
48   const command = [
49     './gradlew sonarqube',
50     projectKey && `-Dsonar.projectKey=${projectKey}`,
51     organization && `-Dsonar.organization=${organization}`,
52     `-Dsonar.host.url=${host}`,
53     `-Dsonar.login=${token}`
54   ];
55   const onDone = jest.fn();
56   const toggleModal = jest.fn();
57
58   expect(
59     <RenderCustomContent
60       command={command}
61       linkText="onboarding.analysis.java.gradle.docs_link"
62       linkUrl="http://redirect.sonarsource.com/doc/gradle.html"
63       onDone={onDone}
64       toggleModal={toggleModal}
65     />
66   ).toMatchSnapshot();
67 });