@@ -13,12 +13,12 @@ const localStorage = window.localStorage;
1313function getInitialState ( data ) {
1414 const { skips, suites, config, total, updated, passed,
1515 failed, skipped, warned, retries, perBrowser, apiValues, gui = false , date} = data ;
16- const { errorPatterns, scaleImages, lazyLoadOffset, defaultView} = config ;
16+ const { errorPatterns, scaleImages, lazyLoadOffset, defaultView : viewMode } = config ;
1717 const parsedURL = new URL ( window . location . href ) ;
1818 const filteredBrowsers = parsedURL . searchParams . getAll ( 'browser' ) ;
1919
2020 const formattedSuites = formatSuitesData ( suites ) ;
21- const groupedErrors = groupErrors ( { suites : formattedSuites . suites , errorPatterns, filteredBrowsers} ) ;
21+ const groupedErrors = groupErrors ( { suites : formattedSuites . suites , viewMode , errorPatterns, filteredBrowsers} ) ;
2222
2323 return merge ( defaultState , {
2424 gui,
@@ -32,7 +32,7 @@ function getInitialState(data) {
3232 perBrowser
3333 } ,
3434 view : {
35- viewMode : defaultView ,
35+ viewMode,
3636 scaleImages,
3737 lazyLoadOffset,
3838 ..._loadBaseHost ( config . baseHost , localStorage ) ,
@@ -53,11 +53,12 @@ export default function reducer(state = getInitialState(compiledData), action) {
5353 config : { scaleImages, lazyLoadOffset}
5454 } = action . payload ;
5555 const { errorPatterns} = state . config ;
56- const { filteredBrowsers, testNameFilter} = state . view ;
56+ const { filteredBrowsers, testNameFilter, viewMode } = state . view ;
5757
5858 const formattedSuites = formatSuitesData ( suites ) ;
5959 const groupedErrors = groupErrors ( {
6060 suites : formattedSuites . suites ,
61+ viewMode,
6162 errorPatterns,
6263 filteredBrowsers,
6364 testNameFilter
@@ -79,7 +80,7 @@ export default function reducer(state = getInitialState(compiledData), action) {
7980 }
8081 case actionNames . RUN_ALL_TESTS : {
8182 const suites = clone ( state . suites ) ;
82- Object . values ( suites ) . map ( suite => setStatusToAll ( suite , action . payload . status ) ) ;
83+ Object . values ( suites ) . forEach ( suite => setStatusToAll ( suite , action . payload . status ) ) ;
8384
8485 // TODO: rewrite store on run all tests
8586 return merge ( { } , state , { running : true , suites, view : { groupByError : false } } ) ;
@@ -145,10 +146,10 @@ export default function reducer(state = getInitialState(compiledData), action) {
145146 return _mutateStateView ( state , { expand : 'none' } ) ;
146147 }
147148 case actionNames . VIEW_SHOW_ALL : {
148- return _mutateStateView ( state , { viewMode : 'all' , expand : 'errors' } ) ;
149+ return _mutateViewMode ( state , 'all' ) ;
149150 }
150151 case actionNames . VIEW_SHOW_FAILED : {
151- return _mutateStateView ( state , { viewMode : 'failed' , expand : 'errors' } ) ;
152+ return _mutateViewMode ( state , 'failed' ) ;
152153 }
153154 case actionNames . VIEW_TOGGLE_SKIPPED : {
154155 return _mutateStateView ( state , { showSkipped : ! state . view . showSkipped } ) ;
@@ -173,10 +174,10 @@ export default function reducer(state = getInitialState(compiledData), action) {
173174 const {
174175 suites,
175176 config : { errorPatterns} ,
176- view : { filteredBrowsers}
177+ view : { viewMode , filteredBrowsers}
177178 } = state ;
178179
179- const groupedErrors = groupErrors ( { suites, errorPatterns, filteredBrowsers, testNameFilter} ) ;
180+ const groupedErrors = groupErrors ( { suites, viewMode , errorPatterns, filteredBrowsers, testNameFilter} ) ;
180181
181182 return {
182183 ...state ,
@@ -224,7 +225,7 @@ export default function reducer(state = getInitialState(compiledData), action) {
224225function addTestResult ( state , action ) {
225226 const {
226227 config : { errorPatterns} ,
227- view : { filteredBrowsers, testNameFilter}
228+ view : { viewMode , filteredBrowsers, testNameFilter}
228229 } = state ;
229230 const suites = clone ( state . suites ) ;
230231
@@ -248,7 +249,7 @@ function addTestResult(state, action) {
248249 const suiteIds = clone ( state . suiteIds ) ;
249250 assign ( suiteIds , { failed : getFailedSuiteIds ( suites ) } ) ;
250251
251- const groupedErrors = groupErrors ( { suites, errorPatterns, filteredBrowsers, testNameFilter} ) ;
252+ const groupedErrors = groupErrors ( { suites, viewMode , errorPatterns, filteredBrowsers, testNameFilter} ) ;
252253
253254 return assign ( { } , state , { suiteIds, suites, groupedErrors} ) ;
254255}
@@ -301,6 +302,25 @@ function _mutateStateView(state, mutation) {
301302 return assign ( clone ( state ) , { view : newView } ) ;
302303}
303304
305+ function _mutateViewMode ( state , viewMode ) {
306+ const {
307+ suites,
308+ config : { errorPatterns} ,
309+ view : { filteredBrowsers, testNameFilter}
310+ } = state ;
311+ const groupedErrors = groupErrors ( { suites, viewMode, errorPatterns, filteredBrowsers, testNameFilter} ) ;
312+
313+ return {
314+ ...state ,
315+ groupedErrors,
316+ view : {
317+ ...state . view ,
318+ viewMode,
319+ expand : 'errors'
320+ }
321+ } ;
322+ }
323+
304324function _loadBaseHost ( configuredHost , storage ) {
305325 if ( ! storage ) {
306326 return configuredHost ;
0 commit comments