Skip to content

Commit

Permalink
feat: gaec migration
Browse files Browse the repository at this point in the history
  • Loading branch information
AASHISH MALIK committed Nov 4, 2024
1 parent ba694a5 commit d4f4f82
Show file tree
Hide file tree
Showing 2 changed files with 11 additions and 162 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -36,18 +36,14 @@ const updateMappingJson = (mapping) => {
const responseBuilder = async (metadata, message, { Config }, payload) => {
const response = defaultRequestConfig();
const { event } = message;
const { subAccount } = Config;
let { customerId, loginCustomerId } = Config;
if (isNumber(customerId)) {
customerId = customerId.toString();
}
if (isNumber(loginCustomerId)) {
loginCustomerId = loginCustomerId.toString();
}
if (!isString(customerId) || !isString(loginCustomerId)) {
throw new InstrumentationError('customerId and loginCustomerId should be a string or number');
if (isDefinedAndNotNull(Config.configData)) {

Check failure on line 39 in src/v0/destinations/google_adwords_enhanced_conversions/transform.js

View workflow job for this annotation

GitHub Actions / Check for formatting & lint errors

'isDefinedAndNotNull' is not defined
const configDetails = JSON.parse(Config.configData);
Config.customerId = configDetails.customerId;
if (configDetails.loginCustomerId) {
Config.loginCustomerId = configDetails.loginCustomerId;
}
}
const filteredCustomerId = removeHyphens(customerId);
const filteredCustomerId = removeHyphens(Config.customerId);
response.endpoint = `${BASE_ENDPOINT}/${filteredCustomerId}:uploadConversionAdjustments`;
response.body.JSON = payload;
const accessToken = getAccessToken(metadata, 'access_token');
Expand All @@ -57,12 +53,10 @@ const responseBuilder = async (metadata, message, { Config }, payload) => {
'developer-token': getValueFromMessage(metadata, 'secret.developer_token'),
};
response.params = { event, customerId: filteredCustomerId };
if (subAccount)
if (loginCustomerId) {
const filteredLoginCustomerId = removeHyphens(loginCustomerId);
response.headers['login-customer-id'] = filteredLoginCustomerId;
} else throw new ConfigurationError(`LoginCustomerId is required as subAccount is true.`);

if (Config.loginCustomerId) {
const filteredLoginCustomerId = removeHyphens(Config.loginCustomerId);
response.headers['login-customer-id'] = filteredLoginCustomerId;
}
return response;
};

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -683,151 +683,6 @@ export const data = [
},
},
},
{
name: 'google_adwords_enhanced_conversions',
description: 'Test 4',
feature: 'processor',
module: 'destination',
version: 'v0',
input: {
request: {
body: [
{
metadata: {
secret: {
access_token: 'abcd1234',
refresh_token: 'efgh5678',
developer_token: 'ijkl91011',
},
},
destination: {
Config: {
rudderAccountId: '25u5whFH7gVTnCiAjn4ykoCLGoC',
customerId: '1234567890',
subAccount: true,
loginCustomerId: '',
listOfConversions: [
{
conversions: 'Page View',
},
{
conversions: 'Product Added',
},
],
authStatus: 'active',
},
},
message: {
channel: 'web',
context: {
app: {
build: '1.0.0',
name: 'RudderLabs JavaScript SDK',
namespace: 'com.rudderlabs.javascript',
version: '1.0.0',
},
traits: {
firstName: 'John',
lastName: 'Gomes',
city: 'London',
state: 'UK',
streetAddress: '71 Cherry Court SOUTHAMPTON SO53 5PD UK',
},
library: {
name: 'RudderLabs JavaScript SDK',
version: '1.0.0',
},
userAgent:
'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/77.0.3865.90 Safari/537.36',
locale: 'en-US',
ip: '0.0.0.0',
os: {
name: '',
version: '',
},
screen: {
density: 2,
},
},
event: 'Product Added',
type: 'track',
messageId: '5e10d13a-bf9a-44bf-b884-43a9e591ea71',
originalTimestamp: '2019-10-14T11:15:18.299Z',
anonymousId: '00000000000000000000000000',
userId: '12345',
properties: {
gclid: 'gclid1234',
conversionDateTime: '2022-01-01 12:32:45-08:00',
adjustedValue: '10',
currencyCode: 'INR',
adjustmentDateTime: '2022-01-01 12:32:45-08:00',
partialFailure: true,
campaignId: '1',
templateId: '0',
orderId: 10000,
total: 1000,
products: [
{
product_id: '507f1f77bcf86cd799439011',
sku: '45790-32',
name: 'Monopoly: 3rd Edition',
price: '19',
position: '1',
category: 'cars',
url: 'https://www.example.com/product/path',
image_url: 'https://www.example.com/product/path.jpg',
quantity: '2',
},
{
product_id: '507f1f77bcf86cd7994390112',
sku: '45790-322',
name: 'Monopoly: 3rd Edition2',
price: '192',
quantity: 22,
position: '12',
category: 'Cars2',
url: 'https://www.example.com/product/path2',
image_url: 'https://www.example.com/product/path.jpg2',
},
],
},
integrations: {
All: true,
},
name: 'ApplicationLoaded',
sentAt: '2019-10-14T11:15:53.296Z',
},
},
],
},
},
output: {
response: {
status: 200,
body: [
{
metadata: {
secret: {
access_token: 'abcd1234',
refresh_token: 'efgh5678',
developer_token: 'ijkl91011',
},
},
statusCode: 400,
error: 'LoginCustomerId is required as subAccount is true.',
statTags: {
errorCategory: 'dataValidation',
errorType: 'configuration',
destType: 'GOOGLE_ADWORDS_ENHANCED_CONVERSIONS',
module: 'destination',
implementation: 'native',
feature: 'processor',
},
},
],
},
},
},
{
name: 'google_adwords_enhanced_conversions',
description: 'Test 5',
Expand Down

0 comments on commit d4f4f82

Please sign in to comment.