Sha256: a9777980fa072150d38eb394dc0aac92a24f48b9236741b2f02af67a9295a71e
Contents?: true
Size: 1.47 KB
Versions: 14
Compression:
Stored size: 1.47 KB
Contents
import ceylon.test { ... } // Tests adapted from problem-specifications version 1.2.0 {[String, {String*}, {String*}]*} cases => { // no matches ["diaper", {"hello", "world", "zombies", "pants"}, {}], // detects two anagrams ["master", {"stream", "pigeon", "maters"}, {"stream", "maters"}], // does not detect anagram subsets ["good", {"dog", "goody"}, {}], // detects anagram ["listen", {"enlists", "google", "inlets", "banana"}, {"inlets"}], // detects three anagrams [ "allergy", {"gallery", "ballerina", "regally", "clergy", "largely", "leading"}, {"gallery", "regally", "largely"} ], // does not detect non-anagrams with identical checksum ["mass", {"last"}, {}], // detects anagrams case-insensitively ["Orchestra", {"cashregister", "Carthorse", "radishes"}, {"Carthorse"}], // detects anagrams using case-insensitive subject ["Orchestra", {"cashregister", "carthorse", "radishes"}, {"carthorse"}], // detects anagrams using case-insensitive possible matches ["orchestra", {"cashregister", "Carthorse", "radishes"}, {"Carthorse"}], // does not detect a anagram if the original word is repeated ["go", {"go Go GO"}, {}], // anagrams must use all letters exactly once ["tapper", {"patter"}, {}], // capital word is not own anagram ["BANANA", {"Banana"}, {}] }; test parameters(`value cases`) void testAnagram(String subject, {String*} candidates, {String*} expected) { assertEquals(sort(anagrams(subject, candidates)), sort(expected)); }
Version data entries
14 entries across 14 versions & 1 rubygems