Sha256: 8dbb0c870ea263beae4092c928c55856ce4a1a6760dde799b6be79e15e1acbd2
Contents?: true
Size: 1.23 KB
Versions: 105
Compression:
Stored size: 1.23 KB
Contents
import ceylon.test { ... } // Tests adapted from x-common version 1.0.0 {[String, String, Integer?]*} cases => { // identical strands ["A", "A", 0], // long identical strands ["GGACTGA", "GGACTGA", 0], // complete distance in single nucleotide strands ["A", "G", 1], // complete distance in small strands ["AG", "CT", 2], // small distance in small strands ["AT", "CT", 1], // small distance ["GGACG", "GGTCG", 1], // small distance in long strands ["ACCAGGG", "ACTATGG", 2], // non-unique character in first strand ["AGA", "AGG", 1], // non-unique character in second strand ["AGG", "AGA", 1], // same nucleotides in different positions ["TAG", "GAT", 2], // large distance ["GATACA", "GCATAA", 4], // large distance in off-by-one strand ["GGACGGATTCTG", "AGGACGGATTCT", 9], // empty strands ["", "", 0], // disallow first strand longer ["AATG", "AAA", null], // disallow second strand longer ["ATA", "AGTG", null] }; test parameters(`value cases`) void testHamming(String s1, String s2, Integer? expected) { value result = distance(s1, s2); if (exists expected) { assertEquals(result, expected); } else if (!is Error result) { fail("should have errored, but got ``result``"); } }
Version data entries
105 entries across 105 versions & 1 rubygems