Pourquoi jest.mock renvoie-t-il un objet fictif avec des propriétés par défaut ?
P粉547420474
P粉547420474 2023-09-16 00:25:43
0
1
730

J'essaie de me moquer d'un objet comme ceci :

export default person = {
   firstName: "xxx",
   LastName: "xxx",
   getFullName: () => this.firstName + this.LastName
}

jest.mock('../person', () => ({
  getFullName: () => "John Smith"
}));

Donc, je veux juste me moquer de la méthode getFullName, mais quand je lance Jest, je trouve que cette personne est moquée comme :

{
   default: { getFullName: () => "John Smith" }
   ...
}

Comment puis-je me débarrasser des propriétés "par défaut" que je souhaite uniquement :

{
   getFullName: () => "John Smith"
}

P粉547420474
P粉547420474

répondre à tous(1)
P粉041856955

Vous pouvez remplacer mock par la méthode spyOn.

jest.spyOn(person, 'getFullName').mockImplementation(() => "约翰·史密斯");

Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal