public void IndependenceMessageTest() { congenericChain = new CongenericChain(message, 10); var newMessage = (ValueString)congenericChain.Element; Assert.AreNotSame(congenericChain.Element, newMessage); }
public void SimilarChainsGetTest() { var congenericChainA = new CongenericChain(new[] { 2, 8 }, elements["A"], 10); var chainCreatedCongenericChain = chains[2].CongenericChain(elements["A"]); Assert.AreEqual(congenericChainA, chainCreatedCongenericChain); }
public void Initialization() { message = new ValueString('1'); congenericChain = new CongenericChain(message, 10); wrongMessage = new ValueString('2'); }
/// <summary> /// Fills all congeneric chains of this chain. /// All congeneric sequences stored in <see cref="congenericChains"/> field. /// </summary> private void FillCongenericChains() { var occurrences = new List<int>[alphabet.Cardinality - 1]; for (int i = 0; i < alphabet.Cardinality - 1; i++) { occurrences[i] = new List<int>(); } for (int j = 0; j < building.Length; j++) { if (building[j] != 0) { occurrences[building[j] - 1].Add(j); } } congenericChains = new CongenericChain[alphabet.Cardinality - 1]; for (int k = 0; k < alphabet.Cardinality - 1; k++) { congenericChains[k] = new CongenericChain(occurrences[k], alphabet[k + 1], building.Length); } }