Skip to content

Instantly share code, notes, and snippets.

View ffMathy's full-sized avatar
🦄

Mathias Lykkegaard Lorenzen ffMathy

🦄
View GitHub Profile
const mockedCalculator = TypeMoq.Mock.ofType(RealCalculator);
const calculator = mockedCalculator.object;
calculator.add(1, 2);
mockedCalculator.verify(x => x.add(TypeMoq.It.isAny(), 2), Times.atLeastOnce());
mockedCalculator.verify(x => x.add(1, TypeMoq.It.is(y => y >= 1 && y <= 5)), Times.atLeastOnce());
const mockedCalculator = mock(RealCalculator);
const calculator = instance(mockedCalculator);
calculator.add(1, 2);
verify(mockedCalculator.add(anything(), 2)).called();
verify(mockedCalculator.add(1, between(1, 5)).called();
const mockedCalculator = Substitute.for<RealCalculator>();
mockedCalculator.add(1, 2);
mockedCalculator.received().add(Arg.any(), 2);
mockedCalculator.received().add(1, Arg.is(x => x >= 1 && x <= 5);
interface CalculatorInterface {
add(a: number, b: number): number;
subtract(a: number, b: number): number;
divide(a: number, b: number): number;
isEnabled: boolean;
}
class RealCalculator implements CalculatorInterface {
add(a: number, b: number) { return a + b; }
subtract(a: number, b: number) { return a - b; }
const mockedCalculator = TypeMoq.Mock.ofType(RealCalculator);
const calculator = mockedCalculator.object;
mockedCalculator.setup(x => x.add(1, 2)).returns(console.log);
calculator.add(1, 2); //will call console.log(1, 2);
const mockedCalculator = mock(RealCalculator);
const calculator = instance(mockedCalculator);
calculator.add(3, 4);
verify(mockedCalculator.add(1, 2)).called();
const mockedCalculator = Substitute.for<RealCalculator>();
mockedCalculator.add(3, 4);
mockedCalculator.received().add(1, 2);
const mockedCalculator = Substitute.for<CalculatorInterface>();
const mockedCalculator = TypeMoq.Mock.ofType(RealCalculator);
const calculator = mockedCalculator.object;
const mockedCalculator = mock(RealCalculator);
const calculator = instance(mockedCalculator);