Skip to content

Commit

Permalink
fix: twitter_ads logger (#3295)
Browse files Browse the repository at this point in the history
  • Loading branch information
aashishmalik authored Apr 18, 2024
1 parent 86eaa07 commit e92b052
Show file tree
Hide file tree
Showing 2 changed files with 205 additions and 2 deletions.
3 changes: 1 addition & 2 deletions src/v0/destinations/twitter_ads/transform.js
Original file line number Diff line number Diff line change
Expand Up @@ -156,8 +156,7 @@ function validateRequest(message) {
}
}

function process(event, requestMetadata, logger) {
logger.debug(`[TWITTER ADS]: Transforming request received with info`);
function process(event) {
const { message, metadata, destination } = event;

validateRequest(message);
Expand Down
204 changes: 204 additions & 0 deletions test/integrations/destinations/twitter_ads/router/data.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,204 @@
const authHeaderConstant =
'OAuth oauth_consumer_key="qwe", oauth_nonce="V1kMh028kZLLhfeYozuL0B45Pcx6LvuW", oauth_signature="Di4cuoGv4PnCMMEeqfWTcqhvdwc%3D", oauth_signature_method="HMAC-SHA1", oauth_timestamp="1685603652", oauth_token="dummyAccessToken", oauth_version="1.0"';

export const data = [
{
name: 'twitter_ads',
description: 'tests router flow',
feature: 'router',
module: 'destination',
version: 'v0',
input: {
request: {
body: {
input: [
{
message: {
type: 'track',
event: 'ABC Searched',
channel: 'web',
context: {
source: 'test',
userAgent: 'chrome',
traits: {
anonymousId: '50be5c78-6c3f-4b60-be84-97805a316fb1',
email: '[email protected]',
phone: '+1234589947',
ge: 'male',
db: '19950715',
lastname: 'Rudderlabs',
firstName: 'Test',
address: {
city: 'Kolkata',
state: 'WB',
zip: '700114',
country: 'IN',
},
},
device: {
advertisingId: 'abc123',
},
library: {
name: 'rudder-sdk-ruby-sync',
version: '1.0.6',
},
},
messageId: '7208bbb6-2c4e-45bb-bf5b-ad426f3593e9',
timestamp: '2020-08-14T05:30:30.118Z',
properties: {
conversionTime: '2023-06-01T06:03:08.739Z',
tax: 2,
total: 27.5,
coupon: 'hasbros',
revenue: 48,
price: 25,
quantity: 2,
currency: 'USD',
priceCurrency: 'USD',
conversionId: '213123',
numberItems: '2323',
phone: '+919927455678',
twclid: '543',
shipping: 3,
subtotal: 22.5,
affiliation: 'Google Store',
checkout_id: 'fksdjfsdjfisjf9sdfjsd9f',
email: '[email protected]',
contents: [
{
price: '123.3345',
quantity: '12',
id: '12',
},
{
price: 200,
quantity: 11,
id: '4',
},
],
},
anonymousId: '50be5c78-6c3f-4b60-be84-97805a316fb1',
integrations: {
All: true,
},
},
metadata: {
secret: {
consumerKey: 'qwe',
consumerSecret: 'fdghv',
accessToken: 'dummyAccessToken',
accessTokenSecret: 'testAccessTokenSecret',
},
},
destination: {
Config: {
pixelId: 'dummyPixelId',
rudderAccountId: '2EOknn1JNH7WK1MfNku4fGYKkRK',
twitterAdsEventNames: [
{
rudderEventName: 'ABC Searched',
twitterEventId: 'tw-234234324234',
},
{
rudderEventName: 'Home Page Viewed',
twitterEventId: 'tw-odt2o-odt2q',
},
],
},
},
},
],
destType: 'twitter_ads',
},
method: 'POST',
},
},
output: {
response: {
status: 200,
body: {
output: [
{
batched: false,
batchedRequest: {
body: {
FORM: {},
JSON: {
conversions: [
{
contents: [
{ content_id: '12', content_price: 123.3345, num_items: 12 },
{ content_id: '4', content_price: 200, num_items: 11 },
],
conversion_id: '213123',
conversion_time: '2023-06-01T06:03:08.739Z',
event_id: 'tw-234234324234',
identifiers: [
{
hashed_email:
'4c3c8a8cba2f3bb1e9e617301f85d1f68e816a01c7b716f482f2ab9adb8181fb',
},
{
hashed_phone_number:
'b308962b96b40cce7981493a372db9478edae79f83c2d8ca6cd15a39566f8c56',
},
{ twclid: '543' },
],
number_items: 2,
price_currency: 'USD',
value: '25',
},
],
},
JSON_ARRAY: {},
XML: {},
},
endpoint: 'https://ads-api.twitter.com/12/measurement/conversions/dummyPixelId',
files: {},
headers: {
Authorization:
'OAuth oauth_consumer_key="qwe", oauth_nonce="V1kMh028kZLLhfeYozuL0B45Pcx6LvuW", oauth_signature="Di4cuoGv4PnCMMEeqfWTcqhvdwc%3D", oauth_signature_method="HMAC-SHA1", oauth_timestamp="1685603652", oauth_token="dummyAccessToken", oauth_version="1.0"',
'Content-Type': 'application/json',
},
method: 'POST',
params: {},
type: 'REST',
version: '1',
},
destination: {
Config: {
pixelId: 'dummyPixelId',
rudderAccountId: '2EOknn1JNH7WK1MfNku4fGYKkRK',
twitterAdsEventNames: [
{ rudderEventName: 'ABC Searched', twitterEventId: 'tw-234234324234' },
{ rudderEventName: 'Home Page Viewed', twitterEventId: 'tw-odt2o-odt2q' },
],
},
},
metadata: [
{
secret: {
accessToken: 'dummyAccessToken',
accessTokenSecret: 'testAccessTokenSecret',
consumerKey: 'qwe',
consumerSecret: 'fdghv',
},
},
],
statusCode: 200,
},
],
},
},
},
},
].map((tc) => ({
...tc,
mockFns: (_) => {
jest.mock('../../../../../src/v0/destinations/twitter_ads/util', () => ({
getAuthHeaderForRequest: (_a, _b) => {
return { Authorization: authHeaderConstant };
},
}));
},
}));

0 comments on commit e92b052

Please sign in to comment.