示例#1
0
        public void ReceiveWithRuleRestrictions()
        {
            UnityEventListenerMock emittedMock = new UnityEventListenerMock();

            subject.Emitted.AddListener(emittedMock.Listen);

            StringMatchesRule rule = subject.gameObject.AddComponent <StringMatchesRule>();

            rule.TargetPattern = "test";

            subject.ReceiveValidity = new RuleContainer
            {
                Interface = rule
            };

            Assert.IsNull(subject.Payload);
            Assert.IsFalse(emittedMock.Received);

            subject.Receive("test");

            Assert.AreEqual("test", subject.Payload);
            Assert.IsTrue(emittedMock.Received);

            emittedMock.Reset();

            Assert.IsFalse(emittedMock.Received);

            subject.Receive("somethingelse");

            Assert.AreEqual("test", subject.Payload);
            Assert.IsFalse(emittedMock.Received);
        }
 public void SetUp()
 {
     containingObject = new GameObject();
     container = new RuleContainer();
     subject = containingObject.AddComponent<StringMatchesRule>();
     container.Interface = subject;
 }