NativeScript / NativeScript/nativescript-cli

TypeError: null is not an object (evaluating 'ProxyZoneSpec.assertPresent')

Offen
#5,460 1 Kommentar 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

unit testing
Vorherrschende Sprache
JavaScript
Sterne
1.1k
Forks
204
Ø Merge
1 T. 9 Std.
Gemergte PRs (30 T.)
8

Beschreibung

Environment

  • CLI: 7.1.1
  • Cross-platform modules:
  • Android Runtime: 7.0.1
  • iOS Runtime: JSC
  • XCode Version: 12.3
  • Plugin(s): See below

Describe the bug
Since I updated Angular to v10 it seems that the unit testing is broken. Whenever I use fakeAsync I get this error;
TypeError: null is not an object (evaluating 'ProxyZoneSpec.assertPresent') in file:///app/vendor.js (line 76383)

it('smoke test', fakeAsync(() => {
  expect(true).toBeTrue();
}));
{
  "dependencies": {
    "@angular/animations": "~10.1.0",
    "@angular/common": "~10.1.0",
    "@angular/compiler": "~10.1.0",
    "@angular/core": "~10.1.0",
    "@angular/forms": "~10.1.0",
    "@angular/platform-browser": "~10.1.0",
    "@angular/platform-browser-dynamic": "~10.1.0",
    "@angular/router": "~10.1.0",
    "@danvick/ngx-translate-nativescript-loader": "^3.0.0",
    "@klippa/nativescript-http": "^2.0.1",
    "@nativescript/angular": "~10.1.7",
    "@nativescript/appversion": "^2.0.0",
    "@nativescript/background-http": "^5.0.1",
    "@nativescript/camera": "^5.0.2",
    "@nativescript/core": "^7.1.0",
    "@nativescript/email": "^2.0.0",
    "@nativescript/firebase": "^11.1.3",
    "@nativescript/imagepicker": "^1.0.2",
    "@nativescript/iqkeyboardmanager": "^2.0.0",
    "@nativescript/secure-storage": "^3.0.0",
    "@nativescript/unit-test-runner": "^1.0.2",
    "@ngx-translate/core": "^13.0.0",
    "@nstudio/nativescript-loading-indicator": "^4.0.0",
    "@rxweb/reactive-form-validators": "^2.1.2",
    "@sergeymell/nativescript-svg": "^1.0.5",
    "@triniwiz/nativescript-couchbase": "^1.0.0",
    "@triniwiz/nativescript-image-cache-it": "^7.0.4",
    "core-js": "^2.6.9",
    "jasmine-marbles": "^0.6.0",
    "lodash": "^4.17.15",
    "moment": "^2.25.2",
    "nativescript-advanced-permissions": "^1.2.0",
    "nativescript-barcodescanner": "^4.0.1",
    "nativescript-carousel": "^7.0.1",
    "nativescript-inappbrowser": "^3.0.1",
    "nativescript-phone": "^2.0.0",
    "nativescript-sentry": "file:plugins_nativescript-sentry-2.0.1.tgz",
    "nativescript-swiss-army-knife": "^4.0.2",
    "nativescript-theme-core": "^1.0.6",
    "nativescript-ui-listview": "^9.0.4",
    "nativescript-websockets": "^1.5.6",
    "property-watch-decorator": "^1.2.5",
    "reflect-metadata": "~0.1.12",
    "rxjs": "^6.6.0",
    "tslib": "1.10.0",
    "zone.js": "~0.11.1"
  },
  "devDependencies": {
    "@angular-devkit/build-angular": "~0.1000.2",
    "@angular/cli": "~10.0.0",
    "@angular/compiler-cli": "~10.1.0",
    "@nativescript/android": "7.0.1",
    "@nativescript/ios": "6.5.4",
    "@nativescript/schematics": "^10.1.0",
    "@nativescript/tslint-rules": "~0.0.5",
    "@nativescript/types": "^7.1.0",
    "@nativescript/webpack": "^3.0.8",
    "@ngtools/webpack": "^10.2.0",
    "@types/jasmine": "~3.5.0",
    "@types/jasminewd2": "~2.0.3",
    "@types/lodash": "^4.14.150",
    "@types/node": "^12.11.1",
    "codelyzer": "^5.1.2",
    "cross-env": "^7.0.2",
    "husky": "^4.3.0",
    "istanbul-instrumenter-loader": "^3.0.1",
    "karma": "~4.4.1",
    "karma-coverage": "^2.0.1",
    "karma-coverage-istanbul-reporter": "~2.1.0",
    "karma-jasmine": "2.0.1",
    "karma-jasmine-html-reporter": "^1.4.2",
    "karma-mocha-reporter": "^2.2.5",
    "karma-nativescript-launcher": "0.4.0",
    "karma-webpack": "3.0.5",
    "lint-staged": "^10.5.0",
    "mkdirp": "^0.5.1",
    "node-sass": "^4.14.1",
    "pre-commit": "^1.2.2",
    "prettier": "^2.1.2",
    "scss-to-json": "^2.0.0",
    "stylelint": "^11.1.1",
    "stylelint-config-standard": "^19.0.0",
    "stylelint-scss": "^3.12.0",
    "ts-mockito": "^2.5.0",
    "tslint": "~6.1.3",
    "tslint-config-prettier": "^1.18.0",
    "typescript": "~3.9.0"
  },
  "main": "main.js"
}

Beitragsleitfaden

Beitragsleitfaden öffnen

Erste Schritte

  1. Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
  3. Forke das Repository und arbeite in einem Branch.
  4. Öffne einen Pull Request, der die Issue-Nummer nennt.

Rechercherichtung

Beginne damit, den fakeAsync-Smoke-Test mit den aufgeführten Versionen von Angular, NativeScript unit-test-runner und zone.js zu reproduzieren. Untersuche, wie unit-test-runner das Test-Setup von Angular integriert, und überprüfe, ob der Fehler durch Versionskompatibilität verursacht wird. Als abgeschlossen gilt die Aufgabe, wenn das inkompatible Setup identifiziert und eine Behebung oder eine klare Kompatibilitätsanforderung mit dem Smoke-Test bestätigt wurde.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
angular, javascript
Bereich
cli, testing
Issue-Typ
Bug
Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Aktivitätsstatus
Veraltet
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
30/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.