diff options
Diffstat (limited to 'spec/helpers/projects_helper_spec.rb')
-rw-r--r-- | spec/helpers/projects_helper_spec.rb | 50 |
1 files changed, 50 insertions, 0 deletions
diff --git a/spec/helpers/projects_helper_spec.rb b/spec/helpers/projects_helper_spec.rb index 49895b0680b..291eafece94 100644 --- a/spec/helpers/projects_helper_spec.rb +++ b/spec/helpers/projects_helper_spec.rb @@ -3,6 +3,56 @@ require 'spec_helper' describe ProjectsHelper do include ProjectForksHelper + describe '#error_tracking_setting_project_json' do + let(:project) { create(:project) } + + context 'error tracking setting does not exist' do + before do + helper.instance_variable_set(:@project, project) + end + + it 'returns nil' do + expect(helper.error_tracking_setting_project_json).to be_nil + end + end + + context 'error tracking setting exists' do + let!(:error_tracking_setting) { create(:project_error_tracking_setting, project: project) } + + context 'api_url present' do + let(:json) do + { + name: error_tracking_setting.project_name, + organization_name: error_tracking_setting.organization_name, + organization_slug: error_tracking_setting.organization_slug, + slug: error_tracking_setting.project_slug + }.to_json + end + + before do + helper.instance_variable_set(:@project, project) + end + + it 'returns error tracking json' do + expect(helper.error_tracking_setting_project_json).to eq(json) + end + end + + context 'api_url not present' do + before do + project.error_tracking_setting.api_url = nil + project.error_tracking_setting.enabled = false + + helper.instance_variable_set(:@project, project) + end + + it 'returns nil' do + expect(helper.error_tracking_setting_project_json).to be_nil + end + end + end + end + describe "#project_status_css_class" do it "returns appropriate class" do expect(project_status_css_class("started")).to eq("table-active") |