Skip to content

Instantly share code, notes, and snippets.

@dennismonsewicz
Last active December 31, 2015 06:29
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save dennismonsewicz/8eb18720528a0fa5c3b5 to your computer and use it in GitHub Desktop.
Save dennismonsewicz/8eb18720528a0fa5c3b5 to your computer and use it in GitHub Desktop.
class User < ActiveRecord::Base
def full_name
"#{first_name} #{last_name if last_name.present?}".strip
end
end
# Tests
# Without context
require 'spec_helper'
describe User do
let(:user) { User.new first_name: "Bob", last_name: "Sieger" }
describe "instance methods" do
describe "#full_name" do
it "has full_name equal to users first_name plus last_name" do
user.full_name.should eq "Bob Sieger"
end
it "has full_name equal to user's first_name" do
user.last_name = nil
user.full_name.should eq "Bob"
end
end
end
end
# With context
require 'spec_helper'
describe User do
let(:user) { User.new first_name: "Bob", last_name: "Sieger" }
describe "instance methods" do
describe "#full_name" do
context "when user has a first_name and last_name" do
it "has full_name equal to user's first_name and last_name" do
user.full_name.should eq "Bob Sieger"
end
end
context "when user has only first_name" do
it "has full_name equal to user's first_name" do
user.last_name = nil
user.full_name.should eq "Bob"
end
end
end
end
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment