[ https://issues.apache.org/jira/browse/FLAGON-451?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16929011#comment-16929011 ]
Joshua Poore commented on FLAGON-451: ------------------------------------- Massaged how the 'getSessionId' function works, pulling it out of the getInitialSettings context to allow for better testing. However, still getting persistent failure on 'fetches all settings from a script tag' test. New error references 'getItem' of 'undefined'. Meaning, that windows.sessionStorage still isn't working like it should. {code:java} TypeError: Cannot read property 'getItem' of undefined at getSessionId (/Users/jpoore/Documents/Apache_Flagon/test/incubator-flagon-useralejs/src/getInitialSettings.js:58:40) at Object.<anonymous> (/Users/jpoore/Documents/Apache_Flagon/test/incubator-flagon-useralejs/src/getInitialSettings.js:18:17) at Module._compile (internal/modules/cjs/loader.js:759:30) at loader (/Users/jpoore/Documents/Apache_Flagon/test/incubator-flagon-useralejs/node_modules/babel-register/lib/node.js:144:5) at Object.require.extensions.<computed> [as .js] (/Users/jpoore/Documents/Apache_Flagon/test/incubator-flagon-useralejs/node_modules/babel-register/lib/node.js:154:7) at Module.load (internal/modules/cjs/loader.js:628:32) at Function.Module._load (internal/modules/cjs/loader.js:555:12) at Module.require (internal/modules/cjs/loader.js:666:19) at require (internal/modules/cjs/helpers.js:16:16) at Object.<anonymous> (/Users/jpoore/Documents/Apache_Flagon/test/incubator-flagon-useralejs/test/getInitialSettings_spec.js:24:1) at Module._compile (internal/modules/cjs/loader.js:759:30) at loader (/Users/jpoore/Documents/Apache_Flagon/test/incubator-flagon-useralejs/node_modules/babel-register/lib/node.js:144:5) at Object.require.extensions.<computed> [as .js] (/Users/jpoore/Documents/Apache_Flagon/test/incubator-flagon-useralejs/node_modules/babel-register/lib/node.js:154:7) at Module.load (internal/modules/cjs/loader.js:628:32) at Function.Module._load (internal/modules/cjs/loader.js:555:12) at Module.require (internal/modules/cjs/loader.js:666:19) at require (internal/modules/cjs/helpers.js:16:16) at /Users/jpoore/Documents/Apache_Flagon/test/incubator-flagon-useralejs/node_modules/mocha/lib/mocha.js:250:27 at Array.forEach (<anonymous>) at Mocha.loadFiles (/Users/jpoore/Documents/Apache_Flagon/test/incubator-flagon-useralejs/node_modules/mocha/lib/mocha.js:247:14) at Mocha.run (/Users/jpoore/Documents/Apache_Flagon/test/incubator-flagon-useralejs/node_modules/mocha/lib/mocha.js:576:10) at Object.<anonymous> (/Users/jpoore/Documents/Apache_Flagon/test/incubator-flagon-useralejs/node_modules/mocha/bin/_mocha:637:18) at Module._compile (internal/modules/cjs/loader.js:759:30) at Object.Module._extensions..js (internal/modules/cjs/loader.js:770:10) at Module.load (internal/modules/cjs/loader.js:628:32) at Function.Module._load (internal/modules/cjs/loader.js:555:12) at Function.Module.runMain (internal/modules/cjs/loader.js:822:10) at internal/main/run_main_module.js:17:11 {code} > Update unit tests to accommodate session storage features > --------------------------------------------------------- > > Key: FLAGON-451 > URL: https://issues.apache.org/jira/browse/FLAGON-451 > Project: Flagon > Issue Type: Sub-task > Components: UserALE.js > Affects Versions: UserALE.js 2.1.0 > Reporter: Joshua Poore > Assignee: Joshua Poore > Priority: Major > Fix For: UserALE.js 2.1.0 > > > session storage needs to be a known object in unit tests. > exercising sessionStorage in getInitialSettings to preserve session Id at > page refresh (such as submit) performs expectedly in testing with the example > page, however breaks the following unit tests: > {code:java} > 1) getInitialSettings > getInitialSettings > fetches all settings from a script tag: > Uncaught TypeError: Cannot read property 'options' of undefined > at Object.done (test/getInitialSettings_spec.js:76:39) > at > /Users/jpoore/Documents/Apache_Flagon/test/incubator-flagon-useralejs/node_modules/jsdom/lib/jsdom.js:325:18 > at processTicksAndRejections (internal/process/task_queues.js:75:11) > 2) getInitialSettings > getInitialSettings > grabs user id from params: > Uncaught TypeError: Cannot read property 'options' of undefined > at Object.url [as done] (test/getInitialSettings_spec.js:95:39) > at > /Users/jpoore/Documents/Apache_Flagon/test/incubator-flagon-useralejs/node_modules/jsdom/lib/jsdom.js:325:18 > at processTicksAndRejections (internal/process/task_queues.js:75:11) > 3) Userale API > provides configs: > Uncaught TypeError: Cannot read property 'options' of undefined > at Object.done (test/main_spec.js:33:37) > at > /Users/jpoore/Documents/Apache_Flagon/test/incubator-flagon-useralejs/node_modules/jsdom/lib/jsdom.js:325:18 > at processTicksAndRejections (internal/process/task_queues.js:75:11) > 4) Userale API > edits configs: > Uncaught TypeError: Cannot read property 'options' of undefined > at Object.done (test/main_spec.js:58:37) > at > /Users/jpoore/Documents/Apache_Flagon/test/incubator-flagon-useralejs/node_modules/jsdom/lib/jsdom.js:325:18 > at processTicksAndRejections (internal/process/task_queues.js:75:11) > 5) Userale API > starts + stops: > Uncaught TypeError: Cannot read property 'options' of undefined > at Timeout._onTimeout (test/main_spec.js:75:24) > at listOnTimeout (internal/timers.js:531:17) > at processTimers (internal/timers.js:475:7) > 6) Userale API > sends custom logs: > Uncaught TypeError: Cannot read property 'log' of undefined > at Object.done (test/main_spec.js:93:22) > at > /Users/jpoore/Documents/Apache_Flagon/test/incubator-flagon-useralejs/node_modules/jsdom/lib/jsdom.js:325:18 > at processTicksAndRejections > (internal/process/task_queues.js:75:11){code} -- This message was sent by Atlassian Jira (v8.3.2#803003)