Ejemplo n.º 1
0
 public void Test1()
 {
     var c = new Chromosome(ChromosomeEnum.Unknown);
     Assert.AreEqual(ChromosomeEnum.Unknown, c.ChromosomeId);
     Assert.AreEqual(0, c.Count);
     var pack = new[] {Nucleotide.A, Nucleotide.G, Nucleotide.T, Nucleotide.C, Nucleotide.G};
     c.AddRange(pack);
     Assert.AreEqual(pack.Length, c.Count);
     c.AddRange(pack);
     Assert.AreEqual(pack.Length*2, c.Count);
     var pack1 = c.GetPack(0, pack.Length);
     var pack2 = c.GetPack(pack.Length, pack.Length);
     var pack3 = c.GetPack(0, pack.Length*2);
     CollectionAssert.AreEqual(pack, pack1);
     CollectionAssert.AreEqual(pack1, pack2);
     var tmpPath = "qwe.tmp";
     File.Delete(tmpPath);
     c.Serialize(tmpPath);
     var c2 = Chromosome.Deserialize(tmpPath);
     Assert.AreEqual(c.ChromosomeId, c2.ChromosomeId);
     Assert.AreEqual(c.Count, c2.Count);
     var tmp = new List<Nucleotide>();
     var e = c.GetEnumerator();
     while(e.MoveNext())
         tmp.Add(e.Current);
     var tmp2 = c2.GetPack(0, pack.Length*2).ToList();
     CollectionAssert.AreEqual(tmp, tmp2);
 }