diff options
Diffstat (limited to 'spec/ruby/library/digest/bubblebabble_spec.rb')
-rw-r--r-- | spec/ruby/library/digest/bubblebabble_spec.rb | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/spec/ruby/library/digest/bubblebabble_spec.rb b/spec/ruby/library/digest/bubblebabble_spec.rb new file mode 100644 index 0000000000..49cc77e623 --- /dev/null +++ b/spec/ruby/library/digest/bubblebabble_spec.rb @@ -0,0 +1,29 @@ +require File.expand_path('../../../spec_helper', __FILE__) +require 'digest/bubblebabble' + +describe "Digest.bubblebabble" do + it "returns a String" do + Digest.bubblebabble('').should be_an_instance_of(String) + end + + it "returns a String in the The Bubble Babble Binary Data Encoding format" do + Digest.bubblebabble('').should == 'xexax' + Digest.bubblebabble('foo').should == 'xinik-zorox' + Digest.bubblebabble('bar').should == 'ximik-cosex' + Digest.bubblebabble('1234567890').should == 'xesef-disof-gytuf-katof-movif-baxux' + end + + it "calls #to_str on an object and returns the bubble babble value of the result" do + obj = mock("to_str") + obj.should_receive(:to_str).and_return('foo') + Digest.bubblebabble(obj).should == 'xinik-zorox' + end + + it "raises a TypeError when passed nil" do + lambda { Digest.bubblebabble(nil) }.should raise_error(TypeError) + end + + it "raises a TypeError when passed a Fixnum" do + lambda { Digest.bubblebabble(9001) }.should raise_error(TypeError) + end +end |