public void Filter3() { Facts.Clear(); Thing P1 = new Thing("P1"); Thing P3 = new Thing("P3"); Thing P4 = new Thing("P4"); Tbool tb1 = new Tbool(false); tb1.AddState(new DateTime(2005, 12, 20), true); Tbool tb2 = new Tbool(false); tb2.AddState(new DateTime(2008, 3, 8), true); Facts.Assert(P1, "IsParentOf", P3, tb1); Facts.Assert(P1, "IsParentOf", P4, tb2); Facts.Assert(P1, "IsParentOf", P1, false); // An absurd thing to have to assert Tset people = new Tset(P1, P3, P4); Tset result = people.Filter(_ => IsParentOf(P1, _)); Assert.AreEqual("{Dawn: ; 12/20/2005: P3; 3/8/2008: P3, P4}", result.Out); }
// Set up a new test private static void NewTest() { Tnum valA = new Tnum(1); Tnum valB = new Tnum(2); Tnum valC = new Tnum(3); valC.AddState(new DateTime(2011, 1, 14), 4); Tbool ownA = new Tbool(true); Tbool ownB = new Tbool(true); ownB.AddState(new DateTime(2008, 1, 1), false); Tbool ownC = new Tbool(false); ownC.AddState(new DateTime(2005, 1, 1), true); Facts.Clear(); Facts.Assert(A, "ValueOf", valA); Facts.Assert(B, "ValueOf", valB); Facts.Assert(C, "ValueOf", valC); Facts.Assert(M, "Owns", A, ownA); Facts.Assert(M, "Owns", B, ownB); Facts.Assert(M, "Owns", C, ownC); }
public void HasBeenAsserted2() { Facts.Clear(); Facts.Assert(p2, "FamilyRelationship", p1, "Biological child"); bool result = Facts.HasBeenAsserted("FamilyRelationship", p1, p2); Assert.AreEqual(false, result); }
public void UnqualifiedFieldResolution() { Facts.Assert(Context.Property(BtsProperties.SuppressRoutingFailureDiagnosticInfo).WithValue(true)); ExecutePolicy(); Facts.Verify(Context.Property(TrackingProperties.ProcessName).WithValue(Dummy.Processes.Four).HasBeenWritten()); }
public void StaticConstResolution() { Facts.Assert(Context.Property(BtsProperties.AckRequired).WithValue(true)); ExecutePolicy(); Facts.Verify(Context.Property(TrackingProperties.ProcessName).WithValue(Dummy.Processes.Three).HasBeenWritten()); }
public void QualifiedPropertyResolution() { Facts.Assert(Context.Property(BtsProperties.IsRequestResponse).WithValue(true)); ExecutePolicy(); Facts.Verify(Context.Property(TrackingProperties.ProcessName).WithValue(Dummy.Processes.One).HasBeenWritten()); }
public void Either_Result_2() { Facts.Clear(); Facts.Assert(p2, "Fam.FamilyRelationship", p1, "Biological child"); Tbool result = Fam.IsBiologicalParentOf(p1, p2); Assert.AreEqual(true, result.Out); }
public void SymFU() { Facts.Clear(); Facts.Assert(p1, "IsMarriedTo", p2, false); Tbool result = Facts.Sym(p1, "IsMarriedTo", p2); Assert.AreEqual(false, result.Out); }
public void StaticCallResolution() { Facts.Assert(Context.Property(BizTalkFactoryProperties.CorrelationToken).WithValue("StaticCallResolution")); ExecutePolicy(); Facts.Verify(Context.Property(TrackingProperties.ProcessName).WithValue("HelloFromStaticCallResolution").HasBeenWritten()); }
public void Fam_2() { Facts.Reset(); Facts.Assert(p2, "Fam.FamilyRelationship", p1, "Partner by civil union"); bool result = Fam.InCivilUnion(p1, p2).IsTrue; Assert.AreEqual(true, result); }
public void Fam_4() { Facts.Reset(); Facts.Assert(p2, "Fam.FamilyRelationship", p1, "Something other than civil union..."); bool result = Fam.InCivilUnion(p1, p2).IsTrue; Assert.AreEqual(false, result); }
public void IndirectAccess() { Facts.Assert(Context.Property(FileProperties.ReceivedFileName).WithValue("some-accessViaVariable-file.csv")); ExecutePolicy(); Facts.Verify(Context.Property(BizTalkFactoryProperties.SenderName).WithValue("variableValue").HasBeenPromoted()); }
public void ExecutePropertyMember() { Facts.Assert(Context.Property(FileProperties.ReceivedFileName).WithValue("token.csv")); ExecutePolicy(); Facts.Verify(Context.Property(BizTalkFactoryProperties.CorrelationToken).WithValue("computed value!").HasBeenWritten()); }
public void NotEqualToStringResolution() { Facts.Assert(Context.Property(BtsProperties.ReceiveLocationName).WithValue("ActualReceiveLocationName")); ExecutePolicy(); Facts.Verify(Context.Property(BtsProperties.ReceivePortName).WithValue("NotEqualToString").HasBeenWritten()); }
public void StaticPropertyResolution() { Facts.Assert(Context.Property(BizTalkFactoryProperties.CorrelationToken).WithValue("StaticPropertyResolution")); ExecutePolicy(); Facts.Verify(Context.Property(FileProperties.FileCreationTime).WithValue(DateTime.Today).HasBeenWritten()); }
public void NotEqualToIntegerResolution() { Facts.Assert(Context.Property(BtsProperties.ActualRetryCount).WithValue(2)); ExecutePolicy(); Facts.Verify(Context.Property(BtsProperties.ReceivePortName).WithValue("NotEqualToInteger").HasBeenWritten()); }
public void NegationResolution() { Facts.Assert(Context.Property(BtsProperties.AckRequired).WithValue(false)); ExecutePolicy(); Facts.Verify(Context.Property(BtsProperties.ReceivePortName).WithValue("NotAckRequired").HasBeenWritten()); }
public void BooleanPredicateResolution() { Facts.Assert(Context.Property(BtsProperties.AckRequired).WithValue(true)); ExecutePolicy(); Facts.Verify(Context.Property(BtsProperties.ReceivePortName).WithValue("AckRequired").HasBeenWritten()); }
public void ExecuteRule() { Facts.Assert(Context.Property(BtsProperties.MessageType).WithValue("WriteFromContext")); ExecutePolicy(); Facts.Verify(Context.Property(TrackingProperties.ProcessName).WithValue("WriteFromContext").HasBeenWritten()); }
public void ExecuteConstantToLambdaToExpressionRule() { Facts.Assert(Context.Property(FileProperties.ReceivedFileName).WithValue("no-folder-file.csv")); ExecutePolicy(); Facts.Verify(Context.Property(BizTalkFactoryProperties.OutboundTransportLocation).WithValue("folder/no-folder-file.csv").HasBeenWritten()); }
public void SymTF() { Facts.Clear(); Facts.Assert(p1, "IsMarriedTo", p2, true); Facts.Assert(p2, "IsMarriedTo", p1, false); // contradictory assertion Tbool result = Facts.Sym(p1, "IsMarriedTo", p2); Assert.AreEqual(true, result.Out); // what is desired here? (or forbid contradictions) }
public void SymTT() { Facts.Clear(); Facts.Assert(p1, "IsMarriedTo", p2, true); Facts.Assert(p2, "IsMarriedTo", p1, true); Tbool result = Facts.Sym(p1, "IsMarriedTo", p2); Assert.AreEqual(true, result.Out); }
public void FactOrder3b() { Facts.Reset(); Facts.GetUnknowns = true; Facts.Assert(p1, "B", p2, false); Tbool theRule = A() & !B(); Assert.AreEqual("A", ShowUnknownTest()); }
public void FactOrder1d() { Facts.Reset(); Facts.GetUnknowns = true; Facts.Assert(p1, "C", p2, true); Tbool theRule = A() & B() & C(); Assert.AreEqual("A B", ShowUnknownTest()); }
public void Compiled1b() { Facts.Clear(); Thing p = new Thing("p"); Facts.Assert(p, "Gender", "Male"); Tbool result = AllAreMale(new Tset(p)); Assert.AreEqual(true, result.Out); }
public void AllKnownPeople4() { Facts.Clear(); Thing P1 = new Thing("P1"); Facts.Assert(P1, "Gender", "Male"); Tset result = Facts.AllKnownPeople(); Assert.AreEqual("P1", result.Out); }
public void TypeMemberAccessRule() { Facts.Assert(Context.Property(BtsProperties.MessageType).WithValue(Schema <btf2_envelope> .MessageType)); ExecutePolicy(); Facts .Verify(Context.Property(BizTalkFactoryProperties.ReceiverName).WithValue("ControlBasedBatcher").HasBeenPromoted()) .Verify(Context.Property(BizTalkFactoryProperties.EnvelopeSpecName).WithValue(typeof(btf2_envelope).AssemblyQualifiedName).HasBeenPromoted()); }
public void ProcessTenBResolution() { Facts .Assert(Context.Property(BtsProperties.MessageType).WithValue("Z_IDOC#TEN")) .Assert(Context.Property(BizTalkFactoryProperties.CorrelationToken).WithValue("Z2UMD_392_DEM_CAN")); ExecutePolicy(); Facts.Verify(Context.Property(TrackingProperties.ProcessName).WithValue("ProcessTen").HasBeenWritten()); }
public void WithoutClearingFactList() { Facts.Assert(Context.Property(BtsProperties.MessageType).WithValue("message-type")); ExecutePolicy(); Assert.That( () => Facts.Verify(Context.Property(TrackingProperties.ProcessName).HasNotBeenSet()), Throws.TypeOf <MockException>()); }
public void ExtensionMethodResolution() { Facts .Assert(Context.Property(BizTalkFactoryProperties.CorrelationToken).WithValue("ExtensionMethodResolution")) .Assert(Context.Property(BizTalkFactoryProperties.SenderName).WithValue("0000001234567890")); ExecutePolicy(); Facts.Verify(Context.Property(TrackingProperties.ProcessName).WithValue("00001234567890").HasBeenWritten()); }