Sha256: e22aa9570f1ee4cb695035a96321f8042e12f6224cd01ce253179daf36a1a11a
Contents?: true
Size: 1.27 KB
Versions: 1
Compression:
Stored size: 1.27 KB
Contents
# encoding: utf-8 # # This file is part of the lazier gem. Copyright (C) 2013 and above Shogun <shogun_panda@me.com>. # Licensed under the MIT license, which can be found at http://www.opensource.org/licenses/mit-license.php. # require "spec_helper" describe Lazier::Configuration do class ConfigurationSpecSample < ::Lazier::Configuration property :readwrite, default: "1" property :required, required: true property :readonly, default: "2", readonly: true end describe "#property" do it "should correctly define property and get it defaults" do expect(ConfigurationSpecSample.new(required: 1).readwrite).to eq("1") expect(ConfigurationSpecSample.new(required: 1, readwrite: "3").readwrite).to eq("3") expect(ConfigurationSpecSample.new(required: 1).readonly).to eq("2") expect(ConfigurationSpecSample.new(required: 1, readonly: "4").readonly).to eq("4") end it "should not allow writing readonly properties" do reference = ConfigurationSpecSample.new(required: 1) expect { reference.readonly = "4" }.to raise_error(ArgumentError) expect(reference.readonly).to eq("2") end it "should blow up for require properties" do expect { ConfigurationSpecSample.new }.to raise_error(ArgumentError) end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
lazier-3.3.5 | spec/lazier/configuration_spec.rb |