public void TestSerializationQuantityWithExplicitFormula() { Observer x1 = CreateObject <Observer>().WithName("Quentin").WithDimension(DimensionLength); x1.ParentContainer = C1; x1.IsFixedValue = false; x1.Persistable = false; x1.Formula = CreateObject <ConstantFormula>().WithDimension(DimensionLength).WithValue(23.4); ExplicitFormula f1 = CreateObject <ExplicitFormula>().WithName("Fortunato").WithDimension(DimensionLength); f1.AddObjectPath(ObjectPathFactory.CreateAbsoluteFormulaUsablePath(P1)); f1.AddObjectPath(ObjectPathFactory.CreateRelativeFormulaUsablePath(P, P0)); f1.AddObjectPath(ObjectPathFactory.CreateRelativeFormulaUsablePath(P, P2).WithAlias("Pitter")); f1.ResolveObjectPathsFor(P); f1.FormulaString = "Paul + Peter + Pitter"; P1.Value = 1.0; P0.Value = 10.0; P2.Value = 2.0; x1.Formula = f1; IQuantity x2 = SerializeAndDeserialize(x1); x2.ParentContainer = C1; x2.Formula.ResolveObjectPathsFor(x2); AssertForSpecs.AreEqualQuantity(x2, x1); }
protected override void Context() { _organ = new Container().WithName("organ"); var comp = new Container().WithName("comp").WithParentContainer(_organ); _parameter = new Parameter().WithName("P1").WithParentContainer(comp); var objectPathFactory = new ObjectPathFactory(new AliasCreator()); sut = objectPathFactory.CreateAbsoluteFormulaUsablePath(_parameter); }
public void TestSerializationTableFormulaWithArgument() { var x1 = CreateObject <TableFormulaWithXArgument>().WithName("Fortunato").WithDimension(DimensionLength); x1.AddTableObjectPath(ObjectPathFactory.CreateAbsoluteFormulaUsablePath(P1)); x1.AddXArgumentObjectPath(ObjectPathFactory.CreateRelativeFormulaUsablePath(P, P0)); var x2 = SerializeAndDeserialize(x1); AssertForSpecs.AreEqualTableFormulaWithArgument(x2, x1); }
public void TestSerializationFormulaWithObjectPathsWithoutObjectReferences() { ExplicitFormula x1 = CreateObject <ExplicitFormula>().WithName("Fortunato").WithDimension(DimensionLength); x1.AddObjectPath(ObjectPathFactory.CreateAbsoluteFormulaUsablePath(P1)); x1.AddObjectPath(ObjectPathFactory.CreateRelativeFormulaUsablePath(P, P0)); x1.AddObjectPath(ObjectPathFactory.CreateRelativeFormulaUsablePath(P, P2).WithAlias("Pitter")); IFormula x2 = SerializeAndDeserialize(x1); AssertForSpecs.AreEqualFormula(x2, x1); }
public void TestSerialization() { ConstantFormula x1 = CreateObject <ConstantFormula>().WithName("Fortunato").WithDimension(DimensionLength).WithValue(5.3); x1.AddObjectPath(ObjectPathFactory.CreateAbsoluteFormulaUsablePath(P1)); x1.AddObjectPath(ObjectPathFactory.CreateRelativeFormulaUsablePath(P, P0)); x1.AddObjectPath(ObjectPathFactory.CreateRelativeFormulaUsablePath(P, P2).WithAlias("Pitter")); x1.ResolveObjectPathsFor(P); ConstantFormula x2 = SerializeAndDeserialize(x1); x2.ResolveObjectPathsFor(P); AssertForSpecs.AreEqualConstantFormula(x2, x1); }
public void TestSerialization() { ExplicitFormula x1 = CreateObject <ExplicitFormula>().WithName("Fortunato").WithDimension(DimensionLength); x1.AddObjectPath(ObjectPathFactory.CreateAbsoluteFormulaUsablePath(P1)); x1.AddObjectPath(ObjectPathFactory.CreateRelativeFormulaUsablePath(P, P0)); x1.AddObjectPath(ObjectPathFactory.CreateRelativeFormulaUsablePath(P, P2).WithAlias("Pitter")); x1.ResolveObjectPathsFor(P); x1.FormulaString = "1.1 + 2.2"; ExplicitFormula x2 = SerializeAndDeserialize(x1); x2.ResolveObjectPathsFor(P); AssertForSpecs.AreEqualExplicitFormula(x2, x1); }
public void TestSerializationWithDependencies() { ExplicitFormula x1 = CreateObject <ExplicitFormula>().WithName("Fortunato").WithDimension(DimensionLength); x1.AddObjectPath(ObjectPathFactory.CreateAbsoluteFormulaUsablePath(P1)); x1.AddObjectPath(ObjectPathFactory.CreateRelativeFormulaUsablePath(P, P0)); x1.AddObjectPath(ObjectPathFactory.CreateRelativeFormulaUsablePath(P, P2).WithAlias("Pitter")); x1.ResolveObjectPathsFor(P); x1.FormulaString = "Paul + Peter + Pitter"; P1.Value = 1.0; P0.Value = 10.0; P2.Value = 2.0; ExplicitFormula x2 = SerializeAndDeserialize(x1); x2.ResolveObjectPathsFor(P); AssertForSpecs.AreEqualExplicitFormula(x2, x1); }