Commit dbb6972c authored by Kamil Trzcinski's avatar Kamil Trzcinski
Browse files

Fix tests

parent 22dadfb2ad2d
...@@ -48,7 +48,7 @@ ...@@ -48,7 +48,7 @@
accepts_nested_attributes_for :variables, allow_destroy: true accepts_nested_attributes_for :variables, allow_destroy: true
delegate :commits, :builds, :last_commit, to: :gl_project delegate :commits, :builds, to: :gl_project
# #
# Validations # Validations
...@@ -103,8 +103,8 @@ ...@@ -103,8 +103,8 @@
end end
def ordered_by_last_commit_date def ordered_by_last_commit_date
last_commit_subquery = "(SELECT project_id, MAX(committed_at) committed_at FROM #{Ci::Commit.table_name} GROUP BY project_id)" last_commit_subquery = "(SELECT gl_project_id, MAX(committed_at) committed_at FROM #{Ci::Commit.table_name} GROUP BY gl_project_id)"
joins("LEFT JOIN #{last_commit_subquery} AS last_commit ON #{Ci::Project.table_name}.id = last_commit.project_id"). joins("LEFT JOIN #{last_commit_subquery} AS last_commit ON #{Ci::Project.table_name}.gitlab_id = last_commit.gl_project_id").
order("CASE WHEN last_commit.committed_at IS NULL THEN 1 ELSE 0 END, last_commit.committed_at DESC") order("CASE WHEN last_commit.committed_at IS NULL THEN 1 ELSE 0 END, last_commit.committed_at DESC")
end end
......
...@@ -120,7 +120,6 @@ ...@@ -120,7 +120,6 @@
has_many :starrers, through: :users_star_projects, source: :user has_many :starrers, through: :users_star_projects, source: :user
has_many :commits, ->() { order('CASE WHEN ci_commits.committed_at IS NULL THEN 0 ELSE 1 END', :committed_at, :id) }, dependent: :destroy, class_name: 'Ci::Commit', foreign_key: :gl_project_id has_many :commits, ->() { order('CASE WHEN ci_commits.committed_at IS NULL THEN 0 ELSE 1 END', :committed_at, :id) }, dependent: :destroy, class_name: 'Ci::Commit', foreign_key: :gl_project_id
has_many :builds, through: :commits, dependent: :destroy, class_name: 'Ci::Build' has_many :builds, through: :commits, dependent: :destroy, class_name: 'Ci::Build'
has_one :last_commit, -> { order 'ci_commits.created_at DESC' }, class_name: 'Ci::Commit', foreign_key: :gl_project_id
has_one :import_data, dependent: :destroy, class_name: "ProjectImportData" has_one :import_data, dependent: :destroy, class_name: "ProjectImportData"
has_one :gitlab_ci_project, dependent: :destroy, class_name: "Ci::Project", foreign_key: :gitlab_id has_one :gitlab_ci_project, dependent: :destroy, class_name: "Ci::Project", foreign_key: :gitlab_id
......
- last_commit = project.last_commit - last_commit = project.commits.last
%tr %tr
%td %td
= project.id = project.id
......
...@@ -28,9 +28,8 @@ ...@@ -28,9 +28,8 @@
require 'spec_helper' require 'spec_helper'
describe Ci::Project do describe Ci::Project do
let(:gl_project) { FactoryGirl.create :empty_project, gitlab_ci_project: project } let(:gl_project) { FactoryGirl.create :empty_project }
let (:gl_project) { } subject { FactoryGirl.create :ci_project, gl_project: gl_project }
subject { FactoryGirl.build :ci_project }
it { is_expected.to have_many(:runner_projects) } it { is_expected.to have_many(:runner_projects) }
it { is_expected.to have_many(:runners) } it { is_expected.to have_many(:runners) }
...@@ -40,5 +39,4 @@ ...@@ -40,5 +39,4 @@
it { is_expected.to have_many(:triggers) } it { is_expected.to have_many(:triggers) }
it { is_expected.to have_many(:services) } it { is_expected.to have_many(:services) }
it { is_expected.to validate_presence_of :name }
it { is_expected.to validate_presence_of :timeout } it { is_expected.to validate_presence_of :timeout }
...@@ -44,5 +42,4 @@ ...@@ -44,5 +42,4 @@
it { is_expected.to validate_presence_of :timeout } it { is_expected.to validate_presence_of :timeout }
it { is_expected.to validate_presence_of :default_ref }
describe 'before_validation' do describe 'before_validation' do
it 'should set an random token if none provided' do it 'should set an random token if none provided' do
...@@ -78,7 +75,7 @@ ...@@ -78,7 +75,7 @@
it 'returns ordered list of commits' do it 'returns ordered list of commits' do
commit1 = FactoryGirl.create :ci_commit, committed_at: 1.hour.ago, gl_project: project commit1 = FactoryGirl.create :ci_commit, committed_at: 1.hour.ago, gl_project: project
commit2 = FactoryGirl.create :ci_commit, committed_at: 2.hour.ago, gl_project: project commit2 = FactoryGirl.create :ci_commit, committed_at: 2.hour.ago, gl_project: project
expect(project.commits).to eq([commit2.project, commit1.project]) expect(project.commits).to eq([commit2, commit1])
end end
it 'returns commits ordered by committed_at and id, with nulls last' do it 'returns commits ordered by committed_at and id, with nulls last' do
...@@ -86,7 +83,7 @@ ...@@ -86,7 +83,7 @@
commit2 = FactoryGirl.create :ci_commit, committed_at: nil, gl_project: project commit2 = FactoryGirl.create :ci_commit, committed_at: nil, gl_project: project
commit3 = FactoryGirl.create :ci_commit, committed_at: 2.hour.ago, gl_project: project commit3 = FactoryGirl.create :ci_commit, committed_at: 2.hour.ago, gl_project: project
commit4 = FactoryGirl.create :ci_commit, committed_at: nil, gl_project: project commit4 = FactoryGirl.create :ci_commit, committed_at: nil, gl_project: project
expect(project.commits).to eq([commit2.project, commit4.project, commit3.project, commit1.project]) expect(project.commits).to eq([commit2, commit4, commit3, commit1])
end end
end end
......
...@@ -8,7 +8,7 @@ ...@@ -8,7 +8,7 @@
describe "GET /:project/builds/:id/status.json" do describe "GET /:project/builds/:id/status.json" do
before do before do
get status_ci_project_build_path(@project, @build), format: :json get status_ci_project_build_path(@commit.project, @build), format: :json
end end
it { expect(response.status).to eq(200) } it { expect(response.status).to eq(200) }
......
...@@ -7,7 +7,7 @@ ...@@ -7,7 +7,7 @@
describe "GET /:project/refs/:ref_name/commits/:id/status.json" do describe "GET /:project/refs/:ref_name/commits/:id/status.json" do
before do before do
get status_ci_project_ref_commits_path(@project, @commit.ref, @commit.sha), format: :json get status_ci_project_ref_commits_path(@commit.project, @commit.ref, @commit.sha), format: :json
end end
it { expect(response.status).to eq(200) } it { expect(response.status).to eq(200) }
......
Supports Markdown
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