New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Properly implement to_hash #44

Merged
merged 1 commit into from Dec 30, 2012
Jump to file or symbol
Failed to load files and symbols.
+15 −2
Diff settings

Always

Just for now

properly reimplement to_hash

  • Loading branch information...
cmer committed Oct 31, 2012
commit 13b865a5c9824552ba72c649480bd748b0d98c2e
View
@@ -143,6 +143,11 @@ def []=(key,val)
create_accessor_for(key, val)
end
# Returns an instance of a Hash object
def to_hash
Hash[self]
end
# This handles naming collisions with Sinatra/Vlad/Capistrano. Since these use a set()
# helper that defines methods in Object, ANY method_missing ANYWHERE picks up the Vlad/Sinatra
# settings! So settings.deploy_to title actually calls Object.deploy_to (from set :deploy_to, "host"),
View
@@ -162,5 +162,13 @@ class NoSource < Settingslogic; end
it "should be a hash" do
Settings.send(:instance).should be_is_a(Hash)
end
end
describe "#to_hash" do
it "should return a new instance of a Hash object" do
Settings.to_hash.should be_kind_of(Hash)
Settings.to_hash.class.name.should == "Hash"
Settings.to_hash.object_id.should_not == Settings.object_id
end
end
end
ProTip! Use n and p to navigate between commits in a pull request.