public void CanGetNoPairsFromZeroTrickCollection() { this.Collection = new Shred30ContactCollection(); List <Shred30ContactPair> pairsFromOneTrick = this.Collection.GetPairCollection().ToList(); Assert.IsTrue(!pairsFromOneTrick.Any()); }
public void CanAddToCollection() { this.Collection = new Shred30ContactCollection(); this.Collection.Add(new Shred30Trick(OrdinalSideType.Left, MockFootbagTricks.Ripwalk)); Assert.AreEqual(MockFootbagTricks.Ripwalk.TrickId, this.Collection[0].FootbagTrick.TrickId); }
public void CanGetNoPairsFromOneTrickCollection() { List <IShred30Contact> contacts = new List <IShred30Contact> { new Shred30Trick(OrdinalSideType.Left, MockFootbagTricks.Ripwalk), }; this.Collection = new Shred30ContactCollection(contacts); List <Shred30ContactPair> pairsFromOneTrick = this.Collection.GetPairCollection().ToList(); Assert.IsTrue(!pairsFromOneTrick.Any()); }
public void CanGetCollectionFromList() { List <IShred30Contact> contacts = new List <IShred30Contact> { new Shred30Trick(OrdinalSideType.Left, MockFootbagTricks.Ripwalk), new Shred30Trick(OrdinalSideType.Right, MockFootbagTricks.Blur) }; this.Collection = new Shred30ContactCollection(contacts); Assert.AreEqual(MockFootbagTricks.Ripwalk.TrickId, this.Collection[0].FootbagTrick.TrickId); Assert.AreEqual(MockFootbagTricks.Blur.TrickId, this.Collection[1].FootbagTrick.TrickId); }
/// <summary>Gets the unique contacts.</summary> /// <param name="shred30Contacts">The shred30 contacts.</param> public IEnumerable <IShred30Contact> GetUniqueContacts(IEnumerable <IShred30Contact> shred30Contacts) { Shred30ContactCollection uniqueContacts = new Shred30ContactCollection(); foreach (IShred30Contact contact in shred30Contacts) { if (contact.CanBeUnique && !uniqueContacts.Contains(contact, new Shred30ContactComparer())) { uniqueContacts.Add(contact); } } return(this.GetFinalizedUniqueContacts(uniqueContacts)); }
public void CanGetPairsFromCollection() { List <IShred30Contact> contacts = new List <IShred30Contact> { new Shred30Trick(OrdinalSideType.Left, MockFootbagTricks.Ripwalk), new Shred30Trick(OrdinalSideType.Right, MockFootbagTricks.Blur), new Shred30Trick(OrdinalSideType.Right, MockFootbagTricks.Dimwalk) }; this.Collection = new Shred30ContactCollection(contacts); List <Shred30ContactPair> pairs = this.Collection.GetPairCollection().ToList(); Assert.AreEqual(2, pairs.Count()); Assert.AreEqual(MockFootbagTricks.Ripwalk.TrickId, pairs[0].FirstContact.FootbagTrick.TrickId); Assert.AreEqual(MockFootbagTricks.Blur.TrickId, pairs[0].SecondContact.FootbagTrick.TrickId); Assert.AreEqual(MockFootbagTricks.Blur.TrickId, pairs[1].FirstContact.FootbagTrick.TrickId); Assert.AreEqual(MockFootbagTricks.Dimwalk.TrickId, pairs[1].SecondContact.FootbagTrick.TrickId); }
/// <summary>Deserializes the specified contacts string.</summary> /// <param name="contactsJson">The contacts string.</param> public IEnumerable <IShred30Contact> Deserialize() { List <ContactElementJson> contactElementsJson = JsonConvert.DeserializeObject <List <ContactElementJson> >(this.ContactsJson); bool anyElementHasBlankName = contactElementsJson .Any(contactElement => string.IsNullOrWhiteSpace(contactElement.Name)); if (anyElementHasBlankName) { throw new DeserializationException("Cannot deserialize contacts because not all elements have a name."); } Shred30ContactCollection shred30Contacts = new Shred30ContactCollection(); foreach (ContactElementJson contactElementJson in contactElementsJson) { IShred30Contact shred30Contact; if (contactElementJson.Name.Equals(DropElementName, StringComparison.OrdinalIgnoreCase)) { shred30Contact = new Drop(); } else { shred30Contact = new Shred30Trick( contactElementJson.Side, contactElementJson.Name, contactElementJson.SameSide ); } shred30Contacts.Add(shred30Contact); } return(shred30Contacts); }