Skip to content

Commit 139daa6

Browse files
committed
Sync tests for exercise/practice/protein-translation
1 parent 32fe0da commit 139daa6

File tree

2 files changed

+42
-3
lines changed

2 files changed

+42
-3
lines changed

exercises/practice/protein-translation/.meta/tests.toml

Lines changed: 22 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,16 @@
1-
# This is an auto-generated file. Regular comments will be removed when this
2-
# file is regenerated. Regenerating will not touch any manually added keys,
3-
# so comments can be added in a "comment" key.
1+
# This is an auto-generated file.
2+
#
3+
# Regenerating this file via `configlet sync` will:
4+
# - Recreate every `description` key/value pair
5+
# - Recreate every `reimplements` key/value pair, where they exist in problem-specifications
6+
# - Remove any `include = true` key/value pair (an omitted `include` key implies inclusion)
7+
# - Preserve any other key/value pair
8+
#
9+
# As user-added comments (using the # character) will be removed when this file
10+
# is regenerated, comments can be added via a `comment` key.
11+
12+
[2c44f7bf-ba20-43f7-a3bf-f2219c0c3f98]
13+
description = "Empty RNA sequence results in no proteins"
414

515
[96d3d44f-34a2-4db4-84cd-fff523e069be]
616
description = "Methionine RNA sequence"
@@ -53,6 +63,12 @@ description = "STOP codon RNA sequence 2"
5363
[9c2ad527-ebc9-4ace-808b-2b6447cb54cb]
5464
description = "STOP codon RNA sequence 3"
5565

66+
[f4d9d8ee-00a8-47bf-a1e3-1641d4428e54]
67+
description = "Sequence of two protein codons translates into proteins"
68+
69+
[dd22eef3-b4f1-4ad6-bb0b-27093c090a9d]
70+
description = "Sequence of two different protein codons translates into proteins"
71+
5672
[d0f295df-fb70-425c-946c-ec2ec185388e]
5773
description = "Translate RNA strand into correct protein list"
5874

@@ -70,3 +86,6 @@ description = "Translation stops if STOP codon in middle of three-codon sequence
7086

7187
[2c2a2a60-401f-4a80-b977-e0715b23b93d]
7288
description = "Translation stops if STOP codon in middle of six-codon sequence"
89+
90+
[f6f92714-769f-4187-9524-e353e8a41a80]
91+
description = "Sequence of two non-STOP codons does not translate to a STOP codon"

exercises/practice/protein-translation/protein_translation_test.cpp

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -91,6 +91,20 @@ TEST_CASE("Translate_RNA_strand_into_correct_protein_list") {
9191
protein_translation::proteins("AUGUUUUGG"));
9292
}
9393

94+
TEST_CASE("Sequence_of_two_protein_codons_translates_into_proteins") {
95+
REQUIRE(vector<string>{"Phenylalanine", "Phenylalanine"} ==
96+
protein_translation::proteins("UUUUUU"));
97+
}
98+
99+
TEST_CASE("Sequence_of_two_different_protein_codons_translates_into_proteins") {
100+
REQUIRE(vector<string>{"Leucine", "Leucine"} ==
101+
protein_translation::proteins("UUAUUG"));
102+
}
103+
104+
TEST_CASE("Empty_RNA_sequence_results_in_no_proteins") {
105+
REQUIRE(vector<string>{} == protein_translation::proteins(""));
106+
}
107+
94108
TEST_CASE("Translation_stops_if_STOP_codon_at_beginning_of_sequence") {
95109
REQUIRE(vector<string>{} == protein_translation::proteins("UAGUGG"));
96110
}
@@ -115,4 +129,10 @@ TEST_CASE("Translation_stops_if_STOP_codon_in_middle_of_six-codon_sequence") {
115129
protein_translation::proteins("UGGUGUUAUUAAUGGUUU"));
116130
}
117131

132+
TEST_CASE(
133+
"Sequence_of_two_non-STOP_codons_does_not_translate_to_a_STOP_codon") {
134+
REQUIRE(vector<string>{"Methionine", "Methionine"} ==
135+
protein_translation::proteins("AUGAUG"));
136+
}
137+
118138
#endif // !EXERCISM_RUN_ALL_TESTS

0 commit comments

Comments
 (0)