コード例 #1
0
        void ValidateTryGetBasicSymbols(AlphabetsTypes option)
        {
            IAlphabet alphabetInstance = null;
            byte      basicSymbol = 0, expectedSymbol1 = 0, expectedSymbol2 = 0;

            switch (option)
            {
            case AlphabetsTypes.Protein:
                alphabetInstance = AmbiguousProteinAlphabet.Instance;
                basicSymbol      = (byte)'Z';
                expectedSymbol1  = (byte)'Q';
                expectedSymbol2  = (byte)'E';
                break;

            case AlphabetsTypes.Rna:
                alphabetInstance = AmbiguousRnaAlphabet.Instance;
                basicSymbol      = (byte)'R';
                expectedSymbol1  = (byte)'G';
                expectedSymbol2  = (byte)'A';
                break;

            case AlphabetsTypes.Dna:
                basicSymbol      = (byte)'M';
                expectedSymbol1  = (byte)'A';
                expectedSymbol2  = (byte)'C';
                alphabetInstance = AmbiguousDnaAlphabet.Instance;
                break;
            }

            HashSet <byte> basicSymbols;

            Assert.AreEqual(true, alphabetInstance.TryGetBasicSymbols(basicSymbol, out basicSymbols));
            Assert.IsTrue(basicSymbols.All(sy => (sy == expectedSymbol1 || sy == expectedSymbol2)));
            ApplicationLog.WriteLine(string.Concat(@"Alphabets BVT: Validation of 
                                Try  Get Basics symbol for ", option, " completed successfully."));
        }