Sha256: ca83b072016dd83e367279b40cbe56f13cbb6ee1a6d468ff3c4484ed0f0cad10
Contents?: true
Size: 1.59 KB
Versions: 12
Compression:
Stored size: 1.59 KB
Contents
RSpec.describe Evil::Client::NameError do let(:error) { described_class.new name } let(:name) { "object_id" } describe ".check!" do subject { described_class.check! name } context "with a valid name" do let(:name) { "qux_3" } it "symbolizes the name" do expect(subject).to eq :qux_3 end end context "with a name starting from a digit" do let(:name) { "1qux_3" } it "raises itself" do expect { subject }.to raise_error described_class end end context "with a name starting from underscore" do let(:name) { "_qux_3" } it "raises itself" do expect { subject }.to raise_error described_class end end context "with a one-letter name" do let(:name) { "q" } it "raises itself" do expect { subject }.to raise_error described_class end end context "with a name ending with the underscore" do let(:name) { "qux_3_" } it "raises itself" do expect { subject }.to raise_error described_class end end context "with a name containing improper symbols" do let(:name) { "quX_3" } it "raises itself" do expect { subject }.to raise_error described_class end end context "with a forbidden name" do let(:name) { "object_id" } it "raises itself" do expect { subject }.to raise_error described_class end end end describe "#message" do subject { error.message } it "builds a proper error message" do expect(subject).to include "Invalid name :object_id." end end end
Version data entries
12 entries across 12 versions & 1 rubygems