Created
March 18, 2015 16:35
-
-
Save piperniehaus/dd6094cfe2252d0020d9 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
require 'rails_helper' | |
describe Week do | |
# it 'has a valid factory' do | |
# expect(create(:week)).to be_valid | |
# end | |
it 'is a Week' do | |
week = Week.new({year: 2015, month: 5, week: 1, start_date: Date.new(2015,5,4)}) | |
expect(week).to be_valid | |
end | |
it 'is invalid without a start date' do | |
week = Week.new({year: 2015, month: 5, week: 1}) | |
expect(week).to_not be_valid | |
end | |
it 'is invalid without a year' do | |
week = Week.new({month: 5, week: 1, start_date: Date.new(2015,5,4)}) | |
expect(week).to_not be_valid | |
end | |
it 'is invalid without a month' do | |
week = Week.new({year: 2015, week: 1, start_date: Date.new(2015,5,4)}) | |
expect(week).to_not be_valid | |
end | |
it 'is invalid without a week' do | |
week = Week.new({year: 2015, month: 5, start_date: Date.new(2015,5,4)}) | |
expect(week).to_not be_valid | |
end | |
it 'is invalid if there is already a record with the same year, month and week' do | |
Week.create({year: 2015, month: 5, week: 1, start_date: Date.new(2015,5,4)}) | |
week2 = Week.new({year: 2015, month: 5, week: 1, start_date: Date.new(2015,5,3)}) | |
expect(week2).to_not be_valid | |
end | |
it 'is invalid if there is another record with the same start date' do | |
Week.create({year: 2015, month: 5, week: 1, start_date: Date.new(2015,5,4)}) | |
week2 = Week.new({year: 2015, month: 5, week: 2, start_date: Date.new(2015,5,4)}) | |
expect(week2).to_not be_valid | |
end | |
end |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment