### Question:
DefaultManagedArtifact implements ManagedArtifact { @Override public boolean equals(Object other) { if (this == other) { return true; } if (!(other instanceof DefaultManagedArtifact)) { return false; } DefaultManagedArtifact otherManagedArtifact = DefaultManagedArtifact.class.cast(other); if (!getArtifactName().equals(otherManagedArtifact.getArtifactName())) { return false; } if (!getSubFolderName().equals(otherManagedArtifact.getSubFolderName())) { return false; } return getUIDFolderName().equals(otherManagedArtifact.getUIDFolderName()); } DefaultManagedArtifact();   DefaultManagedArtifact(String pathName); @SuppressWarnings("unchecked") T getRequestParameters(); void initFromPath(String absolutePath); void initFromUploadedArtifact(UploadedArtifact uploaded); String getArtifactName(); byte[] getArtifactContents(); boolean matchesPathInfo(String pathInfo); boolean isExpired(); String getHttpContentType(); @Override boolean equals(Object other); @Override int hashCode(); @Override String toString(); String getAbsolutePath();  }### Answer:
@Test public void testReflexive() { DefaultManagedArtifact managedArtifact = new DefaultManagedArtifact(artifactFileOnePath); Assert.assertEquals(managedArtifact.equals(managedArtifact), true, "Managed artifact comparison is not reflexive"); }
@Test public void testSymmetry() { DefaultManagedArtifact managedArtifactOne = new DefaultManagedArtifact(artifactFileOnePath); DefaultManagedArtifact managedArtifactTwo = new DefaultManagedArtifact(artifactFileOnePath); Assert.assertEquals(managedArtifactOne.equals(managedArtifactTwo), true, "Managed artifact comparison is not symmetric"); Assert.assertEquals(managedArtifactTwo.equals(managedArtifactOne), true, "Managed artifact comparison is not symmetric"); }
@Test public void testTransitive() { DefaultManagedArtifact managedArtifactOne = new DefaultManagedArtifact(artifactFileOnePath); DefaultManagedArtifact managedArtifactTwo = new DefaultManagedArtifact(artifactFileOnePath); DefaultManagedArtifact managedArtifactThree = new DefaultManagedArtifact(artifactFileOnePath); Assert.assertEquals(managedArtifactOne.equals(managedArtifactTwo), true, "Managed artifact comparison is not transitive"); Assert.assertEquals(managedArtifactTwo.equals(managedArtifactThree), true, "Managed artifact comparison is not transitive"); Assert.assertEquals(managedArtifactOne.equals(managedArtifactThree), true, "Managed artifact comparison is not transitive"); }