Skip to content
This repository was archived by the owner on Oct 11, 2022. It is now read-only.

Commit 455e87e

Browse files
fblundunalexanderdean
authored andcommitted
Added tests for new methods
1 parent 3fb74d9 commit 455e87e

2 files changed

Lines changed: 90 additions & 2 deletions

File tree

core/lib/core.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -419,7 +419,7 @@ function trackerCore(base64, callback) {
419419
*/
420420
trackLinkClick: function (targetUrl, elementId, elementClasses, elementTarget, elementContent, context, tstamp) {
421421
var eventJson = {
422-
schema: 'iglu:com.snowplowanalytics.snowplow/link_click/jsonschema/1-0-0',
422+
schema: 'iglu:com.snowplowanalytics.snowplow/link_click/jsonschema/1-0-1',
423423
data: removeEmptyProperties({
424424
targetUrl: targetUrl,
425425
elementId: elementId,

core/tests/core.js

Lines changed: 89 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -145,7 +145,7 @@ define([
145145
var elementContent = 'link';
146146

147147
var inputJson = {
148-
schema: 'iglu:com.snowplowanalytics.snowplow/link_click/jsonschema/1-0-0',
148+
schema: 'iglu:com.snowplowanalytics.snowplow/link_click/jsonschema/1-0-1',
149149
data: {
150150
targetUrl: targetUrl,
151151
elementId: elementId,
@@ -382,6 +382,94 @@ define([
382382
compare(tracker.trackRemoveFromCart(sku, name, category, price, quantity, currency), expected);
383383
},
384384

385+
"Track a form change event": function () {
386+
var formId = "parent";
387+
var elementId = "child";
388+
var nodeName = "INPUT";
389+
var type = "text";
390+
var elementClasses = ["important"];
391+
var value = "male";
392+
393+
var inputJson = {
394+
schema: 'iglu:com.snowplowanalytics.snowplow/change_form/jsonschema/1-0-0',
395+
data: {
396+
formId: formId,
397+
elementId: elementId,
398+
nodeName: nodeName,
399+
type: type,
400+
elementClasses: elementClasses,
401+
value: value
402+
}
403+
};
404+
405+
var expected = {
406+
e: 'ue',
407+
ue_pr: JSON.stringify({
408+
schema: unstructEventSchema,
409+
data: inputJson
410+
})
411+
};
412+
413+
compare(tracker.trackFormChange(formId, elementId, nodeName, type, elementClasses, value), expected);
414+
},
415+
416+
"Track a form submission event": function () {
417+
var formId = "parent";
418+
var formClasses = ["formclass"];
419+
var elements = [{
420+
name: "gender",
421+
value: "male",
422+
nodeName: "INPUT",
423+
type: "text"
424+
}];
425+
426+
var inputJson = {
427+
schema: 'iglu:com.snowplowanalytics.snowplow/submit_form/jsonschema/1-0-0',
428+
data: {
429+
formId: formId,
430+
formClasses: formClasses,
431+
elements: elements
432+
}
433+
};
434+
435+
var expected = {
436+
e: 'ue',
437+
ue_pr: JSON.stringify({
438+
schema: unstructEventSchema,
439+
data: inputJson
440+
})
441+
};
442+
443+
compare(tracker.trackFormSubmission(formId, formClasses, elements), expected);
444+
},
445+
446+
"Track a site seach event": function () {
447+
var terms = ["javascript", "development"];
448+
var filters = ["books"];
449+
var totalResults = 35;
450+
var pageResults = 10;
451+
452+
var inputJson = {
453+
schema: 'iglu:com.snowplowanalytics.snowplow/site_search/jsonschema/1-0-0',
454+
data: {
455+
terms: terms,
456+
filters: filters,
457+
totalResults: totalResults,
458+
pageResults: pageResults
459+
}
460+
};
461+
462+
var expected = {
463+
e: 'ue',
464+
ue_pr: JSON.stringify({
465+
schema: unstructEventSchema,
466+
data: inputJson
467+
})
468+
};
469+
470+
compare(tracker.trackSiteSearch(terms, filters, totalResults, pageResults), expected);
471+
},
472+
385473
"Track a page view with custom context": function () {
386474
var url = 'http://www.example.com';
387475
var page = 'title page';

0 commit comments

Comments
 (0)