private String getSlugPath(Container parent, String desiredPath) { String slugPath=null; if(desiredPath!=null) { Slug slug=parent.findSlug(desiredPath); if(slug==null) { slug=parent.addSlug(desiredPath); } slugPath=slug.nextPath(); } return slugPath; }
@Test public void testAddSlug$new$derived_path$mergeable() throws Exception { Slug original = this.container.addSlug("slug"); Slug slug = this.container.addSlug("slug_23"); assertThat(slug,sameInstance(original)); assertThat(original.version(),equalTo(23L)); assertThat(this.container.findSlug("slug"),sameInstance(original)); }
@Test public void testAddSlug$new() throws Exception { Slug slug = this.container.addSlug("slug"); assertThat(slug,notNullValue()); assertThat(this.container.findSlug("slug"),sameInstance(slug)); }
@Test public void testAddSlug$new$derived_path$not_mergeable$lower() throws Exception { Slug original = this.container.addSlug("slug"); original.nextPath(); assertThat(original.version(),equalTo(1L)); original.nextPath(); assertThat(original.version(),equalTo(2L)); original.nextPath(); assertThat(original.version(),equalTo(3L)); Slug slug = this.container.addSlug("slug_2"); assertThat(slug,notNullValue()); assertThat(slug.preferredPath(),equalTo("slug_2")); assertThat(slug.version(),equalTo(1L)); assertThat(original.version(),equalTo(3L)); }
@Test public void testAddSlug$new$derived_path$not_mergeable$equal() throws Exception { Slug original = this.container.addSlug("slug"); original.nextPath(); assertThat(original.version(),equalTo(1L)); original.nextPath(); assertThat(original.version(),equalTo(2L)); original.nextPath(); assertThat(original.version(),equalTo(3L)); Slug slug = this.container.addSlug("slug_3"); assertThat(slug,sameInstance(original)); assertThat(original.version(),equalTo(3L)); }
@Override public void execute(ResourceRepository sut) { Resource result1 = sut.resourceOfId(resourceId); debug("Retrieving resource {%s}: %s",resourceId,result1); Resource attachment = result1.attach(PersonHandler.ADDRESS_ID,attachmentId); sut.add(attachment); debug("Created attachment: %s",attachment); Container result2 = sut.containerOfId(containerId); debug("Retrieving container {%s}: %s",containerId,result2); Slug slug1=result2.addSlug("test"); debug("Created slug: %s",slug1); Slug slug2=result2.addSlug("anotherTest"); debug("Created slug: %s",slug2); Resource member = result2.addMember(memberId); sut.add(member); debug("Created member: %s",member); } }