@quasar/testing appears to be broken



  • So I assume you are running this within a quasar 1.0 beta package, no? What does quasar info tell you when you run it within your project directory?



  • @nothingismagick quasar info on a fresh install of quasar and @quasar/testing with Jest outputs the following:

    $ quasar info
    
    Operating System - Windows_NT(10.0.17134) - win32/x64
    NodeJs - 8.12.0
    
    Global packages
      NPM - 6.4.1
      yarn - 1.12.3
      @quasar/cli - 1.0.0-beta.0
      cordova - Not installed
    
    Important local packages
      quasar - 1.0.0-beta.2 -- High performance, Material Design 2, full front end stack with Vue.js -- build SPA, SSR, PWA, Hybrid Mobile Apps and Electron apps, all simultaneously using the same codebase
      @quasar/app - 1.0.0-beta.4 -- Quasar Framework App CLI
      @quasar/extras - 1.0.0 -- Quasar Framework fonts, icons and animations
      vue - 2.6.6 -- Reactive, component-oriented view layer for modern web interfaces.
      vue-router - 3.0.2 -- Official router for Vue.js 2
      vuex - 3.1.0 -- state management for Vue.js
      electron - Not installed
      electron-packager - Not installed
      electron-builder - Not installed
      @babel/core - 7.2.2 -- Babel compiler core.
      webpack - 4.29.3 -- Packs CommonJs/AMD modules for the browser. Allows to split your codebase into multiple bundles, which can be loaded on demand. Support loaders to preprocess files, i.e. json, jsx, es7, css, less, ... and your custom stuff.
      webpack-dev-server - 3.1.14 -- Serves a webpack app. Updates the browser on changes.
      workbox-webpack-plugin - 3.6.3 -- A plugin for your Webpack build process, helping you generate a manifest of local files that workbox-sw should precache.
      register-service-worker - 1.6.1 -- Script for registering service worker, with hooks
    
    Quasar App Extensions
      @quasar/quasar-app-extension-testing-unit-jest - 1.0.0-beta.6 -- A Quasar App Extension for running Jest tests
      @quasar/quasar-app-extension-testing - 1.0.0-beta.6 -- A Quasar App Extension for managing Test Harnesses
    


  • Please update your @quasar/cli global.

    + @quasar/cli@1.0.0-beta.2

    If that doesn’t work, I am at a bit of a loss, because in all of the windows tests that we ran before promoting uni-jest to beta there was never a problem. Are you running this within a lerna monorepo? Are you installing with yarn or npm?

    Here is the transform that we currently deliver:
    /jest.config.js

      transform: {
        '.*\\.vue$': '<rootDir>/node_modules/vue-jest',
        '.*\\.js$': '<rootDir>/node_modules/babel-jest'
      },
    


  • @nothingismagick

    I’m installing with yarn and I don’t know what a lerna monorepo is.

    I have tried updating the CLI with yarn upgrade global @quasar/cli
    The result is the same. I have also tried this on my Macbook and it was the same result.

    For whatever reason, vue-jest and babel-jest are there in the transform section but are not present in the node_modules folder.



  • Ok, I will try to replicate your problems.



  • I am not sure WHY this is happening all of the sudden, but can confirm. Thankyou for reporting. Please try this in your jest.config.js file:

      transform: {
        '.*\\.vue$': '<rootDir>/node_modules/@quasar/quasar-app-extension-testing-unit-jest/node_modules/vue-jest',
        '.*\\.js$': '<rootDir>/node_modules/@quasar/quasar-app-extension-testing-unit-jest/node_modules/babel-jest'
      },
    


  • After the change, this is what you should see:

    0_1550487314643_Screen Shot 2019-02-18 at 11.54.31.png



  • @nothingismagick yes, that did the trick. Glad I can be of help!



  • Ok great. I will push beta.7 momentarily, but will continue digging in to figure out WHY these modules aren’t being installed in the consuming project all of the sudden.



  • @Jezzta667 - and then suddenly the fix stopped working. I am not sure what is going on, but my hunch is that the NPM servers are being flaky. I have refactored the transform to match the suggested approach, but left your solution “commented out”. For the time being this is the best I can do.