web-dev-qa-db-fra.com

[] Devrait être [] Jasmine, comment vérifier un tableau vide

Obtention d'une erreur lors de la recherche d'un tableau vide. J'ai essayé d'utiliser:

Cas 1: en initialisant sous forme de tableau

expect(fixture.componentInstance.dataSource).toBe([]);

Cas 2: en initialisant sous forme de tableau

let expectedAry = new Array;
expect(fixture.componentInstance.dataSource).toBe(expectedAry);

Les deux cas ont la même erreur:

Expected [  ] to be [  ].

Les tableaux peuvent également être vérifiés par leur longueur, les travaux suivants fonctionnent bien

expect(fixture.componentInstance.dataSource.length).toEqual(0); 

La longueur 0 est une option, mais je ne sais pas si c'est la bonne façon de vérifier si un tableau est vide. Avons-nous une meilleure option pour vérifier si un tableau est vide?

20
Kailas

toBe ne vérifie pas le contenu du tableau, il vérifie seulement si les références sont les mêmes.

expect([1]).toBe([1]) échouera car les références sont différentes.

Vous devez utiliser toEqual, qui a quelques astuces pour vérifier le contenu du tableau au lieu de simplement faire une comparaison de référence.

49
Evan Trimboli