2017-09-08 1 views
0

Je suis en train de tester en angulaire mon projet a été créé à l'aide de la CLI, donc pas besoin de test de configuration. J'ai vérifié les documentstester une méthode dans un composant angulaire sans dépendances

https://angular.io/guide/testing

et ces vidéos:

https://www.youtube.com/watch?v=XKVBLVlTjeE

https://www.youtube.com/watch?v=9-kumGACGYk

et je me trouve de plus en plus agacé. Je cherche un exemple de comment tester une méthode utilisée. Ne vous occupez jamais des dépendances, ne vous occupez jamais des appels asynchrones (ma feuille de style et mon code HTML sont chargés à partir de fichiers séparés, donc je sais que nous avons besoin d'un appel asynchrone au début im juste dire jamais observable ou promet maintenant)

commencer à donner un sens est quelqu'un peut-il s'il vous plaît écrire un test pour le code suivant et commenter tout au long?

import { Component, OnInit } from '@angular/core'; 
import {Venue} from '../../models/venue/venue.model'; 

@Component({ 
    selector: 'app-venuelist', 
    templateUrl: './venuelist.component.html', 
    styleUrls: ['./venuelist.component.css'] 



/* takes price number and returns number amount of $ */ 
     makePrice(n){ 
      let r = ''; 
      let c = 0; 
      while(c < n){ 
      r = r + '$'; 
      c++; 
      } 
      return r; 
+1

'il ('devrait faire quelque chose',() => {attendre (nouveau SomeUnknownComponent() makePrice (0)).. toBe ('');}); 'Vous nous empêchez de vous donner une bonne réponse en ne publiant pas le code approprié. Donc tu te tires dans le pied. –

+0

en fait c'était absolument parfait! Veuillez le soumettre comme réponse pour que je puisse vous donner des points. C'est sympa! –

Répondre

0

Vous souhaitez appeler une méthode d'une classe. Donc, vous devez créer une instance de cette classe, puis appeler la méthode:

it('should do something',() => { 
    expect(new Venuelist().makePrice(0)).toBe(''); 
}); 
+0

donc le nom du composant est venuelist donc il serait nouveau venuelist(). MakePrice (0)). ToBe (''); –

+0

Je suis content que vous l'ayez compris. J'aurais utilisé le bon nom dès le début si vous aviez posté le code approprié. Tu vois ce que je veux dire? –

+0

je l'ai fait si le sélecteur d'application est le nom de composant appeneded à app- par défaut sur le cli –