Bladeren bron

added rna-transcription exercise

paulp 11 jaren geleden
bovenliggende
commit
f8dda6c6ef

+ 1
- 0
config.json Bestand weergeven

@@ -28,6 +28,7 @@
28 28
     "accumulate",
29 29
     "crypto-square"
30 30
     "trinary"
31
+    "rna-transcription"
31 32
   ],
32 33
   "deprecated": [
33 34
   ],

+ 11
- 0
rna-transcription/build.gradle Bestand weergeven

@@ -0,0 +1,11 @@
1
+apply plugin: "java"
2
+apply plugin: "eclipse"
3
+apply plugin: "idea"
4
+
5
+repositories {
6
+  mavenCentral()
7
+}
8
+
9
+dependencies {
10
+  testCompile "junit:junit:4.10"
11
+}

+ 23
- 0
rna-transcription/example.java Bestand weergeven

@@ -0,0 +1,23 @@
1
+public class RnaTranscription {
2
+
3
+    public static String ofDna(String strand) {
4
+        StringBuilder sb = new StringBuilder();
5
+        for (char c : strand.toCharArray()) {
6
+            switch (c) {
7
+            case 'A':
8
+                sb.append('U');
9
+                break;
10
+            case 'G':
11
+                sb.append('C');
12
+                break;
13
+            case 'C':
14
+                sb.append('G');
15
+                break;
16
+            case 'T':
17
+                sb.append('A');
18
+                break;
19
+            }
20
+        }
21
+        return sb.toString();
22
+    }
23
+}

+ 0
- 0
rna-transcription/src/main/java/.keep Bestand weergeven


+ 2
- 0
rna-transcription/src/main/java/RnaTranscription.java Bestand weergeven

@@ -0,0 +1,2 @@
1
+public class RnaTranscription {
2
+}

+ 36
- 0
rna-transcription/src/test/java/RnaTranscriptionTest.java Bestand weergeven

@@ -0,0 +1,36 @@
1
+import org.junit.Assert;
2
+import org.junit.Test;
3
+
4
+public class RnaTranscriptionTest {
5
+
6
+    @Test
7
+    public void testRnaTranscriptionOfEmptyDnaIsEmptyRna() {
8
+        Assert.assertEquals("", RnaTranscription.ofDna(""));
9
+    }
10
+
11
+    @Test
12
+    public void testRnaTranscriptionOfCytosineIsGuanine() {
13
+        Assert.assertEquals("G", RnaTranscription.ofDna("C"));
14
+    }
15
+
16
+    @Test
17
+    public void testRnaTranscriptionOfGuanineIsCytosine() {
18
+        Assert.assertEquals("C", RnaTranscription.ofDna("G"));
19
+    }
20
+
21
+    @Test
22
+    public void testRnaTranscriptionOfThymineIsAdenine() {
23
+        Assert.assertEquals("A", RnaTranscription.ofDna("T"));
24
+    }
25
+
26
+    @Test
27
+    public void testRnaTranscriptionOfAdenineIsUracil() {
28
+        Assert.assertEquals("U", RnaTranscription.ofDna("A"));
29
+    }
30
+
31
+    @Test
32
+    public void testRnaTranscription() {
33
+        Assert.assertEquals("UGCACCAGAAUU",
34
+                RnaTranscription.ofDna("ACGTGGTCTTAA"));
35
+    }
36
+}