diff --git a/exercises/rna-transcription/example.rs b/exercises/rna-transcription/example.rs index a747b9f05..f9fd10a12 100644 --- a/exercises/rna-transcription/example.rs +++ b/exercises/rna-transcription/example.rs @@ -1,16 +1,16 @@ #[derive(PartialEq, Eq, Debug)] -pub struct RibonucleicAcid { +pub struct RNA { nucleotides: String } -impl RibonucleicAcid { - pub fn new(nucleotides: &str) -> RibonucleicAcid { - RibonucleicAcid { nucleotides: nucleotides.to_string() } +impl RNA { + pub fn new(nucleotides: &str) -> RNA { + RNA { nucleotides: nucleotides.to_string() } } } #[derive(PartialEq, Eq, Debug)] -pub struct DeoxyribonucleicAcid { +pub struct DNA { nucleotides: String } @@ -24,15 +24,15 @@ fn transcribe_dna_rna(c: char) -> Option { } } -impl DeoxyribonucleicAcid { - pub fn new(nucleotides: &str) -> DeoxyribonucleicAcid { - DeoxyribonucleicAcid { nucleotides: nucleotides.to_string() } +impl DNA { + pub fn new(nucleotides: &str) -> DNA { + DNA { nucleotides: nucleotides.to_string() } } - pub fn to_rna(&self) -> Result { + pub fn to_rna(&self) -> Result { let rna_nucleotides: String = self.nucleotides.chars().filter_map(transcribe_dna_rna).collect(); if rna_nucleotides.len() == self.nucleotides.len() { - Ok(RibonucleicAcid { nucleotides: rna_nucleotides }) + Ok(RNA { nucleotides: rna_nucleotides }) } else { Err(()) } diff --git a/exercises/rna-transcription/tests/rna-transcription.rs b/exercises/rna-transcription/tests/rna-transcription.rs index 05528f246..ab2f9919b 100644 --- a/exercises/rna-transcription/tests/rna-transcription.rs +++ b/exercises/rna-transcription/tests/rna-transcription.rs @@ -2,54 +2,54 @@ extern crate rna_transcription as dna; #[test] fn test_acid_equals_acid() { - assert_eq!(dna::RibonucleicAcid::new("CGA"), dna::RibonucleicAcid::new("CGA")); - assert_ne!(dna::RibonucleicAcid::new("CGA"), dna::RibonucleicAcid::new("AGC")); + assert_eq!(dna::RNA::new("CGA"), dna::RNA::new("CGA")); + assert_ne!(dna::RNA::new("CGA"), dna::RNA::new("AGC")); } #[test] #[ignore] fn test_transcribes_cytosine_guanine() { - assert_eq!(Ok(dna::RibonucleicAcid::new("G")), dna::DeoxyribonucleicAcid::new("C").to_rna()); + assert_eq!(Ok(dna::RNA::new("G")), dna::DNA::new("C").to_rna()); } #[test] #[ignore] fn test_transcribes_guanine_cytosine() { - assert_eq!(Ok(dna::RibonucleicAcid::new("C")), dna::DeoxyribonucleicAcid::new("G").to_rna()); + assert_eq!(Ok(dna::RNA::new("C")), dna::DNA::new("G").to_rna()); } #[test] #[ignore] fn test_transcribes_adenine_uracil() { - assert_eq!(Ok(dna::RibonucleicAcid::new("U")), dna::DeoxyribonucleicAcid::new("A").to_rna()); + assert_eq!(Ok(dna::RNA::new("U")), dna::DNA::new("A").to_rna()); } #[test] #[ignore] fn test_transcribes_thymine_to_adenine() { - assert_eq!(Ok(dna::RibonucleicAcid::new("A")), dna::DeoxyribonucleicAcid::new("T").to_rna()); + assert_eq!(Ok(dna::RNA::new("A")), dna::DNA::new("T").to_rna()); } #[test] #[ignore] fn test_transcribes_all_dna_to_rna() { - assert_eq!(Ok(dna::RibonucleicAcid::new("UGCACCAGAAUU")), dna::DeoxyribonucleicAcid::new("ACGTGGTCTTAA").to_rna()) + assert_eq!(Ok(dna::RNA::new("UGCACCAGAAUU")), dna::DNA::new("ACGTGGTCTTAA").to_rna()) } #[test] #[ignore] fn handles_invalid_input() { - assert!(dna::DeoxyribonucleicAcid::new("U").to_rna().is_err()); + assert!(dna::DNA::new("U").to_rna().is_err()); } #[test] #[ignore] fn handles_completely_invalid_input() { - assert!(dna::DeoxyribonucleicAcid::new("XXX").to_rna().is_err()); + assert!(dna::DNA::new("XXX").to_rna().is_err()); } #[test] #[ignore] fn handles_partially_invalid_input() { - assert!(dna::DeoxyribonucleicAcid::new("ACGTXXXCTTAA").to_rna().is_err()); + assert!(dna::DNA::new("ACGTXXXCTTAA").to_rna().is_err()); }