Commit 9c6086bc authored by Dmitriy Zaporozhets's avatar Dmitriy Zaporozhets

Refactor repository specs

parent 64891c6c
...@@ -13,47 +13,16 @@ describe Repository do ...@@ -13,47 +13,16 @@ describe Repository do
it { is_expected.not_to include('fix') } it { is_expected.not_to include('fix') }
end end
describe :last_commit_for_path do describe :tag_names_contains do
subject { repository.last_commit_for_path(sample_commit.id, '.gitignore').id } subject { repository.tag_names_contains(sample_commit.id) }
it { is_expected.to eq('c1acaa58bbcbc3eafe538cb8274ba387047b69f8') }
end
context :timestamps_by_user_log do it { is_expected.to include('v1.1.0') }
before do it { is_expected.not_to include('v1.0.0') }
Date.stub(:today).and_return(Date.new(2015, 03, 01))
end end
describe 'single e-mail for user' do describe :last_commit_for_path do
let(:user) { create(:user, email: sample_commit.author_email) } subject { repository.last_commit_for_path(sample_commit.id, '.gitignore').id }
subject { repository.timestamps_by_user_log(user) }
it { is_expected.to eq(['2014-08-06', '2014-07-31', '2014-07-31']) }
end
describe 'multiple emails for user' do
let(:email_alias) { create(:email, email: another_sample_commit.author_email) }
let(:user) { create(:user, email: sample_commit.author_email, emails: [email_alias]) }
subject { repository.timestamps_by_user_log(user) }
it { is_expected.to eq(['2015-01-10', '2014-08-06', '2014-07-31', '2014-07-31']) }
end
end
context :commits_by_user_on_date_log do
describe 'single e-mail for user' do
let(:user) { create(:user, email: sample_commit.author_email) }
let(:commit1) { '0ed8c6c6752e8c6ea63e7b92a517bf5ac1209c80' }
let(:commit2) { '7d3b0f7cff5f37573aea97cebfd5692ea1689924' }
subject { repository.commits_by_user_on_date_log(user,Date.new(2014, 07, 31)) }
it 'contains the exepected commits' do it { is_expected.to eq('c1acaa58bbcbc3eafe538cb8274ba387047b69f8') }
expect(subject.flatten.map(&:id)).to eq([commit1, commit2])
end
end
end end
end end
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment