[Jasmine] Test sur une fonction de requêtes
Bonjour,
Avec les test unitaires en JS -> Jasmine,
Je voudrait tester ma fonction qui fait des requêtes sur l'api de google.
Je sais pas trop comment mocker cette partie là?
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
|
function translate() {
return translate
.translate(input,lang)
.then(results => {
const translation = results[0];
console.log(`Text: ${input}`);
console.log(`Translation: ${translation}`);
return translation;
})
.catch(err => {
console.log('ERROR:',err);
})
;
} |
avec comme import:
Code:
import * as Translate from '@google-cloud/translate';
voici ce que je fait mais ca ne teste pas le type et la valeur de retour
absence total de mocker sur cette partie là:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
|
describe('getTranslate function', () => {
let input = 'Hello World';
let lang = 'fr';
let projectId = "my-project-id";
let googleTrans = null;
beforeEach(function() {
googleTrans = new GoogleTranslate({
projectId: projectId
});
spyOn(translation, 'getTranslation').and.callFake((args, action) => {
//je ne sais pas quoi retourner à cet endroit
return;
});
});
it('should be called', () => {
translation.getTranslation(input, lang, googleTrans);
expect(translation.getTranslation).toHaveBeenCalled();
})
}); |
Merci.