Sha256: 88cc2ecba96ba4f4482d423ee372f15fc83f265dfd2e2d33e707c3c64cfd01e6

Contents?: true

Size: 1001 Bytes

Versions: 1

Compression:

Stored size: 1001 Bytes

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::Hash do
  let(:reference) {
    rv = {a: 1, "b" => 2}
    rv.default = 0
    rv
  }

  before(:all) do
    ENV["LANG"] = "en"
    ::Lazier.load!
  end

  describe "allows access to keys using method syntax" do
    it "should allow method reference for symbol key" do expect(reference.b).to eq(2) end
    it "should use super for missing key" do expect {reference.c}.to raise_error(NoMethodError) end
  end

  describe "#respond_to" do
    it "should return true for string key" do expect(reference.respond_to?(:a)).to be_true end
    it "should return true for symbol key" do expect(reference.respond_to?(:b)).to be_true end
    it "should return false for missing key" do expect(reference.respond_to?(:c)).to be_false end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
lazier-2.6.0 spec/lazier/hash_spec.rb