Skip to content

Commit 20f7641

Browse files
Allow setting aptrinsic region (#574)
* Aptrinsic (Gainsight PX) - Add region support WIP * Aptrinsic (Gainsight PX) - Add region support Added tests for region setting * Aptrinsic (Gainsight PX) - Add region support Changed new option name to be more accurate Co-authored-by: Nick Wolfe <nwolfe@aptrinsic.com>
1 parent ede07d0 commit 20f7641

File tree

4 files changed

+50
-3
lines changed

4 files changed

+50
-3
lines changed

integrations/aptrinsic/HISTORY.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,8 @@
1+
1.1.0 / 2021-02-21
2+
===================
3+
4+
* Add support for specifying PX region
5+
16
1.0.1 / 2020-12-14
27
===================
38

integrations/aptrinsic/lib/index.js

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,8 +14,14 @@ var integration = require('@segment/analytics.js-integration');
1414
var Aptrinsic = (module.exports = integration('Aptrinsic')
1515
.global('aptrinsic')
1616
.option('apiKey', '')
17+
.option('dataCenter', 'united_states')
1718
.tag(
19+
'united_states',
1820
'<script src="https://web-sdk.aptrinsic.com/api/aptrinsic.js?a={{ apiKey }}">'
21+
)
22+
.tag(
23+
'eu',
24+
'<script src="https://web-sdk-eu.aptrinsic.com/api/aptrinsic.js?a={{ apiKey }}">'
1925
));
2026

2127
/**
@@ -32,7 +38,8 @@ Aptrinsic.prototype.initialize = function() {
3238
window.aptrinsic.q.push(arguments);
3339
};
3440
window.aptrinsic.p = apiKey;
35-
this.load(this.ready);
41+
var tagName = this.options.dataCenter === 'eu' ? 'eu' : 'united_states';
42+
this.load(tagName, this.ready);
3643
};
3744

3845
/**

integrations/aptrinsic/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{
22
"name": "@segment/analytics.js-integration-aptrinsic",
33
"description": "The Aptrinsic analytics.js integration.",
4-
"version": "1.0.1",
4+
"version": "1.1.0",
55
"keywords": [
66
"analytics.js",
77
"analytics.js-integration",

integrations/aptrinsic/test/index.test.js

Lines changed: 36 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -44,11 +44,46 @@ describe('Aptrinsic', function() {
4444
});
4545

4646
describe('before loading', function() {
47-
describe('#initialize', function() {
47+
describe('#initialize default dataCenter', function() {
4848
it('should create window.aptrinsic', function() {
4949
analytics.initialize();
5050
analytics.assert(aptrinsic.loaded());
5151
});
52+
it('should load united_states script by default', function() {
53+
analytics.spy(aptrinsic, 'load');
54+
analytics.initialize();
55+
analytics.loaded(
56+
'<script src="https://web-sdk.aptrinsic.com/api/aptrinsic.js?a=AP-YAQYR6RUCNGM-1">'
57+
);
58+
});
59+
});
60+
describe('#initialize united_states', function() {
61+
it('should create window.aptrinsic', function() {
62+
analytics.initialize();
63+
analytics.assert(aptrinsic.loaded());
64+
});
65+
it('should load united_states script', function() {
66+
analytics.spy(aptrinsic, 'load');
67+
aptrinsic.options.dataCenter = 'united_states'
68+
analytics.initialize();
69+
analytics.loaded(
70+
'<script src="https://web-sdk.aptrinsic.com/api/aptrinsic.js?a=AP-YAQYR6RUCNGM-1">'
71+
);
72+
});
73+
});
74+
describe('#initialize eu', function() {
75+
it('should create window.aptrinsic', function() {
76+
analytics.initialize();
77+
analytics.assert(aptrinsic.loaded());
78+
});
79+
it('should load eu script', function() {
80+
analytics.spy(aptrinsic, 'load');
81+
aptrinsic.options.dataCenter = 'eu'
82+
analytics.initialize();
83+
analytics.loaded(
84+
'<script src="https://web-sdk-eu.aptrinsic.com/api/aptrinsic.js?a=AP-YAQYR6RUCNGM-1">'
85+
);
86+
});
5287
});
5388
});
5489

0 commit comments

Comments
 (0)