Commit d2dceb85119745ede21773347704559e35f67266
Merge pull request #51 from pda/bcrypt_error
BCrypt::Errors::* descend from new BCrypt::Error.Aman Gupta committed on 3/31/2013, 3:18:53 AM
Parent: 8f30bb84ac2a9e46b386cc2febf8852531e7828d
Parent: 007857af56030fbe4c85f43162679572662a396d
Files changed
lib/bcrypt.rb | changed |
spec/bcrypt/error_spec.rb | added |
lib/bcrypt.rb | ||
---|---|---|
@@ -10,13 +10,15 @@ | ||
10 | 10 | |
11 | 11 | # A Ruby library implementing OpenBSD's bcrypt()/crypt_blowfish algorithm for |
12 | 12 | # hashing passwords. |
13 | 13 | module BCrypt |
14 | + | |
15 | + class Error < StandardError; end | |
14 | 16 | module Errors |
15 | - class InvalidSalt < StandardError; end # The salt parameter provided to bcrypt() is invalid. | |
16 | - class InvalidHash < StandardError; end # The hash parameter provided to bcrypt() is invalid. | |
17 | - class InvalidCost < StandardError; end # The cost parameter provided to bcrypt() is invalid. | |
18 | - class InvalidSecret < StandardError; end # The secret parameter provided to bcrypt() is invalid. | |
17 | + class InvalidSalt < BCrypt::Error; end # The salt parameter provided to bcrypt() is invalid. | |
18 | + class InvalidHash < BCrypt::Error; end # The hash parameter provided to bcrypt() is invalid. | |
19 | + class InvalidCost < BCrypt::Error; end # The cost parameter provided to bcrypt() is invalid. | |
20 | + class InvalidSecret < BCrypt::Error; end # The secret parameter provided to bcrypt() is invalid. | |
19 | 21 | end |
20 | 22 | |
21 | 23 | # A Ruby wrapper for the bcrypt() C extension calls and the Java calls. |
22 | 24 | class Engine |
spec/bcrypt/error_spec.rb | ||
---|---|---|
@@ -1,0 +1,37 @@ | ||
1 | +require File.expand_path(File.join(File.dirname(__FILE__), "..", "spec_helper")) | |
2 | + | |
3 | +describe "Errors" do | |
4 | + | |
5 | + shared_examples "descends from StandardError" do | |
6 | + it "can be rescued as a StandardError" do | |
7 | + described_class.should < StandardError | |
8 | + end | |
9 | + end | |
10 | + | |
11 | + shared_examples "descends from BCrypt::Error" do | |
12 | + it "can be rescued as a BCrypt::Error" do | |
13 | + described_class.should < BCrypt::Error | |
14 | + end | |
15 | + end | |
16 | + | |
17 | + describe BCrypt::Error do | |
18 | + include_examples "descends from StandardError" | |
19 | + end | |
20 | + | |
21 | + describe BCrypt::Errors::InvalidCost do | |
22 | + include_examples "descends from BCrypt::Error" | |
23 | + end | |
24 | + | |
25 | + describe BCrypt::Errors::InvalidHash do | |
26 | + include_examples "descends from BCrypt::Error" | |
27 | + end | |
28 | + | |
29 | + describe BCrypt::Errors::InvalidSalt do | |
30 | + include_examples "descends from BCrypt::Error" | |
31 | + end | |
32 | + | |
33 | + describe BCrypt::Errors::InvalidSecret do | |
34 | + include_examples "descends from BCrypt::Error" | |
35 | + end | |
36 | + | |
37 | +end |
Built with git-ssb-web