public void Interact_CompleteMismatch()
        {
            var interaction = new ExchangeInteraction(0);

            ICell actor = GridCell.New();
            actor.Offense = Tag.New("c#a#");
            actor.Exchange = Tag.New("abc");

            ICell target = GridCell.New();
            target.Offense = Tag.New("db#");
            target.Exchange = Tag.New("cba");

            bool result = interaction.Interact(actor, target);

            Assert.AreEqual(false, result);
        }
        public void Interact_MatchWildcards()
        {
            var interaction = new ExchangeInteraction(0);

            ICell actor = GridCell.New();
            actor.Offense = Tag.New("c##dd");
            actor.Exchange = Tag.New("abc");

            ICell target = GridCell.New();
            target.Offense = Tag.New("ab#");
            target.Exchange = Tag.New("cba");

            bool result = interaction.Interact(actor, target);

            Assert.AreEqual(true, result);
        }
        public void Interact_PartialMatchStay()
        {
            var interaction = new ExchangeInteraction(100);

            ICell actor = GridCell.New();
            actor.Offense = Tag.New("cba");
            actor.Exchange = Tag.New("abc");

            ICell target = GridCell.New();
            target.Offense = Tag.New("dbc");
            target.Exchange = Tag.New("cba");

            bool result = interaction.Interact(actor, target);

            Assert.AreEqual(true, result);
        }