{"numFailedTestSuites":0,"numFailedTests":0,"numPassedTestSuites":36,"numPassedTests":118,"numPendingTestSuites":0,"numPendingTests":0,"numRuntimeErrorTestSuites":0,"numTodoTests":0,"numTotalTestSuites":36,"numTotalTests":118,"startTime":1674132544961,"success":false,"testResults":[{"leaks":false,"numFailingTests":0,"numPassingTests":22,"numPendingTests":0,"numTodoTests":0,"perfStats":{"end":1674132548080,"runtime":2605,"slow":false,"start":1674132545475},"skipped":false,"testFilePath":"/home/runner/work/react-blog/react-blog/src/pages/ArticlesPage/model/selectors/articlesPageSelectors.test.ts","testResults":[{"ancestorTitles":["getArticlesPageError"],"duration":3,"failureDetails":[],"failureMessages":[],"fullName":"getArticlesPageError should return error","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"should return error"},{"ancestorTitles":["getArticlesPageError"],"duration":1,"failureDetails":[],"failureMessages":[],"fullName":"getArticlesPageError should work with empty state","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"should work with empty state"},{"ancestorTitles":["getArticlesPageIsLoading"],"duration":1,"failureDetails":[],"failureMessages":[],"fullName":"getArticlesPageIsLoading should return isLoading","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"should return isLoading"},{"ancestorTitles":["getArticlesPageIsLoading"],"duration":0,"failureDetails":[],"failureMessages":[],"fullName":"getArticlesPageIsLoading should work with empty state","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"should work with empty state"},{"ancestorTitles":["getArticlesPageView"],"duration":0,"failureDetails":[],"failureMessages":[],"fullName":"getArticlesPageView should return view","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"should return view"},{"ancestorTitles":["getArticlesPageView"],"duration":1,"failureDetails":[],"failureMessages":[],"fullName":"getArticlesPageView should work with empty state","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"should work with empty state"},{"ancestorTitles":["getArticlesPageNum"],"duration":11,"failureDetails":[],"failureMessages":[],"fullName":"getArticlesPageNum should return page number","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"should return page number"},{"ancestorTitles":["getArticlesPageNum"],"duration":1,"failureDetails":[],"failureMessages":[],"fullName":"getArticlesPageNum should work with empty state","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"should work with empty state"},{"ancestorTitles":["getArticlesPageHasMore"],"duration":1,"failureDetails":[],"failureMessages":[],"fullName":"getArticlesPageHasMore should return hasMore","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"should return hasMore"},{"ancestorTitles":["getArticlesPageHasMore"],"duration":1,"failureDetails":[],"failureMessages":[],"fullName":"getArticlesPageHasMore should work with empty state","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"should work with empty state"},{"ancestorTitles":["getArticlesPageLimit"],"duration":0,"failureDetails":[],"failureMessages":[],"fullName":"getArticlesPageLimit should return limit","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"should return limit"},{"ancestorTitles":["getArticlesPageLimit"],"duration":1,"failureDetails":[],"failureMessages":[],"fullName":"getArticlesPageLimit should work with empty state","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"should work with empty state"},{"ancestorTitles":["getArticlesPageIsInited"],"duration":1,"failureDetails":[],"failureMessages":[],"fullName":"getArticlesPageIsInited should return isInited","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"should return isInited"},{"ancestorTitles":["getArticlesPageIsInited"],"duration":1,"failureDetails":[],"failureMessages":[],"fullName":"getArticlesPageIsInited should work with empty state","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"should work with empty state"},{"ancestorTitles":["getArticlesPageSort"],"duration":1,"failureDetails":[],"failureMessages":[],"fullName":"getArticlesPageSort should return sort","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"should return sort"},{"ancestorTitles":["getArticlesPageSort"],"duration":1,"failureDetails":[],"failureMessages":[],"fullName":"getArticlesPageSort should work with empty state","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"should work with empty state"},{"ancestorTitles":["getArticlesPageOrder"],"duration":1,"failureDetails":[],"failureMessages":[],"fullName":"getArticlesPageOrder should return order","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"should return order"},{"ancestorTitles":["getArticlesPageOrder"],"duration":1,"failureDetails":[],"failureMessages":[],"fullName":"getArticlesPageOrder should work with empty state","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"should work with empty state"},{"ancestorTitles":["getArticlesPageSearch"],"duration":1,"failureDetails":[],"failureMessages":[],"fullName":"getArticlesPageSearch should return search","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"should return search"},{"ancestorTitles":["getArticlesPageSearch"],"duration":0,"failureDetails":[],"failureMessages":[],"fullName":"getArticlesPageSearch should work with empty state","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"should work with empty state"},{"ancestorTitles":["getArticlesPageType"],"duration":0,"failureDetails":[],"failureMessages":[],"fullName":"getArticlesPageType should return type","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"should return type"},{"ancestorTitles":["getArticlesPageType"],"duration":1,"failureDetails":[],"failureMessages":[],"fullName":"getArticlesPageType should work with empty state","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"should work with empty state"}],"failureMessage":null},{"leaks":false,"numFailingTests":0,"numPassingTests":4,"numPendingTests":0,"numTodoTests":0,"perfStats":{"end":1674132550785,"runtime":2640,"slow":false,"start":1674132548145},"skipped":false,"testFilePath":"/home/runner/work/react-blog/react-blog/src/features/editableProfileCard/ui/EditableProfileCard/EditableProfileCard.test.tsx","testResults":[{"ancestorTitles":["features/EditableProfileCard"],"duration":162,"failureDetails":[],"failureMessages":[],"fullName":"features/EditableProfileCard Change readonly view to edit view","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"Change readonly view to edit view"},{"ancestorTitles":["features/EditableProfileCard"],"duration":192,"failureDetails":[],"failureMessages":[],"fullName":"features/EditableProfileCard Form data should be restored after cancel","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"Form data should be restored after cancel"},{"ancestorTitles":["features/EditableProfileCard"],"duration":89,"failureDetails":[],"failureMessages":[],"fullName":"features/EditableProfileCard Should show validation error","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"Should show validation error"},{"ancestorTitles":["features/EditableProfileCard"],"duration":126,"failureDetails":[],"failureMessages":[],"fullName":"features/EditableProfileCard Should sent PUT request if no validation error","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"Should sent PUT request if no validation error"}],"failureMessage":null},{"leaks":false,"numFailingTests":0,"numPassingTests":2,"numPendingTests":0,"numTodoTests":0,"perfStats":{"end":1674132551314,"runtime":514,"slow":false,"start":1674132550800},"skipped":false,"testFilePath":"/home/runner/work/react-blog/react-blog/src/features/AuthByUsername/model/services/loginByUsername/loginByUsername.test.ts","testResults":[{"ancestorTitles":["loginByUsername.test"],"duration":6,"failureDetails":[],"failureMessages":[],"fullName":"loginByUsername.test success login","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"success login"},{"ancestorTitles":["loginByUsername.test"],"duration":1,"failureDetails":[],"failureMessages":[],"fullName":"loginByUsername.test error login","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"error login"}],"failureMessage":null},{"leaks":false,"numFailingTests":0,"numPassingTests":5,"numPendingTests":0,"numTodoTests":0,"perfStats":{"end":1674132551607,"runtime":279,"slow":false,"start":1674132551328},"skipped":false,"testFilePath":"/home/runner/work/react-blog/react-blog/src/features/editableProfileCard/model/slice/profileSlice.test.ts","testResults":[{"ancestorTitles":["profileSlice.test"],"duration":3,"failureDetails":[],"failureMessages":[],"fullName":"profileSlice.test test set readonly","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"test set readonly"},{"ancestorTitles":["profileSlice.test"],"duration":0,"failureDetails":[],"failureMessages":[],"fullName":"profileSlice.test test cancel edit","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"test cancel edit"},{"ancestorTitles":["profileSlice.test"],"duration":1,"failureDetails":[],"failureMessages":[],"fullName":"profileSlice.test test update profile","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"test update profile"},{"ancestorTitles":["profileSlice.test"],"duration":0,"failureDetails":[],"failureMessages":[],"fullName":"profileSlice.test test update profile service pending","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"test update profile service pending"},{"ancestorTitles":["profileSlice.test"],"duration":1,"failureDetails":[],"failureMessages":[],"fullName":"profileSlice.test test update profile service fulfilled","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"test update profile service fulfilled"}],"failureMessage":null},{"leaks":false,"numFailingTests":0,"numPassingTests":6,"numPendingTests":0,"numTodoTests":0,"perfStats":{"end":1674132551819,"runtime":199,"slow":false,"start":1674132551620},"skipped":false,"testFilePath":"/home/runner/work/react-blog/react-blog/src/entities/Article/model/selectors/ArticleDetails/articleDetails.test.ts","testResults":[{"ancestorTitles":["getArticleDetailsData"],"duration":2,"failureDetails":[],"failureMessages":[],"fullName":"getArticleDetailsData should return article object","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"should return article object"},{"ancestorTitles":["getArticleDetailsData"],"duration":0,"failureDetails":[],"failureMessages":[],"fullName":"getArticleDetailsData should work with empty state","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"should work with empty state"},{"ancestorTitles":["getArticleDetailsError"],"duration":0,"failureDetails":[],"failureMessages":[],"fullName":"getArticleDetailsError should return error","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"should return error"},{"ancestorTitles":["getArticleDetailsError"],"duration":0,"failureDetails":[],"failureMessages":[],"fullName":"getArticleDetailsError should work with empty state","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"should work with empty state"},{"ancestorTitles":["getArticleDetailsIsLoading"],"duration":0,"failureDetails":[],"failureMessages":[],"fullName":"getArticleDetailsIsLoading should return isLoading","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"should return isLoading"},{"ancestorTitles":["getArticleDetailsIsLoading"],"duration":0,"failureDetails":[],"failureMessages":[],"fullName":"getArticleDetailsIsLoading should work with empty state","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"should work with empty state"}],"failureMessage":null},{"leaks":false,"numFailingTests":0,"numPassingTests":1,"numPendingTests":0,"numTodoTests":0,"perfStats":{"end":1674132552584,"runtime":744,"slow":false,"start":1674132551840},"skipped":false,"testFilePath":"/home/runner/work/react-blog/react-blog/src/pages/ArticleDetailsPage/model/services/addCommentForArticle/addCommentForArticle.test.ts","testResults":[{"ancestorTitles":["addCommentForArticle.test"],"duration":167,"failureDetails":[],"failureMessages":[],"fullName":"addCommentForArticle.test error","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"error"}],"failureMessage":null},{"leaks":false,"numFailingTests":0,"numPassingTests":6,"numPendingTests":0,"numTodoTests":0,"perfStats":{"end":1674132553671,"runtime":1025,"slow":false,"start":1674132552646},"skipped":false,"testFilePath":"/home/runner/work/react-blog/react-blog/src/app/providers/router/ui/AppRouter.test.tsx","testResults":[{"ancestorTitles":["ap/router/AppRouter"],"duration":62,"failureDetails":[],"failureMessages":[],"fullName":"ap/router/AppRouter Page should render","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"Page should render"},{"ancestorTitles":["ap/router/AppRouter"],"duration":7,"failureDetails":[],"failureMessages":[],"fullName":"ap/router/AppRouter Page not found","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"Page not found"},{"ancestorTitles":["ap/router/AppRouter"],"duration":23,"failureDetails":[],"failureMessages":[],"fullName":"ap/router/AppRouter Redirect unauthorized user on main","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"Redirect unauthorized user on main"},{"ancestorTitles":["ap/router/AppRouter"],"duration":102,"failureDetails":[],"failureMessages":[],"fullName":"ap/router/AppRouter Access granted to profile page for authorized user","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"Access granted to profile page for authorized user"},{"ancestorTitles":["ap/router/AppRouter"],"duration":20,"failureDetails":[],"failureMessages":[],"fullName":"ap/router/AppRouter Access forbid (no role)","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"Access forbid (no role)"},{"ancestorTitles":["ap/router/AppRouter"],"duration":18,"failureDetails":[],"failureMessages":[],"fullName":"ap/router/AppRouter Access granted by role","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"Access granted by role"}],"failureMessage":null},{"leaks":false,"numFailingTests":0,"numPassingTests":4,"numPendingTests":0,"numTodoTests":0,"perfStats":{"end":1674132554035,"runtime":353,"slow":false,"start":1674132553682},"skipped":false,"testFilePath":"/home/runner/work/react-blog/react-blog/src/features/editableProfileCard/model/services/updateProfileData/updateProfileData.test.ts","testResults":[{"ancestorTitles":["updateProfileData.test"],"duration":6,"failureDetails":[],"failureMessages":[],"fullName":"updateProfileData.test success","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"success"},{"ancestorTitles":["updateProfileData.test"],"duration":2,"failureDetails":[],"failureMessages":[],"fullName":"updateProfileData.test server error","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"server error"},{"ancestorTitles":["updateProfileData.test"],"duration":1,"failureDetails":[],"failureMessages":[],"fullName":"updateProfileData.test error No Data","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"error No Data"},{"ancestorTitles":["updateProfileData.test"],"duration":1,"failureDetails":[],"failureMessages":[],"fullName":"updateProfileData.test validate error","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"validate error"}],"failureMessage":null},{"leaks":false,"numFailingTests":0,"numPassingTests":2,"numPendingTests":0,"numTodoTests":0,"perfStats":{"end":1674132554288,"runtime":237,"slow":false,"start":1674132554051},"skipped":false,"testFilePath":"/home/runner/work/react-blog/react-blog/src/pages/ArticleDetailsPage/model/slice/articleDetailsCommentSlice.test.ts","testResults":[{"ancestorTitles":["articleDetailsCommentSlice.test"],"duration":3,"failureDetails":[],"failureMessages":[],"fullName":"articleDetailsCommentSlice.test test fetchCommentsByArticleId pending","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"test fetchCommentsByArticleId pending"},{"ancestorTitles":["articleDetailsCommentSlice.test"],"duration":1,"failureDetails":[],"failureMessages":[],"fullName":"articleDetailsCommentSlice.test test fetchCommentsByArticleId fulfilled","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"test fetchCommentsByArticleId fulfilled"}],"failureMessage":null},{"leaks":false,"numFailingTests":0,"numPassingTests":3,"numPendingTests":0,"numTodoTests":0,"perfStats":{"end":1674132554964,"runtime":659,"slow":false,"start":1674132554305},"skipped":false,"testFilePath":"/home/runner/work/react-blog/react-blog/src/pages/ArticlesPage/model/services/fetchNextArticlesPage/fetchNextArticlesPage.test.ts","testResults":[{"ancestorTitles":["fetchNextArticlesPage.test"],"duration":5,"failureDetails":[],"failureMessages":[],"fullName":"fetchNextArticlesPage.test success","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"success"},{"ancestorTitles":["fetchNextArticlesPage.test"],"duration":1,"failureDetails":[],"failureMessages":[],"fullName":"fetchNextArticlesPage.test fetchArticlesList not called","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"fetchArticlesList not called"},{"ancestorTitles":["fetchNextArticlesPage.test"],"duration":1,"failureDetails":[],"failureMessages":[],"fullName":"fetchNextArticlesPage.test fetch when is loading","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"fetch when is loading"}],"failureMessage":null},{"leaks":false,"numFailingTests":0,"numPassingTests":2,"numPendingTests":0,"numTodoTests":0,"perfStats":{"end":1674132555349,"runtime":367,"slow":false,"start":1674132554982},"skipped":false,"testFilePath":"/home/runner/work/react-blog/react-blog/src/entities/Article/model/slice/articleDetailsSlice.test.ts","testResults":[{"ancestorTitles":["articleDetailsSlice.test"],"duration":3,"failureDetails":[],"failureMessages":[],"fullName":"articleDetailsSlice.test test fetchArticleById pending","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"test fetchArticleById pending"},{"ancestorTitles":["articleDetailsSlice.test"],"duration":1,"failureDetails":[],"failureMessages":[],"fullName":"articleDetailsSlice.test test fetchArticleById fulfilled","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"test fetchArticleById fulfilled"}],"failureMessage":null},{"leaks":false,"numFailingTests":0,"numPassingTests":5,"numPendingTests":0,"numTodoTests":0,"perfStats":{"end":1674132555712,"runtime":351,"slow":false,"start":1674132555361},"skipped":false,"testFilePath":"/home/runner/work/react-blog/react-blog/src/features/editableProfileCard/model/services/validateProfileData/validateProfileData.test.ts","testResults":[{"ancestorTitles":["validateProfileData.test"],"duration":2,"failureDetails":[],"failureMessages":[],"fullName":"validateProfileData.test success","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"success"},{"ancestorTitles":["validateProfileData.test"],"duration":1,"failureDetails":[],"failureMessages":[],"fullName":"validateProfileData.test without firstname and lastname","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"without firstname and lastname"},{"ancestorTitles":["validateProfileData.test"],"duration":0,"failureDetails":[],"failureMessages":[],"fullName":"validateProfileData.test incorrect age","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"incorrect age"},{"ancestorTitles":["validateProfileData.test"],"duration":1,"failureDetails":[],"failureMessages":[],"fullName":"validateProfileData.test incorrect country","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"incorrect country"},{"ancestorTitles":["validateProfileData.test"],"duration":1,"failureDetails":[],"failureMessages":[],"fullName":"validateProfileData.test incorrect all","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"incorrect all"}],"failureMessage":null},{"leaks":false,"numFailingTests":0,"numPassingTests":2,"numPendingTests":0,"numTodoTests":0,"perfStats":{"end":1674132556000,"runtime":277,"slow":false,"start":1674132555723},"skipped":false,"testFilePath":"/home/runner/work/react-blog/react-blog/src/pages/ArticleDetailsPage/model/services/fetchCommentsByArticleId/fetchCommentsByArticleId.test.ts","testResults":[{"ancestorTitles":["fetchArticleById.test"],"duration":5,"failureDetails":[],"failureMessages":[],"fullName":"fetchArticleById.test success","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"success"},{"ancestorTitles":["fetchArticleById.test"],"duration":1,"failureDetails":[],"failureMessages":[],"fullName":"fetchArticleById.test error","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"error"}],"failureMessage":null},{"leaks":false,"numFailingTests":0,"numPassingTests":2,"numPendingTests":0,"numTodoTests":0,"perfStats":{"end":1674132556519,"runtime":502,"slow":false,"start":1674132556017},"skipped":false,"testFilePath":"/home/runner/work/react-blog/react-blog/src/pages/ArticlesPage/model/services/initArticlesPage/initArticlesPage.test.ts","testResults":[{"ancestorTitles":["initArticlesPage.test"],"duration":5,"failureDetails":[],"failureMessages":[],"fullName":"initArticlesPage.test success","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"success"},{"ancestorTitles":["initArticlesPage.test"],"duration":1,"failureDetails":[],"failureMessages":[],"fullName":"initArticlesPage.test when inited","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"when inited"}],"failureMessage":null},{"leaks":false,"numFailingTests":0,"numPassingTests":2,"numPendingTests":0,"numTodoTests":0,"perfStats":{"end":1674132556812,"runtime":282,"slow":false,"start":1674132556530},"skipped":false,"testFilePath":"/home/runner/work/react-blog/react-blog/src/entities/Article/model/services/fetchArticleById/fetchArticleById.test.ts","testResults":[{"ancestorTitles":["fetchArticleById.test"],"duration":5,"failureDetails":[],"failureMessages":[],"fullName":"fetchArticleById.test success","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"success"},{"ancestorTitles":["fetchArticleById.test"],"duration":1,"failureDetails":[],"failureMessages":[],"fullName":"fetchArticleById.test error","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"error"}],"failureMessage":null},{"leaks":false,"numFailingTests":0,"numPassingTests":4,"numPendingTests":0,"numTodoTests":0,"perfStats":{"end":1674132557013,"runtime":191,"slow":false,"start":1674132556822},"skipped":false,"testFilePath":"/home/runner/work/react-blog/react-blog/src/entities/User/model/slice/userSlice.test.ts","testResults":[{"ancestorTitles":["userSlice"],"duration":4,"failureDetails":[],"failureMessages":[],"fullName":"userSlice initAuthData with empty localStorage","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"initAuthData with empty localStorage"},{"ancestorTitles":["userSlice"],"duration":1,"failureDetails":[],"failureMessages":[],"fullName":"userSlice initAuthData with not empty localStorage","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"initAuthData with not empty localStorage"},{"ancestorTitles":["userSlice"],"duration":1,"failureDetails":[],"failureMessages":[],"fullName":"userSlice set auth data","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"set auth data"},{"ancestorTitles":["userSlice"],"duration":1,"failureDetails":[],"failureMessages":[],"fullName":"userSlice logout","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"logout"}],"failureMessage":null},{"leaks":false,"numFailingTests":0,"numPassingTests":3,"numPendingTests":0,"numTodoTests":0,"perfStats":{"end":1674132557616,"runtime":593,"slow":false,"start":1674132557023},"skipped":false,"testFilePath":"/home/runner/work/react-blog/react-blog/src/entities/Counter/ui/Counter.test.tsx","testResults":[{"ancestorTitles":["Counter"],"duration":27,"failureDetails":[],"failureMessages":[],"fullName":"Counter Test render","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"Test render"},{"ancestorTitles":["Counter"],"duration":44,"failureDetails":[],"failureMessages":[],"fullName":"Counter Increment","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"Increment"},{"ancestorTitles":["Counter"],"duration":27,"failureDetails":[],"failureMessages":[],"fullName":"Counter Decrement","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"Decrement"}],"failureMessage":null},{"leaks":false,"numFailingTests":0,"numPassingTests":4,"numPendingTests":0,"numTodoTests":0,"perfStats":{"end":1674132557821,"runtime":194,"slow":false,"start":1674132557627},"skipped":false,"testFilePath":"/home/runner/work/react-blog/react-blog/src/pages/ArticleDetailsPage/model/selectors/comments.test.ts","testResults":[{"ancestorTitles":["getArticleCommentsError"],"duration":3,"failureDetails":[],"failureMessages":[],"fullName":"getArticleCommentsError should return error","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"should return error"},{"ancestorTitles":["getArticleCommentsError"],"duration":1,"failureDetails":[],"failureMessages":[],"fullName":"getArticleCommentsError should work with empty state","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"should work with empty state"},{"ancestorTitles":["getArticleCommentsIsLoading"],"duration":0,"failureDetails":[],"failureMessages":[],"fullName":"getArticleCommentsIsLoading should return isLoading","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"should return isLoading"},{"ancestorTitles":["getArticleCommentsIsLoading"],"duration":1,"failureDetails":[],"failureMessages":[],"fullName":"getArticleCommentsIsLoading should work with empty state","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"should work with empty state"}],"failureMessage":null},{"leaks":false,"numFailingTests":0,"numPassingTests":2,"numPendingTests":0,"numTodoTests":0,"perfStats":{"end":1674132558170,"runtime":338,"slow":false,"start":1674132557832},"skipped":false,"testFilePath":"/home/runner/work/react-blog/react-blog/src/features/editableProfileCard/model/services/fetchProfileData/fetchProfileData.test.ts","testResults":[{"ancestorTitles":["fetchProfileData.test"],"duration":5,"failureDetails":[],"failureMessages":[],"fullName":"fetchProfileData.test success","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"success"},{"ancestorTitles":["fetchProfileData.test"],"duration":1,"failureDetails":[],"failureMessages":[],"fullName":"fetchProfileData.test error","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"error"}],"failureMessage":null},{"leaks":false,"numFailingTests":0,"numPassingTests":4,"numPendingTests":0,"numTodoTests":0,"perfStats":{"end":1674132558629,"runtime":441,"slow":false,"start":1674132558188},"skipped":false,"testFilePath":"/home/runner/work/react-blog/react-blog/src/features/addCommentForm/model/selectors/addCommentFormSelectors.test.ts","testResults":[{"ancestorTitles":["getAddCommentFormText"],"duration":2,"failureDetails":[],"failureMessages":[],"fullName":"getAddCommentFormText should return addCommentForm object","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"should return addCommentForm object"},{"ancestorTitles":["getAddCommentFormText"],"duration":0,"failureDetails":[],"failureMessages":[],"fullName":"getAddCommentFormText should work with empty state","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"should work with empty state"},{"ancestorTitles":["getAddCommentFormError"],"duration":0,"failureDetails":[],"failureMessages":[],"fullName":"getAddCommentFormError should return error","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"should return error"},{"ancestorTitles":["getAddCommentFormError"],"duration":1,"failureDetails":[],"failureMessages":[],"fullName":"getAddCommentFormError should work with empty state","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"should work with empty state"}],"failureMessage":null},{"leaks":false,"numFailingTests":0,"numPassingTests":4,"numPendingTests":0,"numTodoTests":0,"perfStats":{"end":1674132558821,"runtime":177,"slow":false,"start":1674132558644},"skipped":false,"testFilePath":"/home/runner/work/react-blog/react-blog/src/shared/lib/classNames/classNames.test.ts","testResults":[{"ancestorTitles":["classNames"],"duration":2,"failureDetails":[],"failureMessages":[],"fullName":"classNames with only first parameter","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"with only first parameter"},{"ancestorTitles":["classNames"],"duration":1,"failureDetails":[],"failureMessages":[],"fullName":"classNames with first parameter and array(third parameter)","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"with first parameter and array(third parameter)"},{"ancestorTitles":["classNames"],"duration":0,"failureDetails":[],"failureMessages":[],"fullName":"classNames with mods","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"with mods"},{"ancestorTitles":["classNames"],"duration":1,"failureDetails":[],"failureMessages":[],"fullName":"classNames with mods undefined","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"with mods undefined"}],"failureMessage":null},{"leaks":false,"numFailingTests":0,"numPassingTests":2,"numPendingTests":0,"numTodoTests":0,"perfStats":{"end":1674132559067,"runtime":235,"slow":false,"start":1674132558832},"skipped":false,"testFilePath":"/home/runner/work/react-blog/react-blog/src/features/editableProfileCard/model/selectors/getProfileForm/getProfileForm.test.ts","testResults":[{"ancestorTitles":["getProfileForm"],"duration":2,"failureDetails":[],"failureMessages":[],"fullName":"getProfileForm should return profile object","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"should return profile object"},{"ancestorTitles":["getProfileForm"],"duration":0,"failureDetails":[],"failureMessages":[],"fullName":"getProfileForm should work with empty state","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"should work with empty state"}],"failureMessage":null},{"leaks":false,"numFailingTests":0,"numPassingTests":2,"numPendingTests":0,"numTodoTests":0,"perfStats":{"end":1674132559304,"runtime":227,"slow":false,"start":1674132559077},"skipped":false,"testFilePath":"/home/runner/work/react-blog/react-blog/src/features/editableProfileCard/model/selectors/getProfileData/getProfileData.test.ts","testResults":[{"ancestorTitles":["getProfileData"],"duration":2,"failureDetails":[],"failureMessages":[],"fullName":"getProfileData should return profile object","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"should return profile object"},{"ancestorTitles":["getProfileData"],"duration":0,"failureDetails":[],"failureMessages":[],"fullName":"getProfileData should work with empty state","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"should work with empty state"}],"failureMessage":null},{"leaks":false,"numFailingTests":0,"numPassingTests":2,"numPendingTests":0,"numTodoTests":0,"perfStats":{"end":1674132559524,"runtime":203,"slow":false,"start":1674132559321},"skipped":false,"testFilePath":"/home/runner/work/react-blog/react-blog/src/features/AuthByUsername/model/selectors/getLoginState/getLoginState.test.ts","testResults":[{"ancestorTitles":["getLoginState"],"duration":2,"failureDetails":[],"failureMessages":[],"fullName":"getLoginState should return loginForm object","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"should return loginForm object"},{"ancestorTitles":["getLoginState"],"duration":0,"failureDetails":[],"failureMessages":[],"fullName":"getLoginState should work with empty state","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"should work with empty state"}],"failureMessage":null},{"leaks":false,"numFailingTests":0,"numPassingTests":2,"numPendingTests":0,"numTodoTests":0,"perfStats":{"end":1674132560072,"runtime":531,"slow":false,"start":1674132559541},"skipped":false,"testFilePath":"/home/runner/work/react-blog/react-blog/src/widgets/Sidebar/ui/Sidebar/Sidebar.test.tsx","testResults":[{"ancestorTitles":["Sidebar"],"duration":40,"failureDetails":[],"failureMessages":[],"fullName":"Sidebar Test render","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"Test render"},{"ancestorTitles":["Sidebar"],"duration":23,"failureDetails":[],"failureMessages":[],"fullName":"Sidebar Test toggle","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"Test toggle"}],"failureMessage":null},{"leaks":false,"numFailingTests":0,"numPassingTests":2,"numPendingTests":0,"numTodoTests":0,"perfStats":{"end":1674132560255,"runtime":173,"slow":false,"start":1674132560082},"skipped":false,"testFilePath":"/home/runner/work/react-blog/react-blog/src/features/editableProfileCard/model/selectors/getProfileValidateErrors/getProfileValidateErrors.test.ts","testResults":[{"ancestorTitles":["getProfileValidateErrors"],"duration":2,"failureDetails":[],"failureMessages":[],"fullName":"getProfileValidateErrors should return validateErrors","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"should return validateErrors"},{"ancestorTitles":["getProfileValidateErrors"],"duration":1,"failureDetails":[],"failureMessages":[],"fullName":"getProfileValidateErrors should work with empty state","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"should work with empty state"}],"failureMessage":null},{"leaks":false,"numFailingTests":0,"numPassingTests":3,"numPendingTests":0,"numTodoTests":0,"perfStats":{"end":1674132560458,"runtime":185,"slow":false,"start":1674132560273},"skipped":false,"testFilePath":"/home/runner/work/react-blog/react-blog/src/entities/Counter/model/slice/counterSlice.test.ts","testResults":[{"ancestorTitles":["counterSlice"],"duration":3,"failureDetails":[],"failureMessages":[],"fullName":"counterSlice empty state","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"empty state"},{"ancestorTitles":["counterSlice"],"duration":0,"failureDetails":[],"failureMessages":[],"fullName":"counterSlice decrement","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"decrement"},{"ancestorTitles":["counterSlice"],"duration":1,"failureDetails":[],"failureMessages":[],"fullName":"counterSlice increment","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"increment"}],"failureMessage":null},{"leaks":false,"numFailingTests":0,"numPassingTests":3,"numPendingTests":0,"numTodoTests":0,"perfStats":{"end":1674132560650,"runtime":182,"slow":false,"start":1674132560468},"skipped":false,"testFilePath":"/home/runner/work/react-blog/react-blog/src/shared/lib/url/addQueryParams/addQueryParams.test.ts","testResults":[{"ancestorTitles":["shared/url/addQueryParams"],"duration":2,"failureDetails":[],"failureMessages":[],"fullName":"shared/url/addQueryParams test with one param","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"test with one param"},{"ancestorTitles":["shared/url/addQueryParams"],"duration":0,"failureDetails":[],"failureMessages":[],"fullName":"shared/url/addQueryParams test with multiple params","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"test with multiple params"},{"ancestorTitles":["shared/url/addQueryParams"],"duration":0,"failureDetails":[],"failureMessages":[],"fullName":"shared/url/addQueryParams test with undefined","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"test with undefined"}],"failureMessage":null},{"leaks":false,"numFailingTests":0,"numPassingTests":2,"numPendingTests":0,"numTodoTests":0,"perfStats":{"end":1674132560860,"runtime":199,"slow":false,"start":1674132560661},"skipped":false,"testFilePath":"/home/runner/work/react-blog/react-blog/src/features/AuthByUsername/model/slice/loginSlice.test.ts","testResults":[{"ancestorTitles":["loginSlice.test"],"duration":4,"failureDetails":[],"failureMessages":[],"fullName":"loginSlice.test test set username","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"test set username"},{"ancestorTitles":["loginSlice.test"],"duration":0,"failureDetails":[],"failureMessages":[],"fullName":"loginSlice.test test set password","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"test set password"}],"failureMessage":null},{"leaks":false,"numFailingTests":0,"numPassingTests":2,"numPendingTests":0,"numTodoTests":0,"perfStats":{"end":1674132561046,"runtime":174,"slow":false,"start":1674132560872},"skipped":false,"testFilePath":"/home/runner/work/react-blog/react-blog/src/features/editableProfileCard/model/selectors/getProfileIsLoading/getProfileIsLoading.test.ts","testResults":[{"ancestorTitles":["getProfileIsLoading"],"duration":2,"failureDetails":[],"failureMessages":[],"fullName":"getProfileIsLoading should return isLoading","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"should return isLoading"},{"ancestorTitles":["getProfileIsLoading"],"duration":0,"failureDetails":[],"failureMessages":[],"fullName":"getProfileIsLoading should work with empty state","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"should work with empty state"}],"failureMessage":null},{"leaks":false,"numFailingTests":0,"numPassingTests":2,"numPendingTests":0,"numTodoTests":0,"perfStats":{"end":1674132561234,"runtime":177,"slow":false,"start":1674132561057},"skipped":false,"testFilePath":"/home/runner/work/react-blog/react-blog/src/features/editableProfileCard/model/selectors/getProfileReadonly/getProfileReadonly.test.ts","testResults":[{"ancestorTitles":["getProfileReadonly"],"duration":3,"failureDetails":[],"failureMessages":[],"fullName":"getProfileReadonly should return readonly","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"should return readonly"},{"ancestorTitles":["getProfileReadonly"],"duration":0,"failureDetails":[],"failureMessages":[],"fullName":"getProfileReadonly should work with empty state","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"should work with empty state"}],"failureMessage":null},{"leaks":false,"numFailingTests":0,"numPassingTests":2,"numPendingTests":0,"numTodoTests":0,"perfStats":{"end":1674132561433,"runtime":180,"slow":false,"start":1674132561253},"skipped":false,"testFilePath":"/home/runner/work/react-blog/react-blog/src/features/editableProfileCard/model/selectors/getProfileError/getProfileError.test.ts","testResults":[{"ancestorTitles":["getProfileError"],"duration":2,"failureDetails":[],"failureMessages":[],"fullName":"getProfileError should return error","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"should return error"},{"ancestorTitles":["getProfileError"],"duration":1,"failureDetails":[],"failureMessages":[],"fullName":"getProfileError should work with empty state","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"should work with empty state"}],"failureMessage":null},{"leaks":false,"numFailingTests":0,"numPassingTests":1,"numPendingTests":0,"numTodoTests":0,"perfStats":{"end":1674132561641,"runtime":198,"slow":false,"start":1674132561443},"skipped":false,"testFilePath":"/home/runner/work/react-blog/react-blog/src/features/addCommentForm/model/slice/addCommentFormSlice.test.ts","testResults":[{"ancestorTitles":["loginSlice.test"],"duration":3,"failureDetails":[],"failureMessages":[],"fullName":"loginSlice.test test set text","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"test set text"}],"failureMessage":null},{"leaks":false,"numFailingTests":0,"numPassingTests":2,"numPendingTests":0,"numTodoTests":0,"perfStats":{"end":1674132561915,"runtime":255,"slow":false,"start":1674132561660},"skipped":false,"testFilePath":"/home/runner/work/react-blog/react-blog/src/shared/ui/Button/Button.test.tsx","testResults":[{"ancestorTitles":["Button"],"duration":17,"failureDetails":[],"failureMessages":[],"fullName":"Button Test render","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"Test render"},{"ancestorTitles":["Button"],"duration":3,"failureDetails":[],"failureMessages":[],"fullName":"Button Test clear theme","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"Test clear theme"}],"failureMessage":null},{"leaks":false,"numFailingTests":0,"numPassingTests":1,"numPendingTests":0,"numTodoTests":0,"perfStats":{"end":1674132562102,"runtime":176,"slow":false,"start":1674132561926},"skipped":false,"testFilePath":"/home/runner/work/react-blog/react-blog/src/entities/Counter/model/selectors/getCounter/getCounter.test.ts","testResults":[{"ancestorTitles":["getCounter"],"duration":2,"failureDetails":[],"failureMessages":[],"fullName":"getCounter should return counter object","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":"should return counter object"}],"failureMessage":null},{"leaks":false,"numFailingTests":0,"numPassingTests":1,"numPendingTests":0,"numTodoTests":0,"perfStats":{"end":1674132562307,"runtime":184,"slow":false,"start":1674132562123},"skipped":false,"testFilePath":"/home/runner/work/react-blog/react-blog/src/entities/Counter/model/selectors/getCounterValue/getCounterValue.test.ts","testResults":[{"ancestorTitles":["getCounterValue"],"duration":2,"failureDetails":[],"failureMessages":[],"fullName":"getCounterValue","invocations":1,"location":null,"numPassingAsserts":0,"status":"passed","title":""}],"failureMessage":null}],"wasInterrupted":false,"config":{"bail":0,"changedFilesWithAncestor":false,"collectCoverage":false,"collectCoverageFrom":["**/*.{js,jsx}","!**/node_modules/**","!**/build/**","!**/coverage/**","!.eslintrc.js","!.prettierrc.js"],"coverageDirectory":"/home/runner/work/react-blog/react-blog/coverage","coverageProvider":"babel","coverageReporters":["json","text","lcov","clover"],"detectLeaks":false,"detectOpenHandles":false,"errorOnDeprecated":false,"expand":false,"findRelatedTests":false,"forceExit":false,"json":false,"lastCommit":false,"listTests":false,"logHeapUsage":false,"maxConcurrency":5,"maxWorkers":1,"noStackTrace":false,"nonFlagArgs":[],"notify":false,"notifyMode":"failure-change","onlyChanged":false,"onlyFailures":false,"passWithNoTests":false,"projects":[],"reporters":[["default",{}],["/home/runner/work/react-blog/react-blog/node_modules/jest-html-reporters/index.js",{"publicPath":"
/reports/unit","filename":"report.html","openReport":true,"inlineSource":true}]],"rootDir":"/home/runner/work/react-blog/react-blog","runTestsByPath":false,"skipFilter":false,"testFailureExitCode":1,"testPathPattern":"","testSequencer":"/home/runner/work/react-blog/react-blog/node_modules/@jest/test-sequencer/build/index.js","updateSnapshot":"new","useStderr":false,"watch":false,"watchAll":false,"watchman":true},"endTime":1674132562313,"_reporterOptions":{"publicPath":"/home/runner/work/react-blog/react-blog/reports/unit","filename":"report.html","expand":false,"pageTitle":"","hideIcon":false,"testCommand":"npx jest","openReport":true,"failureMessageOnly":0,"enableMergeData":false,"dataMergeLevel":1,"inlineSource":true,"urlForTestFiles":""},"attachInfos":{}}