public void IsRelatedWorks() { BaseBeek original = new BaseBeek(BeekTypes.ShortStory); BaseBeek copy = new BaseBeek(BeekTypes.ShortStory); copy.RelateTo(original, BeekRelationTypes.Original); Assert.IsTrue(copy.IsBeekRelatedToMeAs(original, BeekRelationTypes.Original)); }
public void CanUnRelate() { BaseBeek original = new BaseBeek(BeekTypes.ShortStory); BaseBeek copy = new BaseBeek(BeekTypes.ShortStory); copy.RelateTo(original, BeekRelationTypes.Original); copy.RelateTo(original, BeekRelationTypes.Original); Assert.IsTrue(copy.IsBeekRelatedToMeAs(original, BeekRelationTypes.Original)); copy.UnrelateTo(original, BeekRelationTypes.Original); Assert.IsFalse(copy.IsBeekRelatedToMeAs(original, BeekRelationTypes.Original)); }
public void GetRelatedBeek() { BaseBeek original = new BaseBeek(BeekTypes.ShortStory); BaseBeek copy = new BaseBeek(BeekTypes.ShortStory); BaseBeek copy2 = new BaseBeek(BeekTypes.ShortStory); original.RelateTo(copy, BeekRelationTypes.Republishment); original.RelateTo(copy2, BeekRelationTypes.Republishment); Assert.IsTrue(original.GetRelatedBeekForRelationType(BeekRelationTypes.Republishment).Count() == 2); }
public void CanRelateExactlyOnceToOriginalPerType() { BaseBeek original = new BaseBeek(BeekTypes.ShortStory); BaseBeek copy = new BaseBeek(BeekTypes.ShortStory); copy.RelateTo(original, BeekRelationTypes.Original); Assert.IsTrue(copy.Relations.Contains(new KeyValuePair<BaseBeek, BeekRelationTypes>(original, BeekRelationTypes.Original))); // Second time should be ignored as there is already one copy.RelateTo(original, BeekRelationTypes.Original); Assert.IsTrue( copy.Relations.Where(r=>r.Key == original && r.Value == BeekRelationTypes.Original).Count()==1); }