Skip to content

Instantly share code, notes, and snippets.

@vanmichael
Created December 16, 2013 15:19
Show Gist options
  • Save vanmichael/7988700 to your computer and use it in GitHub Desktop.
Save vanmichael/7988700 to your computer and use it in GitHub Desktop.
require 'pry-debugger'
class Anagram
attr_reader :word
def initialize(word)
@word = word
end
def letters
@word.split('')
end
def anagrams
anagrams = []
words = letters.permutation.to_a
words.each do |word|
anagrams << word.join
end
anagrams
end
end
anagram = Anagram.new('dog')
anagram.letters
puts anagram.anagrams
require 'rspec'
require_relative 'anagram'
describe Anagram do
it 'generates an array of anagrams' do
expect(Anagram.new('dog').anagrams).to include('dgo','odg','ogd','god','gdo')
end
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment