public virtual void TestGetIsotope_Number_Clone() { IMolecularFormula mf = Builder.NewMolecularFormula(); IIsotope carb = Builder.NewIsotope("C"); IIsotope flu = Builder.NewIsotope("F"); IIsotope h1 = Builder.NewIsotope("H"); mf.Add(carb); mf.Add(flu); mf.Add(h1, 3); object clone = mf.Clone(); Assert.IsTrue(clone is IMolecularFormula); IMolecularFormula cloneFormula = (IMolecularFormula)clone; Assert.AreEqual(1, cloneFormula.GetCount(carb)); Assert.AreEqual(1, cloneFormula.GetCount(flu)); Assert.AreEqual(3, cloneFormula.GetCount(h1)); // In a List the objects are not stored in the same order than called // Assert.AreEqual("C", cloneFormula.Isotopes[0].Symbol); // Assert.AreEqual("F", cloneFormula.Isotopes[1].Symbol); // Assert.AreEqual("H", cloneFormula.Isotopes[2].Symbol); }
public virtual void TestClone() { IMolecularFormula mf = Builder.NewMolecularFormula(); mf.Charge = 1; object clone = mf.Clone(); Assert.IsTrue(clone is IMolecularFormula); Assert.AreEqual(mf.IsotopesCount, ((IMolecularFormula)clone).IsotopesCount); Assert.AreEqual(mf.Charge, ((IMolecularFormula)clone).Charge); }
public virtual void TestClone_Isotopes() { IMolecularFormula mf = Builder.NewMolecularFormula(); IIsotope carb = Builder.NewIsotope("C"); IIsotope flu = Builder.NewIsotope("F"); IIsotope h1 = Builder.NewIsotope("H"); mf.Add(carb); mf.Add(flu); mf.Add(h1, 3); Assert.AreEqual(3, mf.IsotopesCount); Assert.AreEqual(1, mf.GetCount(carb)); Assert.AreEqual(1, mf.GetCount(flu)); Assert.AreEqual(3, mf.GetCount(h1)); object clone = mf.Clone(); Assert.IsTrue(clone is IMolecularFormula); Assert.AreEqual(mf.IsotopesCount, ((IMolecularFormula)clone).IsotopesCount); Assert.AreEqual(3, ((IMolecularFormula)clone).IsotopesCount); }