public void GetNumAminoAcidsUntilStopCodon_FoundExtraAminoAcids() { const int expectedResult = 38; var observedResult = HgvsUtilities.GetNumAminoAcidsUntilStopCodon( "MLAEPFNWHVEYAHSGDVLGPSGLPASPGAPGTCLHNPAGSNWGPG*EVLMAGTVPAVPG*SGEGSQF*LPWSCSDSPQAGSRAHGQGPGIPLLPQGHGTQSLCRAQGSVPAAEPVPPTEDGRGLSGPEQGHRGTAPARRPPGGWQDLLLLSATLRL*RHCPQHQQ*LPARPGRLAAGCP*ETLWP*PLLSPAAGHRTRDLFPGGGDVPGGPLLRQAGCGADPAFPRPEPQGFGRPLEPAPCGAGGDHHERDRGC*RPHQLL*GVRCHSRRPPEPSDGGPHPRGHGAAPQCQQCGGCAAAQASGLPGAAGPAEGQCRRGPVPVLQ*AGAQRAAEARQLPQPDADLRSRPSAH*QPSLGGRAFHPDVWQSLGRESGLRSDLVQEPGLLCAERKALGRGAEPVPAPAARLPHRPWRPGQPCRAGQQEPVQALPALQLEGNGGTTWAPPFRQPSVRLLRLQPCAGAGRPLRPLIPYLPWPEEFLHHHRELAGLLELLDPSAGEPGP*GPTPLPWRS*EWPSVGL*VQ*RPVVLFPAAAGAAGARARAGPNAQ*LPGPQGQVPREPAGLRLVRGADL*AG**HRGHRCASRAALWPVPPGTVGGLEPRGPVPAAGHGALWLPLGPHAPVAG*RALRPTLRPGVQLPGPAGPPAAARPDPLLQHPPHACAPAAAALRRGGPGRPDLCQGDLSPGGQQQLRPGAAGHGCRRAHSLPLPTVTHWPGWRAAGRADHEPLPATPPHEP*PASHQPRQEGGSPGHGQDEA*DHHAGEPGGP*AQEVAHLGCPAALRPAGVVHGLRRLPGMRAPVPLARFAPVLSFARVFPPFSAPPPAQRALALQNLLSHSQAPERAGQALSRCL*PAALCIGG*MQKQGRNGVCS*EASNSGQERSLKKRPPAVTHSYQPAQHGMAPKLRRSQEET*RGGLRLIREGFLGEVILELAPGEHSEHDW*TEGCRGAQGSTLPRAKQGHWGLS*DPEGVKPLLPQLPLLLEPLHI*PLALLFTASTCSRLPSLSPPSWLCSRNSRLLPVSLLFFRLHL*RMRADNRNTVAKTRLWKGFQKSFFFFN*KKYLQR*ALAMLPRLVSNSWAQAILPSQPPRVLGLQV*ATAPSPRNLSAVWSSISHLMTCSAWGGGVSFPQLPQGGPLPSAAPLSC*PSSRKHTGCR*SGHSRDPQFKRVISISGDSRMGVSALNSPSCFTRKDPVKSPTEVTAH*RGERWSIE*HWAIQAALLPPDRS*ASLAGGLPTAFSGARLAGDGAAARPSLPAPW*PRGFLSAGLSCYLSLHHELSA*DWGSKRVSSQ*A*VGDCDLEKPWASNTCFSEAPKEGSDILFKNTTKQNSQDMCSFVCSVSHNLRLGDGTLG*GRFFCLASPHLPLALWIRQI*TF*RILREGFLG*GSMAKSVSLWTVYTSRRWI*RNPGFHFQCQSETCSQAGALVHTTYSGHQQQPRPDRASLFFFFETESLSPRLEPSGEILAHYNLHLPGSGNSRA*ASRVAATTGAGQHACLIFVF**RQGFTMLPRLVSNS*AQAVYPPQPPKVLGLQA*ATAPSQNICFYTQRAPLVRTEPRCPEPGSRPPGAQHLSFYT*WAGSGEDRESWWKFHSWPRGGALAPHCRLLTAPIPAAPVPDFISLLSPRVPGPSTLPSVLQEPTPLQLQHQGERGLHMPKYPCRMKGRPALDVPFLNNSHCRRV*DVLF*LSPASDAPPICAEWVWECG*GSKCQRSTFQNQVPSANHVGKVQTWRCPCASAPTHPFSFSCVRKEKFSEPSRLVAFKLQTMICSKKRAFHHKSVHLFTTVFQAGFIKKFLTLE", "MLAEPFNWHPGMWNMLIVAMCLALLGCLQAQELQGHVSIILLGATGDLAKKYLWQGLFQLYLDEAGRGHSFSFHGAALTAPKQGQELMAKALESLSCPKDMAPSHCAEHKDQFLQLSQYRQLKTAEDYQALNKDIEAQLQHAGLREAGRIFYFSVPPFAYEDIARNINSSCRPGPGAWLRVVLEKPFGHDHFSAQQLATELGTFFQEEEMYRVDHYLGKQAVAQILPFRDQNRKALDGLWNRHHVERVEIIMKETVDAEGRTSFYEEYGVIRDVLQNHLTEVLTLVAMELPHNVSSAEAVLRHKLQVFQALRGLQRGSAVVGQYQSYSEQVRRELQKPDSFHSLTPTFAAVLVHIDNLRWEGVPFILMSGKALDERVGYARILFKNQACCVQSEKHWAAAQSQCLPRQLVFHIGHGDLGSPAVLVSRNLFRPSLPSSWKEMEGPPGLRLFGSPLSDYYAYSPVRERDAHSVLLSHIFHGRKNFFITTENLLASWNFWTPLLESLAHKAPRLYPGGAENGRLLDFEFSSGRLFFSQQQPEQLVPGPGPAPMPSDFQVLRAKYRESPLVSAWSEELISKLANDIEATAVRAVRRFGQFHLALSGGSSPVALFQQLATAHYGFPWAHTHLWLVDERCVPLSDPESNFQGLQAHLLQHVRIPYYNIHPMPVHLQQRLCAEEDQGAQIYAREISALVANSSFDLVLLGMGADGHTASLFPQSPTGLDGEQLVVLTTSPSQPHRRMSLSLPLINRAKKVAVLVMGRMKREITTLVSRVGHEPKKWPISGVLPHSGQLVWYMDYDAFLG", 9, true); Assert.Equal(expectedResult, observedResult); }
public void GetNumAminoAcidsUntilStopCodon_FirstAminoAcidIsStop() { const int expectedResult = -1; var observedResult = HgvsUtilities.GetNumAminoAcidsUntilStopCodon( "RHRNRNTQTETNTETQRHRNTQKHRNKHRDTETHRNTETNTETQKHTETQKQTQRHRNTQKHTDRNKHRNTETQKYRNTQKHRNKHRDTETQKHSDAETQQHKHRNTETHRNRNTETNTETQTHRHRETQKHTETLKHSGRCPGCRGSIA", "RHRNRNTQTETNTETQRHRNTQKHRNKHRDTETHRNTQKHRNKHRDTETHRNTETNTETQKHTETHRQKQTQKHRDTEIQKHTETQKQTQRHRDTETQRRRNTATQTQKHRNTQKQKHRNKHRDTDTQTQRNTETHRNTETQWAVSRLQRLHRC", 37, true); Assert.Equal(expectedResult, observedResult); }