[ 
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:34 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 @ 'fetches all settings from a script tag':
{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: poor...@me.com):
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}
 

> 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)

Reply via email to