ReferenceError: AudioContext is not defined is appearing in my Jest Suite - jestjs

I get this error ReferenceError: AudioContext is not defined in all of my Jest tests. I don't use it in my test cases -- 100% sure. But I noticed one of the external libraries is using it (library is proprietary and not in npm). But that library is not even part of any test files. Does anyone have an idea how to circumvent this annoying issue?

Related

Using Jest.js to test Adobe ExtendScript

I want to do unit testing with my Adobe JSX files using Jest.
However, all Jest tutorials have some package.json which I don't use, and they use modules and requires which aren't in ES3 javascript, etc.
Plus 'JSX' has been appropriated by React, so it's also probably going to think I'm doing React files and not Adobe ES3 files.
Is there some way to use Jest and not bother with any modules and packages? I just want to test some ancient-style ES3 code that's just javascript.
If JSX extension is going to muddle things up, is there a way to do this with a single JS file?
Eventually I got some help and it was stated to me that I should install the jest with its modules in the project's directory - my global installation won't do. And, sure enough once the installation went, it worked.

Why doesn't jest support classProperties syntax?

I have a node program running on node12 and I don't have babel in my project because I don't like compiling the code. When I use jest: ^24.9.0 to test my code I get this error message:
Support for the experimental syntax 'classProperties' isn't currently enabled.
Below is the code causes this error. However, it runs very well on node. I have searched this error and many people say to configure the babel for that. I don't really want to bring babel to my project. I don'er understand why jest doesn't work with the syntax which is supported by node?
class Server {
static INTERVAL = 2000;

Node.js test coverage

Could anyone, please, recommend simple test coverage tool for Node.js without using Mocha because I use simple functions from assert module of Node in my own test framework.
The standard library for code coverage is nyc, so that's my suggestion; however, you aren't going to get code coverage to work with a test framework you came up with yourself for free -- you'll need to make sure you are instrumenting the appropriate source files so the report contains what you expect.
The following links, which discuss non-standard uses of nyc (non-standard meaning, not jasmine or mocha) might be useful - one for classic istanbul, one for the newer nyc:
https://github.com/gotwarlost/istanbul/issues/574
https://github.com/istanbuljs/nyc/issues/548
You can use Jest and Supertest.
Jest -> https://jestjs.io/
SuperTest -> https://www.npmjs.com/package/supertest

Angular AOT compilation fails with npm package

I am a complete newbee to web development, and now I am facing a problem that I do not know how to deal with.
I am using the npm package named #uniprank/ngx-file-uploader (https://www.npmjs.com/package/#uniprank/ngx-file-uploader) in my web application, which is developed in Typescript with Angular 4. When compiling it with JIT compilation it works with no problems. However, now I would like to turn my application to production mode, so I tried AOT compilation. When I try to compile my application with the Angular compiler, as it is shown here: https://angular.io/guide/aot-compiler. The message shown is the following:
Unexpected value 'undefined' exported by the module 'FileUploaderModule in /node_modules/#uniprank/ngx-file-uploader/typings/index.d.ts'
I am completely lost at this point. Although I have been looking around in the web, I cannot figure out what means that message and how to fix it.
Any ideas to solve this problem will be appreciated. Thanks.

Unit testing C++ v8 addon

We are writing a v8 addon for node.js.
The addon (as you may well know) is a C++ dll.
How do we unit test this?
The simple way is to use node.js scripts to call our exported functions from the addon dll. But this is not a true unit test, as it's across languages.
Has anyone managed to successfully write a C++ unit test for their addon dll?
We have tried, but are getting unexpected errors - we suspect this is because the node-gyp libraries expect everything to be called in the context of node.exe, and because our unit test uses the addon dll "standalone", some things are not getting setup correctly, causing the test to fall over.
If you have managed to use C++ unit tests for v8 addon, please can you detail the best way to do it, and things to look out for?
regards,
Stretch
I was thinking about this, too. But unless you have really lot's of cpp-logic it's perfectly fine to just write cpp-js-combination and unit test the js-implementation as can be observed in the Nan-library, here. Having less logic means here, that the cpp-implementation in the best case is anyhow just the API glue.
When you do have custom logic and write Nan#2-style classes (so, straightforward cpp) you can of course test it the like regular cpp by including it's headers and do some...
void testEquality()
{
CPPUNIT_ASSERT( /* some test*/ );
}

Resources