[
https://issues.apache.org/jira/browse/FLAGON-451?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16929009#comment-16929009
]
Joshua Poore edited comment on FLAGON-451 at 9/13/19 6:23 AM:
--------------------------------------------------------------
added dom-storage 2.0.2 (should be pre- jsdom 10) as dev-dependency to Mock
sessionStorage in unit tests. pushed to FLAGON-434 branch
[https://www.npmjs.com/package/dom-storage/v/2.0.2]
added to getInitialSettings_spec.js:
{code:java}
import 'jsdom-global/register'; #adds global objects like windows to jsdom
import { Storage } from 'dom-storage'; #storage mock
{code}
also added sessionStorage within test context
{code:java}
window.sessionStorage = new Storage(null, { strict: true });
{code}
was (Author: [email protected]):
added dom-storage 2.0.2 (should be pre- jsdom 10) as dev-dependency to Mock
sessionStorage in unit tests. pushed to FLAGON-434 branch
Again, added function to getInitialSettings ('getSessionId') works in testing
with example page, exactly as expected. But, unit tests fail
[https://www.npmjs.com/package/dom-storage/v/2.0.2]
added to getInitialSettings_spec.js:
{code:java}
import 'jsdom-global/register'; #adds global objects like windows to jsdom
import { Storage } from 'dom-storage'; #storage mock
{code}
also added sessionStorage within test context
{code:java}
window.sessionStorage = new Storage(null, { strict: true });
{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)