UNPKG

tianji-client-sdk

Version:

121 lines (120 loc) 4.94 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const vitest_1 = require("vitest"); const _1 = require("."); (0, vitest_1.describe)('initTianjiTracker', () => { (0, vitest_1.beforeEach)(() => { document.head.innerHTML = ''; document.body.innerHTML = ''; }); (0, vitest_1.test)('simple', async () => { const script = await (0, _1.initTianjiTracker)({ url: 'https://example.com', websiteId: 'fooo', }); const scriptDoms = document.querySelectorAll('script'); (0, vitest_1.expect)(scriptDoms.length).toBe(1); (0, vitest_1.expect)(scriptDoms[0].src).toBe('https://example.com/tracker.js'); (0, vitest_1.expect)(scriptDoms[0].async).toBe(true); (0, vitest_1.expect)(scriptDoms[0].dataset).toEqual({ websiteId: 'fooo', }); (0, vitest_1.expect)(script).toBe(scriptDoms[0]); (0, vitest_1.expect)(script?.parentElement).toBe(document.head); }); (0, vitest_1.test)('customTrackerName', async () => { await (0, _1.initTianjiTracker)({ url: 'https://example.com', websiteId: 'fooo', customTrackerName: 'custom.js', }); const scriptDoms = document.querySelectorAll('script'); (0, vitest_1.expect)(scriptDoms.length).toBe(1); (0, vitest_1.expect)(scriptDoms[0].src).toBe('https://example.com/custom.js'); (0, vitest_1.expect)(scriptDoms[0].dataset).toEqual({ websiteId: 'fooo', }); }); (0, vitest_1.test)('auto-track set true', async () => { await (0, _1.initTianjiTracker)({ url: 'https://example.com', websiteId: 'fooo', autoTrack: true, }); const scriptDoms = document.querySelectorAll('script'); (0, vitest_1.expect)(scriptDoms.length).toBe(1); (0, vitest_1.expect)(scriptDoms[0].src).toBe('https://example.com/tracker.js'); (0, vitest_1.expect)(scriptDoms[0].dataset).toEqual({ websiteId: 'fooo', }); }); (0, vitest_1.test)('auto-track set false', async () => { await (0, _1.initTianjiTracker)({ url: 'https://example.com', websiteId: 'fooo', autoTrack: false, }); const scriptDoms = document.querySelectorAll('script'); (0, vitest_1.expect)(scriptDoms.length).toBe(1); (0, vitest_1.expect)(scriptDoms[0].src).toBe('https://example.com/tracker.js'); (0, vitest_1.expect)(scriptDoms[0].dataset).toEqual({ websiteId: 'fooo', autoTrack: 'false', }); }); (0, vitest_1.test)('domains', async () => { await (0, _1.initTianjiTracker)({ url: 'https://example.com', websiteId: 'fooo', domains: ['example.com', 'www.example.com'], }); const scriptDoms = document.querySelectorAll('script'); (0, vitest_1.expect)(scriptDoms.length).toBe(1); (0, vitest_1.expect)(scriptDoms[0].src).toBe('https://example.com/tracker.js'); (0, vitest_1.expect)(scriptDoms[0].dataset).toEqual({ websiteId: 'fooo', domains: 'example.com,www.example.com', }); }); (0, vitest_1.test)('disableTrack', async () => { await (0, _1.initTianjiTracker)({ url: 'https://example.com', websiteId: 'fooo', disableTrack: true, }); const scriptDoms = document.querySelectorAll('script'); (0, vitest_1.expect)(scriptDoms.length).toBe(1); (0, vitest_1.expect)(scriptDoms[0].src).toBe('https://example.com/tracker.js'); (0, vitest_1.expect)(scriptDoms[0].dataset).toEqual({ websiteId: 'fooo', doNotTrack: 'true', }); }); (0, vitest_1.test)('autoTrack set true', async () => { await (0, _1.initTianjiTracker)({ url: 'https://example.com', websiteId: 'fooo', autoTrack: true, }); const scriptDoms = document.querySelectorAll('script'); (0, vitest_1.expect)(scriptDoms.length).toBe(1); (0, vitest_1.expect)(scriptDoms[0].src).toBe('https://example.com/tracker.js'); (0, vitest_1.expect)(scriptDoms[0].dataset).toEqual({ websiteId: 'fooo', }); }); (0, vitest_1.test)('autoTrack set false', async () => { await (0, _1.initTianjiTracker)({ url: 'https://example.com', websiteId: 'fooo', autoTrack: false, }); const scriptDoms = document.querySelectorAll('script'); (0, vitest_1.expect)(scriptDoms.length).toBe(1); (0, vitest_1.expect)(scriptDoms[0].src).toBe('https://example.com/tracker.js'); (0, vitest_1.expect)(scriptDoms[0].dataset).toEqual({ websiteId: 'fooo', autoTrack: 'false', }); }); });