rspec Égaliseurs d'égalité


Exemple

comparer en utilisant eq (==)

RSpec.describe "a string" do
  it "is equal to another string of the same value" do
    expect("this string").to eq("this string")
  end

  it "is not equal to another string of a different value" do
    expect("this string").not_to eq("a different string")
  end
end

RSpec.describe "an integer" do
  it "is equal to a float of the same value" do
    expect(5).to eq(5.0)
  end
end

Lorsque je lance rspec la sortie doit contenir "3 exemples, 0 échecs"

comparer en utilisant ==

RSpec.describe "a string" do
  it "is equal to another string of the same value" do
    expect("this string").to be == "this string"
  end

  it "is not equal to another string of a different value" do
    expect("this string").not_to be == "a different string"
  end
end

RSpec.describe "an integer" do
  it "is equal to a float of the same value" do
    expect(5).to be == 5.0
  end
end

Lorsque je lance rspec la sortie doit contenir "3 exemples, 0 échecs"

comparer en utilisant eql (eql?)

 RSpec.describe "an integer" do
  it "is equal to another integer of the same value" do
    expect(5).to eql(5)
  end

  it "is not equal to another integer of a different value" do
    expect(5).not_to eql(6)
  end

  it "is not equal to a float of the same value" do
    expect(5).not_to eql(5.0)
  end
end

Lorsque je lance rspec la sortie doit contenir "3 exemples, 0 échecs"

comparer en utilisant equal (equal?)

RSpec.describe "a string" do
  it "is equal to itself" do
    string = "this string"
    expect(string).to equal(string)
  end

  it "is not equal to another string of the same value" do
    expect("this string").not_to equal("this string")
  end

  it "is not equal to another string of a different value" do
    expect("this string").not_to equal("a different string")
  end
end

Lorsque je lance rspec la sortie doit contenir "3 exemples, 0 échecs"

comparer en utilisant be (equal?)

RSpec.describe "a string" do
  it "is equal to itself" do
    string = "this string"
    expect(string).to be(string)
  end

  it "is not equal to another string of the same value" do
    expect("this string").not_to be("this string")
  end

  it "is not equal to another string of a different value" do
    expect("this string").not_to be("a different string")
  end
end

Lorsque je lance rspec la sortie doit contenir "3 exemples, 0 échecs"