Put user.variables in Mailbluster create test
This commit is contained in:
parent
f686f05710
commit
340865ddbd
2 changed files with 27 additions and 17 deletions
12
app/helpers/external/mailbluster_helper.rb
vendored
12
app/helpers/external/mailbluster_helper.rb
vendored
|
|
@ -2,6 +2,10 @@
|
||||||
|
|
||||||
module External
|
module External
|
||||||
module MailblusterHelper
|
module MailblusterHelper
|
||||||
|
def query_api()
|
||||||
|
|
||||||
|
end
|
||||||
|
|
||||||
def create_lead(user)
|
def create_lead(user)
|
||||||
# TODO
|
# TODO
|
||||||
begin
|
begin
|
||||||
|
|
@ -16,14 +20,18 @@ module External
|
||||||
'subscribed' => true,
|
'subscribed' => true,
|
||||||
'tags' => ["snapcon"],
|
'tags' => ["snapcon"],
|
||||||
}.to_json
|
}.to_json
|
||||||
puts request.body.to_json
|
|
||||||
response = http.request(request)
|
response = http.request(request)
|
||||||
puts response.body.to_json
|
# puts request.body.to_json
|
||||||
|
# puts response.body.to_json
|
||||||
return response.to_json
|
return response.to_json
|
||||||
rescue => e
|
rescue => e
|
||||||
puts "ERROR #{e}"
|
puts "ERROR #{e}"
|
||||||
return nil
|
return nil
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def delete_lead(user)
|
||||||
|
|
||||||
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
|
||||||
32
spec/helpers/external/mailbluster_helper_spec.rb
vendored
32
spec/helpers/external/mailbluster_helper_spec.rb
vendored
|
|
@ -8,22 +8,23 @@ describe External::MailblusterHelper, type: :helper do
|
||||||
|
|
||||||
describe 'create_lead' do
|
describe 'create_lead' do
|
||||||
it 'makes a post request to Mailbluster\'s API' do
|
it 'makes a post request to Mailbluster\'s API' do
|
||||||
|
response_body = "{
|
||||||
|
\"message\": \"Lead created\",
|
||||||
|
\"lead\": {
|
||||||
|
\"id\": 329395,
|
||||||
|
\"firstName\": \"#{user.name}\",
|
||||||
|
\"lastName\": \"\",
|
||||||
|
\"fullName\": \"#{user.name}\",
|
||||||
|
\"email\": \"#{user.email}\",
|
||||||
|
\"subscribed\": true,
|
||||||
|
\"tags\": [
|
||||||
|
\"snapcon\"
|
||||||
|
],
|
||||||
|
}
|
||||||
|
}"
|
||||||
stub_request(:post, "http://api.mailbluster.com/api/leads")
|
stub_request(:post, "http://api.mailbluster.com/api/leads")
|
||||||
.to_return(body: `{
|
.to_return(body: response_body, status: 200)
|
||||||
"message": "Lead created",
|
response = create_lead(user)
|
||||||
"lead": {
|
|
||||||
"id": 329395,
|
|
||||||
"firstName": "#{user.name}",
|
|
||||||
"lastName": "",
|
|
||||||
"fullName": "#{user.name}",
|
|
||||||
"email": "#{user.email}",
|
|
||||||
"subscribed": true,
|
|
||||||
"tags": [
|
|
||||||
"snapcon"
|
|
||||||
],
|
|
||||||
}
|
|
||||||
}`, status: 200)
|
|
||||||
create_lead(user)
|
|
||||||
expect(WebMock).to have_requested(:post, "api.mailbluster.com/api/leads").with(body: {
|
expect(WebMock).to have_requested(:post, "api.mailbluster.com/api/leads").with(body: {
|
||||||
'email': user.email,
|
'email': user.email,
|
||||||
'firstName': user.name,
|
'firstName': user.name,
|
||||||
|
|
@ -31,6 +32,7 @@ describe External::MailblusterHelper, type: :helper do
|
||||||
'subscribed': true,
|
'subscribed': true,
|
||||||
'tags': ["snapcon"],
|
'tags': ["snapcon"],
|
||||||
}.to_json)
|
}.to_json)
|
||||||
|
expect(response).to eq(response_body)
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue