Commit 61a40c895da980a6d7646460268219c7fac2fdf0

Authored by François Beausoleil
1 parent 7ac8a6a2
Exists in master

Make Problem#url use the configured protocol

app/models/problem.rb
... ... @@ -160,6 +160,7 @@ class Problem
160 160 Rails.application.routes.url_helpers.app_problem_url(
161 161 app,
162 162 self,
  163 + protocol: Errbit::Config.protocol,
163 164 host: Errbit::Config.host,
164 165 port: Errbit::Config.port
165 166 )
... ...
spec/models/problem_spec.rb
... ... @@ -475,4 +475,26 @@ describe Problem, type: 'model' do
475 475 end
476 476 end
477 477 end
  478 +
  479 + context "#url" do
  480 + subject { Fabricate(:problem) }
  481 +
  482 + it "uses the configured protocol" do
  483 + allow(Errbit::Config).to receive(:protocol).and_return("https")
  484 +
  485 + expect(subject.url).to eq "https://errbit.example.com/apps/#{subject.app.id}/problems/#{subject.id}"
  486 + end
  487 +
  488 + it "uses the configured host" do
  489 + allow(Errbit::Config).to receive(:host).and_return("memyselfandi.com")
  490 +
  491 + expect(subject.url).to eq "http://memyselfandi.com/apps/#{subject.app.id}/problems/#{subject.id}"
  492 + end
  493 +
  494 + it "uses the configured port" do
  495 + allow(Errbit::Config).to receive(:port).and_return(8123)
  496 +
  497 + expect(subject.url).to eq "http://errbit.example.com:8123/apps/#{subject.app.id}/problems/#{subject.id}"
  498 + end
  499 + end
478 500 end
... ...