mirror of
https://gitee.com/dcren/initializr.git
synced 2025-08-01 10:10:19 +08:00
Polish URL assertion
Using UrlAssert#isEqualsTo may lead to incorrect comparison based on local DNS resolution setup. The intention here is to compare the String literal anyway. See gh-1151
This commit is contained in:
parent
13d04c4285
commit
a93610ec0b
@ -28,8 +28,8 @@ import io.spring.initializr.metadata.Dependency;
|
||||
import io.spring.initializr.metadata.Repository;
|
||||
import org.assertj.core.api.BooleanAssert;
|
||||
import org.assertj.core.api.Condition;
|
||||
import org.assertj.core.api.ObjectAssert;
|
||||
import org.assertj.core.api.StringAssert;
|
||||
import org.assertj.core.api.UrlAssert;
|
||||
import org.w3c.dom.DOMException;
|
||||
import org.w3c.dom.Element;
|
||||
import org.w3c.dom.Node;
|
||||
@ -203,9 +203,7 @@ public class MavenBuildAssert extends AbstractTextAssert<MavenBuildAssert> {
|
||||
}
|
||||
}
|
||||
if (dependency.getType() != null) {
|
||||
if (!dependency.getType().equals(actual.getType())) {
|
||||
return false;
|
||||
}
|
||||
return dependency.getType().equals(actual.getType());
|
||||
}
|
||||
return true;
|
||||
}
|
||||
@ -297,12 +295,8 @@ public class MavenBuildAssert extends AbstractTextAssert<MavenBuildAssert> {
|
||||
new StringAssert(repository.getName()).isEqualTo(name);
|
||||
}
|
||||
if (url != null) {
|
||||
try {
|
||||
new UrlAssert(repository.getUrl()).isEqualTo(new URL(url));
|
||||
}
|
||||
catch (MalformedURLException ex) {
|
||||
throw new IllegalArgumentException("Cannot parse URL", ex);
|
||||
}
|
||||
new ObjectAssert<>(repository.getUrl()).describedAs("URL of repository " + id).isNotNull();
|
||||
new StringAssert(repository.getUrl().toExternalForm()).isEqualTo(url);
|
||||
}
|
||||
if (snapshotsEnabled) {
|
||||
new BooleanAssert(repository.isSnapshotsEnabled()).isEqualTo(snapshotsEnabled);
|
||||
|
@ -262,7 +262,7 @@ class MavenBuildAssertTests {
|
||||
|
||||
@Test
|
||||
void hasRepositoriesSize() {
|
||||
assertThat(forMavenBuild("sample-repositories-pom.xml")).hasRepositoriesSize(2);
|
||||
assertThat(forMavenBuild("sample-repositories-pom.xml")).hasRepositoriesSize(3);
|
||||
}
|
||||
|
||||
@Test
|
||||
@ -273,7 +273,7 @@ class MavenBuildAssertTests {
|
||||
@Test
|
||||
void hasRepositoriesSizeWrongSize() {
|
||||
assertThatExceptionOfType(AssertionError.class)
|
||||
.isThrownBy(() -> assertThat(forMavenBuild("sample-repositories-pom.xml")).hasRepositoriesSize(3));
|
||||
.isThrownBy(() -> assertThat(forMavenBuild("sample-repositories-pom.xml")).hasRepositoriesSize(2));
|
||||
}
|
||||
|
||||
@Test
|
||||
@ -309,6 +309,14 @@ class MavenBuildAssertTests {
|
||||
"Acme Milestones", "https://repo.wrong.com/milestone", false));
|
||||
}
|
||||
|
||||
@Test
|
||||
void hasRepositoryWithNullUrl() {
|
||||
assertThatExceptionOfType(AssertionError.class)
|
||||
.isThrownBy(() -> assertThat(forMavenBuild("sample-repositories-pom.xml")).hasRepository("acme-empty",
|
||||
"Acme Empty", "https://repo.wrong.com/milestone", null))
|
||||
.withMessageContaining("URL of repository acme-empty");
|
||||
}
|
||||
|
||||
@Test
|
||||
void hasRepositoryWithWrongSnapshotFlag() {
|
||||
assertThatExceptionOfType(AssertionError.class).isThrownBy(
|
||||
|
@ -21,6 +21,10 @@
|
||||
<enabled>true</enabled>
|
||||
</snapshots>
|
||||
</repository>
|
||||
<repository>
|
||||
<id>acme-empty</id>
|
||||
<name>Acme Empty</name>
|
||||
</repository>
|
||||
</repositories>
|
||||
|
||||
</project>
|
Loading…
Reference in New Issue
Block a user