From 93d0142a5f242e7616259ae21aa5eed4d3cc1263 Mon Sep 17 00:00:00 2001 From: Michael Osipov Date: Sun, 7 Apr 2024 22:36:23 +0200 Subject: [PATCH] [SCM-1024] maven-scm-plugin tests do not properly check for existence of svn command This closes #205 --- .../selector.groovy | 26 +++++++++++++++++++ .../src/it/scm-781/selector.groovy | 26 +++++++++++++++++++ .../maven/scm/plugin/ChangeLogMojoTest.java | 5 ++++ 3 files changed, 57 insertions(+) create mode 100644 maven-scm-plugin/src/it/scm-741-validate-scm-url-matches-working-copy/selector.groovy create mode 100644 maven-scm-plugin/src/it/scm-781/selector.groovy diff --git a/maven-scm-plugin/src/it/scm-741-validate-scm-url-matches-working-copy/selector.groovy b/maven-scm-plugin/src/it/scm-741-validate-scm-url-matches-working-copy/selector.groovy new file mode 100644 index 000000000..f80990866 --- /dev/null +++ b/maven-scm-plugin/src/it/scm-741-validate-scm-url-matches-working-copy/selector.groovy @@ -0,0 +1,26 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you 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. + */ + +try { + def proc = "svn".execute() + proc.consumeProcessOutput() + proc.waitFor() +} catch (IOException e) { + return false +} diff --git a/maven-scm-plugin/src/it/scm-781/selector.groovy b/maven-scm-plugin/src/it/scm-781/selector.groovy new file mode 100644 index 000000000..f80990866 --- /dev/null +++ b/maven-scm-plugin/src/it/scm-781/selector.groovy @@ -0,0 +1,26 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you 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. + */ + +try { + def proc = "svn".execute() + proc.consumeProcessOutput() + proc.waitFor() +} catch (IOException e) { + return false +} diff --git a/maven-scm-plugin/src/test/java/org/apache/maven/scm/plugin/ChangeLogMojoTest.java b/maven-scm-plugin/src/test/java/org/apache/maven/scm/plugin/ChangeLogMojoTest.java index 6c7b0ad87..83578f85a 100644 --- a/maven-scm-plugin/src/test/java/org/apache/maven/scm/plugin/ChangeLogMojoTest.java +++ b/maven-scm-plugin/src/test/java/org/apache/maven/scm/plugin/ChangeLogMojoTest.java @@ -108,6 +108,11 @@ public void testChangeLogWithBadUserDateFormat() throws Exception { } public void testChangeLogWithBadConnectionUrl() throws Exception { + if (!ScmTestCase.isSystemCmd(SvnScmTestUtils.SVN_COMMAND_LINE)) { + ScmTestCase.printSystemCmdUnavail(SvnScmTestUtils.SVN_COMMAND_LINE, getName()); + return; + } + ChangeLogMojo mojo = (ChangeLogMojo) lookupMojo( "changelog", getTestFile("src/test/resources/mojos/changelog/changelogWithBadConnectionUrl.xml"));