NativeScript / NativeScript/nativescript-cli

tns test fails with error "ReferenceError: Can't find variable: Zone"

オープン
#3,303 コメント 1 件 リアクション 0 件 担当者 0 名 GitHub で見る

まだ誰も着手していません。

to-be-checked unit testing
主要言語
JavaScript
スター
1.1k
フォーク
204
平均マージ
1日 9時間
マージ済み PR(30日)
8

説明

Tell us about the problem

Please, ensure your title is less than 63 characters long and starts with a capital
letter.

Which platform(s) does your issue occur on?

iOS, Android

Please provide the following version numbers that your issue occurs with:
  • CLI: (run tns --version to fetch it)
    3.4.0

  • Cross-platform modules: (check the 'version' attribute in the
    node_modules/tns-core-modules/package.json file in your project)
    3.3.0

  • Runtime(s): (look for the "tns-android" and "tns-ios" properties in the
    package.json file of your project)
    3.0.0

Please tell us how to recreate the issue in as much detail as possible.
  • Build a service that requires injection of TranslateService (from ng-translate)
  • Inject that service in beforeEach() of a test suite.
Is there code involved? If so, please share the minimal amount of code needed to recreate the problem.

error.service.test.ts

'use strict';

import {ErrorService} from '../services/error.service';
import {inject} from "@angular/core/testing";

declare let assert: Chai.AssertStatic;

describe("ErrorService tests", () => {

    let service = null;

    beforeEach((done) => {
        inject([ErrorService], (injectService: ErrorService) => {
            service = injectService;
            done();
        });
    });

    it("Service exists", (done) => {
        assert.exists(service);
        done();
    });

});

error.service.ts

import { Injectable } from "@angular/core";
import { TranslateService } from "ng2-translate";

@Injectable()
export class ErrorService {

    constructor(private i18n: TranslateService) {
    }
}

コントリビューションガイド

コントリビューションガイドを開く

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

調査の方向性

まず、CLI、モジュール、ランタイムについて記載されているバージョンを使って、報告された tns のテスト失敗を再現します。error.service.test.ts と error.service.ts を読み、beforeEach() 内の Angular のテスト用インジェクションに注目します。iOS と Android の両方で、Zone に関する ReferenceError が発生せずにサービスのテストが実行されれば完了です。

索引モデルが issue の本文から書いたものです。

評価

技術スタック
angular, javascript
領域
cli, mobile, testing
issue の種類
バグ
難易度
4/5
見積もり時間
3〜5日
活発さ
停滞
明瞭さ
説明が足りない
初心者へのやさしさ
25/100

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。