From 508f14f27141b70c63e336cba52410610ef8c263 Mon Sep 17 00:00:00 2001 From: LamGC Date: Wed, 15 Jun 2022 02:19:14 +0800 Subject: [PATCH] =?UTF-8?q?test:=20=E6=96=B0=E5=A2=9E=E5=AF=B9=20Artifact.?= =?UTF-8?q?equalsArtifact=20=E7=9A=84=E5=AE=8C=E6=95=B4=E5=8D=95=E5=85=83?= =?UTF-8?q?=E6=B5=8B=E8=AF=95.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 该测试已确保完全覆盖(100%). --- .../src/test/kotlin/util/UtilsKtTest.kt | 39 +++++++++++++++++++ 1 file changed, 39 insertions(+) diff --git a/scalabot-app/src/test/kotlin/util/UtilsKtTest.kt b/scalabot-app/src/test/kotlin/util/UtilsKtTest.kt index 7881d33..a7fc39d 100644 --- a/scalabot-app/src/test/kotlin/util/UtilsKtTest.kt +++ b/scalabot-app/src/test/kotlin/util/UtilsKtTest.kt @@ -116,4 +116,43 @@ internal class UtilsKtTest { resourceSet.clear() } + + @Test + fun `Artifact equals`() { + val artifact = DefaultArtifact("org.example:artifact:jar:0.0.1") + assertFalse(artifact.isSnapshot, "Release artifact is snapshot.") + assertTrue(artifact.equalsArtifact(artifact)) + assertTrue(artifact.setFile(File(".")).equalsArtifact(artifact.setFile(File(".")))) + val snapshotArtifact = DefaultArtifact("org.example:artifact:jar:0.0.1-SNAPSHOT") + val snapshotTimestampArtifact = DefaultArtifact("org.example:artifact:jar:0.0.1-20220605.130047-1") + assertTrue(snapshotArtifact.isSnapshot, "SnapshotArtifact not snapshot.") + assertNotEquals(artifact.isSnapshot, snapshotArtifact.isSnapshot) + assertNotEquals(artifact.baseVersion, snapshotArtifact.baseVersion) + assertFalse(artifact.equalsArtifact(snapshotArtifact)) + assertFalse(snapshotArtifact.equalsArtifact(snapshotTimestampArtifact)) + assertFalse(artifact.equalsArtifact(DefaultArtifact("org.example:artifact:0.0.2"))) + assertFalse(artifact.equalsArtifact(DefaultArtifact("org.example.test:artifact:0.0.1"))) + assertFalse(artifact.equalsArtifact(DefaultArtifact("org.example:artifact-a:0.0.1"))) + assertFalse(artifact.equalsArtifact(DefaultArtifact("org.example:artifact:war:0.0.1"))) + assertFalse(artifact.equalsArtifact(DefaultArtifact("org.example:artifact:war:javadoc:0.0.1"))) + assertFalse(artifact.equalsArtifact(DefaultArtifact("org.example:artifact:rar:source:0.0.1"))) + + assertFalse( + artifact.equalsArtifact( + DefaultArtifact("org.example:artifact:jar:0.0.1") + .setFile(File("./xxx01.jar")) + ) + ) + + val artifactWithExtension = DefaultArtifact("org.example:artifact:jar:0.0.1") + assertFalse(artifactWithExtension.equalsArtifact(DefaultArtifact("org.example:artifact:war:0.0.1"))) + + assertTrue(artifact.equalsArtifact(artifact.setProperties(mapOf(Pair("a", "b"))), checkProperties = false)) + assertFalse(artifact.equalsArtifact(artifact.setProperties(mapOf(Pair("a", "b"))), checkProperties = true)) + assertTrue( + artifact.setProperties(mapOf(Pair("a", "b"))) + .equalsArtifact(artifact.setProperties(mapOf(Pair("a", "b"))), checkProperties = true) + ) + } + } \ No newline at end of file