- Notifications
You must be signed in to change notification settings - Fork 113
Closed
Labels
Description
Describe the bug A clear and concise description of what the bug is.
VueRouter
instances are not erased properly after completing a test case.
To Reproduce Steps to reproduce the behavior:
git clone git@github.com:maxarndt/vue-testing-library.git npm i npm test
Expected behavior
All tests should pass.
Screenshots
FAIL src/__tests__/vue-router.js ✓ full app rendering/navigating (51 ms) ✕ another app rendering/navigating (13 ms) ✓ setting initial route (6 ms) ● another app rendering/navigating TestingLibraryElementError: Unable to find an element with the text: /you are home/i. This could be because the text is broken up by multiple elements. In this case, you can provide a function for your text matcher to make your matcher more flexible. <body> <div> <div> <a class="router-link-active" data-testid="home-link" href="#/" > Home </a> <a aria-current="page" class="router-link-exact-active router-link-active" data-testid="about-link" href="#/about" > About </a> <div> You are on the about page </div> <div data-testid="location-display" > /about </div> </div> </div> </body> 29 | const {getByTestId, getByText} = render(App, {routes}) 30 | > 31 | expect(getByText(/you are home/i)).toBeInTheDocument() | ^ 32 | expect(getByTestId('location-display')).toHaveTextContent('/') 33 | 34 | await fireEvent.click(getByTestId('about-link')) at Object.getElementError (node_modules/@testing-library/dom/dist/config.js:37:19) at node_modules/@testing-library/dom/dist/query-helpers.js:90:38 at node_modules/@testing-library/dom/dist/query-helpers.js:62:17 at getByText (node_modules/@testing-library/dom/dist/query-helpers.js:111:19) at _callee2$ (src/__tests__/vue-router.js:31:10) at tryCatch (node_modules/regenerator-runtime/runtime.js:63:40) at Generator.invoke [as _invoke] (node_modules/regenerator-runtime/runtime.js:293:22) at Generator.next (node_modules/regenerator-runtime/runtime.js:118:21) at asyncGeneratorStep (node_modules/@babel/runtime/helpers/asyncToGenerator.js:3:24) at _next (node_modules/@babel/runtime/helpers/asyncToGenerator.js:25:9) at node_modules/@babel/runtime/helpers/asyncToGenerator.js:32:7 at Object.<anonymous> (node_modules/@babel/runtime/helpers/asyncToGenerator.js:21:12)
Related information:
@testing-library/vue
version: HEAD at 7bef579Vue
version:"vue": "^2.6.12"
node
version:v12.18.4
npm
version:6.14.9
Additional context
I just added two assertions to an already existent test case and duplicated the test to be executed twice in a row (see maxarndt@306550f).
Both tests should pass if the testing environment is cleaned up properly.
Unfortunately this is not the case.