def test400_correct_precedence(self): stub = SinonStub() stub.withArgs('A').returns('Arg of A') stub.onFirstCall().returns('First call!') stub.onSecondCall().returns('Second call!') stub.returns('No args') self.assertEqual(stub(), 'First call!') self.assertEqual(stub('A'), 'Arg of A') self.assertEqual(stub(), 'No args')
def test425_returns_throws_can_be_overwritten(self): stub = SinonStub() self.assertEqual(stub(), None) stub.returns(5) self.assertEqual(stub(), 5) stub.throws() with self.assertRaises(Exception): stub() stub.returns(10) self.assertEqual(stub(), 10)
def test408_chained_withArgs_onCall_returns(self): stub = SinonStub() stub.withArgs(42).onFirstCall().returns(1).onSecondCall().returns(2) stub.returns(0) self.assertEqual(stub(1), 0) self.assertEqual(stub(42), 1) self.assertEqual(stub(1), 0) self.assertEqual(stub(42), 2) self.assertEqual(stub(1), 0) self.assertEqual(stub(42), 0)
def test220_returns(self): fto = ForTestOnly() self.assertEqual(fto.func1(), "func1") stub = SinonStub(ForTestOnly, "func1") stub.returns(1) self.assertEqual(fto.func1(), 1) stub.returns({}) self.assertEqual(fto.func1(), {}) stub.returns(TestSinonStub.my_func) self.assertEqual(fto.func1(), TestSinonStub.my_func)
def test410_conditions_do_not_persist(self): stub = SinonStub() stub.withArgs('A') stub.onThirdCall() stub.returns(5) self.assertEqual(stub(), 5)
def test364_class_returns(self): fto = ForTestOnly() stub = SinonStub(ForTestOnly, "func1") stub.returns(5) self.assertEqual(stub(fto), 5)
def test363_method_returns(self): o = A_object() stub = SinonStub(o, 'A_func') stub.returns(5) self.assertEqual(o.A_func(), 5) self.assertEqual(stub(), 5)
def test362_function_returns(self): stub = SinonStub(C_func) stub.returns(5) self.assertEqual(stub.g.C_func(), 5) self.assertEqual(stub(), 5)
def test361_module_returns(self): stub = SinonStub(os, 'system') stub.returns(5) self.assertEqual(os.system(), 5) self.assertEqual(stub(), 5)
def test360_pure_returns(self): stub = SinonStub() stub.returns(5) self.assertEqual(stub(), 5)
def test300_cross_module_stub(self): fto = ForTestOnly() stub = SinonStub(os, "system") #in func3 of fto, it calls os.system stub.returns("it's a stub function") self.assertEqual(fto.func3(), "it's a stub function")