};
renderCommandForMaven = () => {
- const { token } = this.props;
+ const { component, token } = this.props;
if (!token) {
return null;
}
- return <JavaMaven host={getHostUrl()} organization={this.props.organization} token={token} />;
+ return (
+ <JavaMaven
+ host={getHostUrl()}
+ organization={this.props.organization}
+ projectKey={component && component.key}
+ token={token}
+ />
+ );
};
renderCommandForGradle = () => {
- const { token } = this.props;
+ const { component, token } = this.props;
if (!token) {
return null;
}
- return <JavaGradle host={getHostUrl()} organization={this.props.organization} token={token} />;
+ return (
+ <JavaGradle
+ host={getHostUrl()}
+ organization={this.props.organization}
+ projectKey={component && component.key}
+ token={token}
+ />
+ );
};
renderCommandForDotNet = () => {
interface Props {
host: string;
organization?: string;
+ projectKey?: string;
token: string;
}
const command = [
'./gradlew sonarqube',
+ props.projectKey && `-Dsonar.projectKey=${props.projectKey}`,
props.organization && `-Dsonar.organization=${props.organization}`,
`-Dsonar.host.url=${props.host}`,
`-Dsonar.login=${props.token}`
interface Props {
host: string;
organization?: string;
+ projectKey?: string;
token: string;
}
export default function JavaMaven(props: Props) {
const command = [
'mvn sonar:sonar',
+ props.projectKey && `-Dsonar.projectKey=${props.projectKey}`,
props.organization && `-Dsonar.organization=${props.organization}`,
`-Dsonar.host.url=${props.host}`,
`-Dsonar.login=${props.token}`
shallow(<JavaGradle host="host" organization="organization" token="token" />)
).toMatchSnapshot();
});
+
+it('renders with projectKey', () => {
+ expect(
+ shallow(<JavaGradle host="host" organization="organization" projectKey="foo" token="token" />)
+ ).toMatchSnapshot();
+});
shallow(<JavaMaven host="host" organization="organization" token="token" />)
).toMatchSnapshot();
});
+
+it('renders with projectKey', () => {
+ expect(
+ shallow(<JavaMaven host="host" organization="organization" projectKey="foo" token="token" />)
+ ).toMatchSnapshot();
+});
Array [
"./gradlew sonarqube",
undefined,
+ undefined,
"-Dsonar.host.url=host",
"-Dsonar.login=token",
]
snippet={
Array [
"./gradlew sonarqube",
+ undefined,
+ "-Dsonar.organization=organization",
+ "-Dsonar.host.url=host",
+ "-Dsonar.login=token",
+ ]
+ }
+ />
+ <p
+ className="big-spacer-top markdown"
+ dangerouslySetInnerHTML={
+ Object {
+ "__html": "onboarding.analysis.java.gradle.docs",
+ }
+ }
+ />
+ <p
+ className="big-spacer-top markdown"
+ dangerouslySetInnerHTML={
+ Object {
+ "__html": "onboarding.analysis.browse_url_after_analysis",
+ }
+ }
+ />
+</div>
+`;
+
+exports[`renders with projectKey 1`] = `
+<div>
+ <h4
+ className="spacer-bottom"
+ >
+ onboarding.analysis.java.gradle.header
+ </h4>
+ <InstanceMessage
+ message="onboarding.analysis.java.gradle.text.1"
+ />
+ <CodeSnippet
+ snippet="plugins {
+ id \\"org.sonarqube\\" version \\"2.6\\"
+}"
+ />
+ <p
+ className="spacer-top spacer-bottom markdown"
+ >
+ onboarding.analysis.java.gradle.text.2
+ </p>
+ <CodeSnippet
+ snippet={
+ Array [
+ "./gradlew sonarqube",
+ "-Dsonar.projectKey=foo",
"-Dsonar.organization=organization",
"-Dsonar.host.url=host",
"-Dsonar.login=token",
Array [
"mvn sonar:sonar",
undefined,
+ undefined,
"-Dsonar.host.url=host",
"-Dsonar.login=token",
]
snippet={
Array [
"mvn sonar:sonar",
+ undefined,
+ "-Dsonar.organization=organization",
+ "-Dsonar.host.url=host",
+ "-Dsonar.login=token",
+ ]
+ }
+ />
+ <p
+ className="big-spacer-top markdown"
+ dangerouslySetInnerHTML={
+ Object {
+ "__html": "onboarding.analysis.java.maven.docs",
+ }
+ }
+ />
+ <p
+ className="big-spacer-top markdown"
+ dangerouslySetInnerHTML={
+ Object {
+ "__html": "onboarding.analysis.browse_url_after_analysis",
+ }
+ }
+ />
+</div>
+`;
+
+exports[`renders with projectKey 1`] = `
+<div>
+ <h4
+ className="spacer-bottom"
+ >
+ onboarding.analysis.java.maven.header
+ </h4>
+ <p
+ className="spacer-bottom markdown"
+ >
+ <InstanceMessage
+ message="onboarding.analysis.java.maven.text"
+ />
+ </p>
+ <CodeSnippet
+ snippet={
+ Array [
+ "mvn sonar:sonar",
+ "-Dsonar.projectKey=foo",
"-Dsonar.organization=organization",
"-Dsonar.host.url=host",
"-Dsonar.login=token",