Skip to content

Instantly share code, notes, and snippets.

@dHelmgren
Created September 24, 2020 21:39
Show Gist options
  • Save dHelmgren/371c534a63410a6ffbcaae93f2b801b3 to your computer and use it in GitHub Desktop.
Save dHelmgren/371c534a63410a6ffbcaae93f2b801b3 to your computer and use it in GitHub Desktop.
pet name test demo
class Pet
attr_accessor :name
def initialize(name)
@name = name
end
def rename(new_name)
@name = new_name
end
# .. more methods
end
require 'minitest/autorun'
require 'minitest/reporters'
require_relative 'pet'
describe "Pet" do
before do
puts "Creating a pet named Fido"
@pet = Pet.new("Fido")
end
it "must have a name" do
expect(@pet.name).must_equal "Fido"
end
it "must rename pet" do
expect(@pet.name).must_equal "Fido"
@pet.rename( "Fitzgerald" )
expect(@pet.name).must_equal "Fitzgerald"
end
it "Throws an ArgumentError if created without a name" do
expect {
Pet.new()
}.must_raise ArgumentError
end
end
require 'minitest/autorun'
require 'minitest/reporters'
require_relative 'pet'
describe "Pet" do
let (:pet) {
puts "Creating a pet named Fitzgerald"
Pet.new("Fitzgerald")
}
it "must have a name" do
expect(pet.name).must_equal "Fitzgerald"
end
it "must rename the pet" do
expect(pet.name).must_equal "Fitzgerald"
pet.rename( "Fido" )
expect(pet.name).must_equal "Fido"
end
it "Throws an ArgumentError if created without a name" do
expect {
Pet.new
}.must_raise ArgumentError
end
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment