From b373158077d7033019172e5105717542d46e326a Mon Sep 17 00:00:00 2001 From: Carlos Paramio Date: Fri, 24 Jan 2014 08:42:24 +0100 Subject: [PATCH] Project name was hardcoded (oops) --- app/models/project_services/assembla_service.rb | 7 +++++-- spec/models/assembla_service_spec.rb | 7 ++++--- 2 files changed, 9 insertions(+), 5 deletions(-) diff --git a/app/models/project_services/assembla_service.rb b/app/models/project_services/assembla_service.rb index 66ecf394784..ad7eade5c7b 100644 --- a/app/models/project_services/assembla_service.rb +++ b/app/models/project_services/assembla_service.rb @@ -16,6 +16,8 @@ # class AssemblaService < Service + attr_accessible :subdomain + include HTTParty validates :token, presence: true, if: :activated? @@ -34,12 +36,13 @@ class AssemblaService < Service def fields [ - { type: 'text', name: 'token', placeholder: '' } + { type: 'text', name: 'token', placeholder: '' }, + { type: 'text', name: 'subdomain', placeholder: '' } ] end def execute(push) - url = "https://atlas.assembla.com/spaces/ouposp/github_tool?secret_key=#{token}" + url = "https://atlas.assembla.com/spaces/#{subdomain}/github_tool?secret_key=#{token}" AssemblaService.post(url, body: { payload: push }.to_json, headers: { 'Content-Type' => 'application/json' }) end end diff --git a/spec/models/assembla_service_spec.rb b/spec/models/assembla_service_spec.rb index ded6d87c33e..395aa4a4444 100644 --- a/spec/models/assembla_service_spec.rb +++ b/spec/models/assembla_service_spec.rb @@ -33,14 +33,15 @@ describe AssemblaService do project_id: project.id, project: project, service_hook: true, - token: 'verySecret' + token: 'verySecret', + subdomain: 'project_name' ) @sample_data = GitPushService.new.sample_data(project, user) - @api_url = 'https://atlas.assembla.com/spaces/ouposp/github_tool?secret_key=verySecret' + @api_url = 'https://atlas.assembla.com/spaces/project_name/github_tool?secret_key=verySecret' WebMock.stub_request(:post, @api_url) end - it "should call FlowDock API" do + it "should call Assembla API" do @assembla_service.execute(@sample_data) WebMock.should have_requested(:post, @api_url).with( body: /#{@sample_data[:before]}.*#{@sample_data[:after]}.*#{project.path}/