“Fonction de simulation plaisante” Réponses codées

Fonction de simulation plaisante

/*
The Mock Function
The goal for mocking is to replace something we don’t control with something 
we do, so it’s important that what we replace it with has all the features 
we need.

The Mock Function provides features to:

1. Capture calls
2. Set return values
3. Change the implementation

The simplest way to create a Mock Function instance is with jest.fn()
*/

test("returns undefined by default", () => {
  const mock = jest.fn();

  let result = mock("foo");

  expect(result).toBeUndefined();
  expect(mock).toHaveBeenCalled();
  expect(mock).toHaveBeenCalledTimes(1);
  expect(mock).toHaveBeenCalledWith("foo");
});

yusuf_fazeri

plaisanterie en plaisantant par son nom

import Foo from './Foo';
import Bar from './Bar';

jest.mock('./Bar');

describe('Foo', () => {
  it('should return correct foo', () => {
    // As Bar is already mocked,
    // we just need to cast it to jest.Mock (for TypeScript) and mock whatever you want
    (Bar.prototype.runBar as jest.Mock).mockReturnValue('Mocked bar');
    const foo = new Foo();
    expect(foo.runFoo()).toBe('real foo : Mocked bar');
  });
});


Tame Tapir

Fonction de rappel simulé

const bodyToAssertAgainst = {};
globals.request.post = jest.fn().mockImplementation((obj, cb) => {
    cb(null, bodyToAssertAgainst);
});
Jumping Boy

Jest Implémentation simulée une fois

const myMockFn = jest
  .fn()
  .mockImplementationOnce(cb => cb(null, true))
  .mockImplementationOnce(cb => cb(null, false));

myMockFn((err, val) => console.log(val));
// > true

myMockFn((err, val) => console.log(val));
// > false
Proud Pony

Réponses similaires à “Fonction de simulation plaisante”

Questions similaires à “Fonction de simulation plaisante”

Plus de réponses similaires à “Fonction de simulation plaisante” dans JavaScript

Parcourir les réponses de code populaires par langue

Parcourir d'autres langages de code