nsigustavo/ludibrio — Issue #7: Bug when trying to Stub os.path.exists
Author: sk-
Created: 2012-02-09 04:17:21+00:00
State: open

Please see the test below. The first test fails with an infinite recursion and the second works just great.

import os
from unittest import TestCase

from ludibrio import Stub, any

class TestStubReplacesStdlib(TestCase):
def test_os_path_exist_bug(self):
with Stub() as exists:
from os.path import exists
exists(any()) >> True
self.assertTrue(os.path.exists('/path/to/inexistent/file'))
exists.restore_import()

def test_stub_replacement_success(self):
with Stub() as getsize:
from os.path import getsize
getsize(any()) >> 1
self.assertEquals(os.path.getsize('/path/to/inexistent/file'), 1)
getsize.restore_import()