2
は私がサービスを持っていますgetAutenticate()メソッド。どのように私はそのHttp(モックアップ対本当のレストサービス)を注入する必要はありません。ここに私の出発点があります:基本サービス・テスト
import { it, describe, expect, inject, beforeEachProviders} from 'angular2/testing';
import {Http} from 'angular2/http';
import { LoginService } from './login.service';
class MockLoginService extends LoginService {
// todo something
}
describe('login service',() => {
beforeEachProviders(() => [
provide(TestService, {useClass: MockLoginService}), Http
]);
// beforeEachProviders(() => [LoginService, Http]);
it('should find credentials', inject([LoginService], (myService:MockLoginService) => {
console.log('HERE ', myService.getAutenticate('user1', 'pass1'));
expect(true).toBe(true);
}));
});
何が良いアプローチでしょうか?
が再びありがとう、ティエリーは、私はあなたの例を試してみました:問題は、私が取得することですエラー:失敗:httpService.getMethodは関数ではありません... –
あなたの 'HttpService'クラスに' getMethod'メソッドがありますか? –
私は何をしたのか分かりませんが、あなたの答えに基づいて、https://github.com/krimple/angular2-webpack-demo-routing-and-httpを試しました。私は同じ問題を抱えていた。それから私はサービスを見て、そこにインポートがあることに気づきました。 'rxjs/add/operator/map'をインポートします。私はそれをサービスに加えて働きました! –