-1

我有以下调用 API 的服务:

export class MoviesService {

    constructor(private httpClient: HttpClient) { }

    // Return an obsevable with all the movies from the API
    getAllMovies(): Observable<Movie[]> {
        return this.httpClient.get<EmbeddedTitle>("http://localhost:8080/api/movies", { params: params })
        .pipe(
            map(response => {
                return response;
            }
            ));
}

这是注入该服务并调用getAllMovies方法的组件:

export class MoviesListingComponent implements OnInit {

    public movies: Movie[];

    constructor(private moviesService: MoviesService) { }

    ngOnInit(): void {
        this.getAllMovies();
    }

    // Subscribe to method service (getAllMovies) and assign the results to a class object (movies)
    getAllMovies(): void {
        this.moviesService.getAllMovies()
            .subscribe(movies => {
                this.movies = movies;
            });
    }

}

我想知道如何使用 Jasmine对组件的方法getAllMovies进行单元测试。

4

1 回答 1

0

getAllMovies() 方法会更改“movies”变量的值,并且您的组件依赖于保存数据的服务,您的工作是模拟服务并创建一个 getAllMovies 来返回虚拟数据并确保您的电影字段持有你模拟的数据

于 2018-08-15T19:34:46.137 回答