grunt karma | Jasmine.js tasks issue - gruntjs

After running grunt karma, getting below error, the only change which I made, was upgrading the node packages.
"grunt-contrib-jasmine": "~0.8.2",
"karma": "~0.12.36",
"karma-chrome-launcher": "~0.1.12",
"karma-firefox-launcher": "~0.1.6",
"karma-jasmine": "~0.3.5",
"karma-phantomjs-launcher": "^0.2.0",
Error which I am getting after running Grunt Karma.
Loading "jasmine.js" tasks...ERROR
>> TypeError: Cannot read property '_' of undefined
Loading "jsdoc-plugin.js" tasks...ERROR
>> TypeError: Cannot read property '_' of undefined
Loading "grunt-karma.js" tasks...ERROR
>> TypeError: Cannot read property '_' of undefined
Loading "notify.js" tasks...ERROR
>> TypeError: Cannot read property '_' of undefined
Loading "notify_hooks.js" tasks...ERROR
>> TypeError: Cannot read property 'hooker' of undefined
Loading "open.js" tasks...ERROR
>> TypeError: Cannot read property '_' of undefined
Loading "shell.js" tasks...ERROR
>> TypeError: Cannot read property '_' of undefined
Loading "uncss.js" tasks...ERROR
>> TypeError: Cannot read property '_' of undefined
Loading "usemin.js" tasks...ERROR
>> TypeError: Cannot read property '_' of undefined
Loading "GruntFile.js" tasks...ERROR
>> TypeError: Cannot read property '_' of undefined
Warning: Cannot read property 'name' of undefined Use --force to continue.
TypeError: Cannot read property 'name' of undefined
at Object.<anonymous> (/Users/marif/Dev/JavaScript/JavaScript-Boilerplate/node_modules/grunt/lib/grunt/task.js:224:24)
at Object.<anonymous> (/Users/marif/Dev/JavaScript/JavaScript-Boilerplate/node_modules/grunt/lib/util/task.js:301:30)
at Task.runTaskFn (/Users/marif/Dev/JavaScript/JavaScript-Boilerplate/node_modules/grunt/lib/util/task.js:251:24)
at Task.<anonymous> (/Users/marif/Dev/JavaScript/JavaScript-Boilerplate/node_modules/grunt/lib/util/task.js:300:12)
at Task.start (/Users/marif/Dev/JavaScript/JavaScript-Boilerplate/node_modules/grunt/lib/util/task.js:309:5)
at Object.grunt.tasks (/Users/marif/Dev/JavaScript/JavaScript-Boilerplate/node_modules/grunt/lib/grunt.js:164:8)
at Object.module.exports [as cli] (/Users/marif/Dev/JavaScript/JavaScript-Boilerplate/node_modules/grunt/lib/grunt/cli.js:38:9)
at Object.<anonymous> (/usr/local/lib/node_modules/grunt-cli/bin/grunt:45:20)
at Module._compile (module.js:460:26)
at Object.Module._extensions..js (module.js:478:10)
at Module.load (module.js:355:32)
at Function.Module._load (module.js:310:12)
at Function.Module.runMain (module.js:501:10)
at startup (node.js:129:16)
at node.js:814:3
Aborted due to warnings.
Fatal error: Cannot read property 'exit' of undefined
TypeError: Cannot read property 'exit' of undefined
at Object.fail.warn (/Users/marif/Dev/JavaScript/JavaScript-Boilerplate/node_modules/grunt/lib/grunt/fail.js:73:15)
at Object.task.options.error (/Users/marif/Dev/JavaScript/JavaScript-Boilerplate/node_modules/grunt/lib/grunt.js:137:12)
at Task.<anonymous> (/Users/marif/Dev/JavaScript/JavaScript-Boilerplate/node_modules/grunt/lib/util/task.js:221:29)
at Task.runTaskFn (/Users/marif/Dev/JavaScript/JavaScript-Boilerplate/node_modules/grunt/lib/util/task.js:257:7)
at Task.<anonymous> (/Users/marif/Dev/JavaScript/JavaScript-Boilerplate/node_modules/grunt/lib/util/task.js:300:12)
at Task.start (/Users/marif/Dev/JavaScript/JavaScript-Boilerplate/node_modules/grunt/lib/util/task.js:309:5)
at Object.grunt.tasks (/Users/marif/Dev/JavaScript/JavaScript-Boilerplate/node_modules/grunt/lib/grunt.js:164:8)
at Object.module.exports [as cli] (/Users/marif/Dev/JavaScript/JavaScript-Boilerplate/node_modules/grunt/lib/grunt/cli.js:38:9)
at Object.<anonymous> (/usr/local/lib/node_modules/grunt-cli/bin/grunt:45:20)
at Module._compile (module.js:460:26)
at Object.Module._extensions..js (module.js:478:10)
at Module.load (module.js:355:32)
at Function.Module._load (module.js:310:12)
at Function.Module.runMain (module.js:501:10)
at startup (node.js:129:16)
at node.js:814:3
/Users/marif/Dev/JavaScript/JavaScript-Boilerplate/node_modules/grunt/lib/grunt/fail.js:57
grunt.util.exit(typeof errcode === 'number' ? errcode : fail.code.FATAL_ERRO
^
TypeError: Cannot read property 'exit' of undefined
at Object.fail.fatal (/Users/marif/Dev/JavaScript/JavaScript-Boilerplate/node_modules/grunt/lib/grunt/fail.js:57:13)
at process.uncaughtHandler (/Users/marif/Dev/JavaScript/JavaScript-Boilerplate/node_modules/grunt/lib/grunt.js:130:10)
at process.emit (events.js:107:17)
at process._fatalException (node.js:236:26)
at Task.runTaskFn (/Users/marif/Dev/JavaScript/JavaScript-Boilerplate/node_modules/grunt/lib/util/task.js:257:7)
at Task.<anonymous> (/Users/marif/Dev/JavaScript/JavaScript-Boilerplate/node_modules/grunt/lib/util/task.js:300:12)
at Task.start (/Users/marif/Dev/JavaScript/JavaScript-Boilerplate/node_modules/grunt/lib/util/task.js:309:5)
at Object.grunt.tasks (/Users/marif/Dev/JavaScript/JavaScript-Boilerplate/node_modules/grunt/lib/grunt.js:164:8)
at Object.module.exports [as cli] (/Users/marif/Dev/JavaScript/JavaScript-Boilerplate/node_modules/grunt/lib/grunt/cli.js:38:9)
at Object.<anonymous> (/usr/local/lib/node_modules/grunt-cli/bin/grunt:45:20)
at Module._compile (module.js:460:26)
at Object.Module._extensions..js (module.js:478:10)
at Module.load (module.js:355:32)
at Function.Module._load (module.js:310:12)
at Function.Module.runMain (module.js:501:10)
at startup (node.js:129:16)
Hope to get some pointers to resolve the same.
P.S. It's been running fine if I use karma using 'karma start test/karma.conf.js' from the terminal. But I have been trying to kick off karma through grunt-karma task as well and that's where it's failing.

Related

How to fix this after firebase update?

Heading
PS D:\Progetti\SitoWebLavoro> firebase deploy
node:internal/modules/cjs/loader:936
throw err;
^
Error: Cannot find module 'semver'
Require stack:
C:\Users\Fabio\AppData\Roaming\npm\node_modules\firebase-tools\lib\bin\firebase.js
at Function.Module._resolveFilename (node:internal/modules/cjs/loader:933:15)
at Function.Module._load (node:internal/modules/cjs/loader:778:27)
at Module.require (node:internal/modules/cjs/loader:1005:19)
at require (node:internal/modules/cjs/helpers:102:18)
at Object. (C:\Users\Fabio\AppData\Roaming\npm\node_modules\firebase-tools\lib\bin\firebase.js:4:16)
at Module._compile (node:internal/modules/cjs/loader:1105:14)
at Object.Module._extensions..js (node:internal/modules/cjs/loader:1159:10)
at Module.load (node:internal/modules/cjs/loader:981:32)
at Function.Module._load (node:internal/modules/cjs/loader:822:12)
at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:77:12) {
code: 'MODULE_NOT_FOUND',
requireStack: [
'C:\Users\Fabio\AppData\Roaming\npm\node_modules\firebase-tools\lib\bin\firebase.js'
]
}

VueJs Mocha unit tests RUNTIME EXCEPTION ReferenceError: IDBIndex is not defined

I have an VueJs app with firebase integrated and I am trying to use Mocha to test my components. The tests will pass when firebase is not a dependency in the component. When I bring in firebase I get the following error when running the unit tests.
$ vue-cli-service test:unit
WEBPACK Compiling...
DONE Compiled successfully in 1916ms
WEBPACK Compiled successfully in 1916ms
MOCHA Testing...
RUNTIME EXCEPTION Exception occurred while loading your tests
ReferenceError: IDBIndex is not defined
at Module../node_modules/idb/lib/idb.mjs (....myapp-web/dist/webpack:/node_modules/idb/lib/idb.mjs:87:1)
at __webpack_require__ (....myapp-web/dist/webpack:/webpack/bootstrap:19:1)
at Module../node_modules/#firebase/installations/dist/index.esm.js (....myapp-web/dist/webpack:/node_modules/#firebase/installations/dist/index.esm.js:1:1)
at __webpack_require__ (....myapp-web/dist/webpack:/webpack/bootstrap:19:1)
at Module../node_modules/#firebase/performance/dist/index.esm.js (....myapp-web/dist/webpack:/node_modules/#firebase/performance/dist/index.esm.js:1:1)
at __webpack_require__ (....myapp-web/dist/webpack:/webpack/bootstrap:19:1)
at Module../node_modules/firebase/dist/index.esm.js (....myapp-web/dist/webpack:/node_modules/firebase/dist/index.esm.js:1:1)
at __webpack_require__ (....myapp-web/dist/webpack:/webpack/bootstrap:19:1)
at Module../src/firebaseConfig.js (....myapp-web/dist/webpack:/src/firebaseConfig.js:1:1)
at __webpack_require__ (....myapp-web/dist/webpack:/webpack/bootstrap:19:1)
at Module../tests/unit/loginTest.spec.js (....myapp-web/dist/webpack:/tests/unit/loginTest.spec.js:5:1)
at __webpack_require__ (....myapp-web/dist/webpack:/webpack/bootstrap:19:1)
at run (....myapp-web/dist/webpack:/node_modules/mocha-webpack/lib/entry.js:3:1)
at Array.forEach (<anonymous>)
at Object../node_modules/mocha-webpack/lib/entry.js (....myapp-web/dist/webpack:/node_modules/mocha-webpack/lib/entry.js:10:1)
at __webpack_require__ (....myapp-web/dist/webpack:/webpack/bootstrap:19:1)
at ....myapp-web/dist/webpack:/webpack/bootstrap:83:1
at Object.<anonymous> (....myapp-web/dist/main.js:87:10)
at Module._compile (internal/modules/cjs/loader.js:759:30)
at Object._module2.default._extensions.<computed> [as .js] (....myapp-web/node_modules/mocha-webpack/lib/util/registerRequireHook.js:148:12)
at Module.load (internal/modules/cjs/loader.js:628:32)
at Function.Module._load (internal/modules/cjs/loader.js:555:12)
at Module.require (internal/modules/cjs/loader.js:666:19)
at require (internal/modules/cjs/helpers.js:16:16)
at ....myapp-web/node_modules/mocha/lib/mocha.js:334:36
at Array.forEach (<anonymous>)
at Mocha.loadFiles (....myapp-web/node_modules/mocha/lib/mocha.js:331:14)
at Mocha.run (....myapp-web/node_modules/mocha/lib/mocha.js:811:10)
at ....myapp-web/node_modules/mocha-webpack/lib/runner/TestRunner.js:191:27
at ....myapp-web/node_modules/mocha-webpack/lib/webpack/compiler/registerReadyCallback.js:26:7
at AsyncSeriesHook.eval [as callAsync] (eval at create (....myapp-web/node_modules/tapable/lib/HookCodeFactory.js:33:10), <anonymous>:36:1)
at AsyncSeriesHook.lazyCompileHook (....myapp-web/node_modules/tapable/lib/Hook.js:154:20)
at ....myapp-web/node_modules/webpack/lib/Compiler.js:304:22
at Compiler.emitRecords (....myapp-web/node_modules/webpack/lib/Compiler.js:489:39)
at ....myapp-web/node_modules/webpack/lib/Compiler.js:298:10
at ....myapp-web/node_modules/webpack/lib/Compiler.js:475:14
at eval (eval at create (....myapp-web/node_modules/tapable/lib/HookCodeFactory.js:33:10), <anonymous>:11:1)
at callback (....myapp-web/node_modules/copy-webpack-plugin/dist/index.js:126:17)
at afterEmit (....myapp-web/node_modules/copy-webpack-plugin/dist/index.js:220:13)
at AsyncSeriesHook.eval [as callAsync] (eval at create (....myapp-web/node_modules/tapable/lib/HookCodeFactory.js:33:10), <anonymous>:7:1)
at AsyncSeriesHook.lazyCompileHook (....myapp-web/node_modules/tapable/lib/Hook.js:154:20)
at ....myapp-web/node_modules/webpack/lib/Compiler.js:472:27
at ....myapp-web/node_modules/neo-async/async.js:2818:7
at done (....myapp-web/node_modules/neo-async/async.js:3522:9)
at AsyncSeriesHook.eval [as callAsync] (eval at create (....myapp-web/node_modules/tapable/lib/HookCodeFactory.js:33:10), <anonymous>:6:1)
at ....myapp-web/node_modules/webpack/lib/Compiler.js:454:33
at MemoryFileSystem.writeFile (....myapp-web/node_modules/memory-fs/lib/MemoryFileSystem.js:328:9)
at writeOut (....myapp-web/node_modules/webpack/lib/Compiler.js:452:30)
at ....myapp-web/node_modules/webpack/lib/Compiler.js:466:7
at objectIteratorWithKey (....myapp-web/node_modules/neo-async/async.js:3509:9)
at timesSync (....myapp-web/node_modules/neo-async/async.js:2297:7)
at Object.eachLimit (....myapp-web/node_modules/neo-async/async.js:3463:5)
at emitFiles (....myapp-web/node_modules/webpack/lib/Compiler.js:358:13)
at Immediate._onImmediate (....myapp-web/node_modules/memory-fs/lib/MemoryFileSystem.js:288:4)
at processImmediate (internal/timers.js:439:21)
ERROR mocha-webpack exited with code 1.
Total task duration: 3.9s
loginTest.spec.js
import { expect } from 'chai';
import { shallowMount } from '#vue/test-utils';
import sinon from 'sinon';
import Login from '../../src/components/Login';
const fb = require('../../src/firebaseConfig');
describe('Login.vue', () => {
it('Expect login email field to have default value.', () => {
const wrapper = shallowMount(Login);
sinon.stub(fb.auth(), 'signInWithEmailAndPassword', () => {});
expect(wrapper.find('#email1').text())
.to()
.be('you#email.com');
});
});
I have tried a number of different solutions to modifying the vue.config.js file to changing some node module configurations based on others suggestions but still no luck. Please let me know if I need to provide any other feedback or files for clarification.
Thank you in advanced for your help. Hopefully it's something simple and I just made a silly mistake.

babel-generator Invalid mapping when writing AST

While writing a plugin that injects code from another file ... another file is transformed and injected into the AST of the original file
astB = babel.transformFileSync(templatename, { plugins:plugins, code:false});
after that, calling:
generate(ast, { sourceMaps: true, retainLines: false, quotes:"'"}, codes);
causes error
Error: Invalid mapping: {"generated":{"line":30,"column":0},"original":{"line":1,"column":0}}
at SourceMapGenerator_validateMapping [as _validateMapping] (node_modules\babel-generator\node_modules\source-map\lib\source-map-generator.js:289:13)
at SourceMapGenerator_addMapping [as addMapping] (node_modules\babel-generator\node_modules\source-map\lib\source-map-generator.js:101:12)
at Array.forEach (<anonymous>)
at SourceMap.get (node_modules\babel-generator\lib\source-map.js:49:25)
at Object.get [as map] (node_modules\babel-generator\lib\buffer.js:53:33)
at writeAst (test2.js:59:24)
at Object.<anonymous> (test2.js:55:1)
at Module._compile (module.js:635:30)
at Object.Module._extensions..js (module.js:646:10)
at Module.load (module.js:554:32)
It is not very obvious from the error, but the problem is that injected code called parser as part of the transformation, and did not provide file name.
changing the line with transform fixes the issue
adding parserOpts:{sourceFilename: templatename} the code becomes:
astB = babel.transformFileSync(templatename, {parserOpts:{sourceFilename: templatename}, plugins:plugins, code:false});

Importing css into Meteor project results in SyntaxError: Unexpected token

**EDIT: I solved this issue.
For imports to work with Meteor, you have to put your code in an /imports/ directory. Here's the official guide on structuring your app. It's odd because I was importing and exporting most things just fine without using their recommended file structure. It was only css imports that were not working.**
Whenever a import css from an npm package, I get the following error:
W20161023-13:23:17.701(-4)? (STDERR) /Users/mattmacpherson/Code/project/node_modules/codemirror/lib/codemirror.css:3
W20161023-13:23:17.701(-4)? (STDERR) .CodeMirror {
W20161023-13:23:17.701(-4)? (STDERR) ^
W20161023-13:23:17.702(-4)? (STDERR)
W20161023-13:23:17.702(-4)? (STDERR) SyntaxError: Unexpected token .
W20161023-13:23:17.703(-4)? (STDERR) at exports.runInThisContext (vm.js:53:16)
W20161023-13:23:17.703(-4)? (STDERR) at Module._compile (module.js:373:25)
W20161023-13:23:17.704(-4)? (STDERR) at Object.Module._extensions..js (module.js:416:10)
W20161023-13:23:17.704(-4)? (STDERR) at Module.load (module.js:343:32)
W20161023-13:23:17.704(-4)? (STDERR) at Module.Mp.load (/Users/mattmacpherson/.meteor/packages/babel-compiler/.6.9.1_1.15j1r1l++os+web.browser+web.cordova/npm/node_modules/reify/node/runtime.js:16:23)
W20161023-13:23:17.704(-4)? (STDERR) at Function.Module._load (module.js:300:12)
W20161023-13:23:17.704(-4)? (STDERR) at Module.require (module.js:353:17)
W20161023-13:23:17.705(-4)? (STDERR) at require (internal/module.js:12:17)
W20161023-13:23:17.705(-4)? (STDERR) at npmRequire (/Users/mattmacpherson/Code/project/.meteor/local/build/programs/server/npm-require.js:129:10)
W20161023-13:23:17.705(-4)? (STDERR) at Module.Mp.useNode (packages/modules-runtime/modules-runtime.js:69:1)
The example above is when importing codemirror's css but I also get the same error with many other packages, including react-s-alert and medium-draft.
Here is my .babelrc file:
{
"plugins": [
"transform-class-properties"
],
"presets": [
"babel-preset-es2015",
"babel-preset-react",
"babel-preset-stage-2"
]
}

bookshelf and knex initialization error

I am trying to setup a mysql connection in node js using bookshelf and knex. This is my setup:
var knex = require('knex')({
client: 'mysql',
connection: {
host : '127.0.0.1',
user : 'my_user',
password : 'my_password',
database : 'my_db',
charset : 'utf8'
}
});
var DB = require('bookshelf')(knex);
module.exports.DB = DB;
I get the following error:
Error: [object KnexClient] is not a valid Knex client, did you misspell it?
at new Knex (/Users/arenduchintala/Projects/MacaronicWebApp/node_modules/bookshelf/node_modules/knex/knex.js:48:17)
at new Bookshelf (/Users/arenduchintala/Projects/MacaronicWebApp/node_modules/bookshelf/bookshelf.js:43:14)
at Bookshelf (/Users/arenduchintala/Projects/MacaronicWebApp/node_modules/bookshelf/bookshelf.js:37:14)
at Object.<anonymous> (/Users/arenduchintala/Projects/MacaronicWebApp/db.js:11:37)
at Module._compile (module.js:434:26)
at Object.Module._extensions..js (module.js:452:10)
at Module.load (module.js:355:32)
at Function.Module._load (module.js:310:12)
at Module.require (module.js:365:17)
at require (module.js:384:17)
at Object.<anonymous> (/Users/arenduchintala/Projects/MacaronicWebApp/model.js:1:72)
at Module._compile (module.js:434:26)
at Object.Module._extensions..js (module.js:452:10)
at Module.load (module.js:355:32)
at Function.Module._load (module.js:310:12)
at Module.require (module.js:365:17)
at require (module.js:384:17)
Looks like the line : require('bookshelf')(knex) throws an error.
I had an old version of bookshelf, I changed it in package.json from:
"bookshelf" : "0.5" to "bookshelf" : "*" and it seems to work now.
run
npm i --s mysql
it requires this package

Resources