Giter VIP home page Giter VIP logo

jasmine-dom's People

Contributors

allcontributors[bot] avatar brrianalexis avatar dependabot[bot] avatar iangrainger avatar michaeldeboey avatar nickmccurdy avatar orisomething avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

jasmine-dom's Issues

Remove type defintions

We have currently @types/testing-library__jasmine-dom installed which make problematic upgrade type definitions. Since we want definitions of a version to yet to exist which means wrong definitions. There are 2 options:

  1. Remove definitions package
  2. Contain the actual TS definitions

I recommend the first option

Vulnerabilities

Hi, sorry about this, but I can't use my forked version of your library because it has 3 vulnerabilities and I can't seem to fix them?

found 3 vulnerabilities (2 moderate, 1 high) in 1464 scanned packages
  3 vulnerabilities require manual review. See the full report for details.

C:\src\jasmine-dom>npm audit fix
up to date in 8.942s

95 packages are looking for funding
  run `npm fund` for details

fixed 0 of 3 vulnerabilities in 1464 scanned packages
  3 vulnerabilities required manual review and could not be updated

I've tried updating kcd-scripts but it didn't make any difference?

Inverting matchers doesn't affect error message

  • jasmine-dom version: 0.0.0-semantic

Relevant code or config:

expect(screen.getByText('Yes')).not.toBeChecked();

What you did:

Inverted a toBeChecked match - which failed.

What happened:

Error: FAILED Expected the element input type="radio" to be checked and it isn't checked.

What should have happened:

Message should either be:
Error: FAILED Expected the element input type="radio" not to be checked and it is.
Or:
Error: FAILED Expected the element input type="radio" checked value to match false but it was true

Missing dependency: dom-accessibility-api

  • jasmine-dom version: 1.3.2
  • node version: 14
  • npm (or yarn) version: 6.14.17

Relevant code or config:

var your => (code) => here;

What you did:

What happened:

ERROR in ./node_modules/@testing-library/jasmine-dom/dist/toHaveAccessibleName.js 7:27-59
Module not found: Error: Can't resolve 'dom-accessibility-api'

Reproduction:

import JasmineDOM from '@testing-library/jasmine-dom';

Problem description:

Suggested solution:

add dom-accessibility-api to dependencies

Could not find a declaration file for module '@testing-library/jasmine-dom/dist' on Angular 12 project

  • jasmine-dom version: 1.0.3
  • node version: 14.15.4
  • npm version: 6.14.10
  • @angular/core version: 12.2.9
  • typescript version: 4.3.2
  • jasmine-core version: 3.8.0

Relevant code or config:

tsconfig.spec.json:

/* To learn more about this file see: https://angular.io/config/tsconfig. */
{
  "extends": "./tsconfig.json",
  "compilerOptions": {
    "outDir": "./out-tsc/spec",
    "types": ["jasmine", "@testing-library/jasmine-dom"]
  },
  "files": ["src/test.ts", "src/polyfills.ts"],
  "include": ["src/**/*.spec.ts", "src/**/*.d.ts"]
}

test.ts:

// This file is required by karma.conf.js and loads recursively all the .spec and framework files

import 'zone.js/testing';
import { getTestBed } from '@angular/core/testing';
import {
  BrowserDynamicTestingModule,
  platformBrowserDynamicTesting,
} from '@angular/platform-browser-dynamic/testing';

import JasmineDOM from '@testing-library/jasmine-dom/dist';

declare const require: {
  context(
    path: string,
    deep?: boolean,
    filter?: RegExp
  ): {
    keys(): string[];
    <T>(id: string): T;
  };
};

// First, initialize the Angular testing environment.
getTestBed().initTestEnvironment(BrowserDynamicTestingModule, platformBrowserDynamicTesting());
// Then we find all the tests.
const context = require.context('./', true, /\.spec\.ts$/);
// And load the modules.
context.keys().map(context);

beforeAll(() => {
  // On the Jasmine version I'm using the addMatches method is directly on the jasmine variable instead of having to call .getEnv()
  jasmine.addMatchers(JasmineDOM);
});

What you did:

Tried to run the tests:

npm run-script test

After the error happened, installed the types package as suggested in the error message, but the same error occurred:

npm run-script testnpm i --save-dev @types/testing-library__jasmine-dom

What happened:

Error: src/test.ts:10:24 - error TS7016: Could not find a declaration file for module '@testing-library/jasmine-dom/dist'. 'C:/some-path/angular/node_modules/@testing-library
/jasmine-dom/dist/index.js' implicitly has an 'any' type.
  Try `npm i --save-dev @types/testing-library__jasmine-dom` if it exists or add a new declaration (.d.ts) file containing `declare module '@testing-library/jasmine-dom/dist';`

10 import JasmineDOM from '@testing-library/jasmine-dom/dist';

Problem description:

I couldn't make it work on an Angular 12 project by following the TypeScript instructions on the README file.
Please note that on tests.ts I had to call jasmine.addMatchers(JasmineDOM); without .getEnv() as it was suggested in the README. Anyway the error happens before this line.

I also took a look at this other related issue, but couldn't find anything that could solve this.

Is there any additional configuration I need to make this work?
Thanks in advance for the support and for providing this helpful library!

Instructions do not work on Angular 10 CLI project

I have an Angular 10 CLI project (v10.1.2). I've installed @testing-library/[email protected], but as I'm using Karma (configured via Angular) and Typescript, I'm not sure how to install this library!

I tried following the instructions for the latest version (v1.1.0), but while I can see the matchers on the HTMLMatchers type in VSCode, I can't actually add the Matchers, because trying to import them with import JasmineDOM from '@testing-library/jasmine-dom'; gives an error File C:/.../node_modules/@types/testing-library__jasmine-dom/index.d.ts is not a module.

As this is an Angular CLI project, would it actually make more sense to use a karma plugin!?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.