private Modifications modificationWithIds() { return new Modifications(modifcation(4), modifcation(3), modifcation(2), modifcation(1)); }
@Test public void hasModifcationResults() { Modifications modifications = modificationWithIds(); assertThat(modifications.since(3), is(new Modifications(modifcation(4)))); assertThat(modifications.since(2), is(new Modifications(modifcation(4), modifcation(3)))); try { modifications.since(10); fail("should throw exception"); } catch (Exception e) { assertThat(e.getMessage(), is("Could not find modification 10 in " + modifications)); } try { modifications.since(6); fail("should throw exception"); } catch (Exception e) { assertThat(e.getMessage(), is("Could not find modification 6 in " + modifications)); } }
@Test public void shouldUnderstandIfContainsModificationWithSameRevision() { MaterialInstance materialInstance = MaterialsMother.hgMaterial().createMaterialInstance(); final Modification modification = modificationWith(materialInstance, "1"); final Modification sameModification = modificationWith(materialInstance, "1"); final Modification modificationWithDifferentRev = modificationWith(materialInstance, "2"); final Modification modificationWithDifferentMaterial = modificationWith(MaterialsMother.hgMaterial("http://foo.com").createMaterialInstance(), "1"); Modifications modifications = new Modifications(modification); assertThat(modifications.containsRevisionFor(modification), is(true)); assertThat(modifications.containsRevisionFor(sameModification), is(true)); assertThat(modifications.containsRevisionFor(modificationWithDifferentRev), is(false)); assertThat(modifications.containsRevisionFor(modificationWithDifferentMaterial), is(true)); //note that its checking for revision and not material instance }
@Test public void hasModifcationShouldReturnCorrectResults() { Modifications modifications = modificationWithIds(); assertThat(modifications.hasModfication(3), is(true)); assertThat(modifications.hasModfication(2), is(true)); assertThat(modifications.hasModfication(5), is(false)); assertThat(modifications.hasModfication(0), is(false)); }