public void AunnCoo_Object_For_GenericEqualToken_And_ShouldBeValid()
        {
            var model = new AunnCoo {
                OtherInfo = Haha
            };

            var context  = VerifiableObjectContractManager.Resolve <AunnCoo>().WithInstance(model);
            var member   = context.GetValue("OtherInfo");
            var contract = member.ExposeContract();

            var token = new ValueEqualToken <object>(contract, Haha, null);

            token.Valid(context).IsSuccess.ShouldBeTrue();
            token.Valid(member).IsSuccess.ShouldBeTrue();
        }
        public void AunnCoo_ValueType_For_EqualToken_And_ShouldBeInvalid()
        {
            var model = new AunnCoo {
                Age = 10
            };

            var context  = VerifiableObjectContractManager.Resolve <AunnCoo>().WithInstance(model);
            var member   = context.GetValue("Age");
            var contract = member.ExposeContract();

            var token = new ValueEqualToken(contract, 11, null);

            token.Valid(context).IsSuccess.ShouldBeFalse();
            token.Valid(member).IsSuccess.ShouldBeFalse();
        }