Skip to content

Instantly share code, notes, and snippets.

@joebew42
Created April 15, 2013 10:22
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save joebew42/5387165 to your computer and use it in GitHub Desktop.
Save joebew42/5387165 to your computer and use it in GitHub Desktop.
require 'roman_number'
describe Fixnum, "Roman Number" do
context "when try to convert a number" do
io_expections = {
0 => '',
1 => 'I',
2 => 'II',
3 => 'III',
4 => 'IV',
5 => 'V',
6 => 'VI',
7 => 'VII',
8 => 'VIII',
9 => 'IX',
10 => 'X',
20 => 'XX',
30 => 'XXX',
40 => 'XL',
50 => 'L',
60 => 'LX',
70 => 'LXX',
80 => 'LXXX',
90 => 'XC',
100 => 'C',
200 => 'CC',
300 => 'CCC',
400 => 'CD',
500 => 'D',
600 => 'DC',
700 => 'DCC',
800 => 'DCCC',
900 => 'CM',
1000 => 'M',
2000 => 'MM',
3000 => 'MMM',
4000 => 'MMMM',
2013 => 'MMXIII',
4999 => 'MMMMCMXCIX',
5000 => '',
}
io_expections.each do |input,output|
it "returns #{output} if number is #{input}" do
input.to_roman.should == output
end
end
end
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment