public void CanSetSidesWithMultipleTricks()
        {
            List <IShred30Contact> contacts = new List <IShred30Contact>()
            {
                new Shred30Trick(OrdinalSideType.Left, MockFootbagTricks.Ripwalk),
                new Shred30Trick(OrdinalSideType.None, MockFootbagTricks.Blur),
                new Shred30Trick(OrdinalSideType.None, MockFootbagTricks.Dimwalk)
            };

            this.ContactArranger = new StartSideArranger();

            List <IShred30Contact> shred30Contacts = this.ContactArranger.ArrangeContacts(contacts).ToList();

            Assert.AreEqual(OrdinalSideType.Left, shred30Contacts[0].StartSide);
            Assert.AreEqual(OrdinalSideType.Right, shred30Contacts[1].StartSide);
            Assert.AreEqual(OrdinalSideType.Right, shred30Contacts[2].StartSide);
        }
Esempio n. 2
0
        private StandardShred30ScoreCalculator GetScoreCalculator(IEnumerable <IShred30Contact> shred30Contacts, bool useXDex = true, IShred30ContactArranger contactArranger = null, IShredContact30Validator validator = null, IUniqueCalculator uniqueCalculator = null)
        {
            IAddCalculator addCalculator;

            if (useXDex)
            {
                addCalculator = new StandardAddCalculator();
            }
            else
            {
                addCalculator = new NoXDexAddCalculator();
            }

            return(new StandardShred30ScoreCalculator(
                       shred30Contacts,
                       contactArranger == null ? new List <IShred30ContactArranger>() : new List <IShred30ContactArranger> {
                contactArranger
            },
                       validator == null ? new List <IShredContact30Validator>() : new List <IShredContact30Validator> {
                validator
            },
                       addCalculator,
                       uniqueCalculator == null ? new OpenAddsBasedUniqueCalculator() : uniqueCalculator
                       ));
        }