# Path: doubles/exceptions.py
# class MockExpectationError(AssertionError):
#     """An exception raised when a mock fails verification."""
# 
#     pass
# 
# Path: doubles/lifecycle.py
# def verify():
#     """Verify a mock
# 
#     Verifies any mocks that have been created during the test run. Must be called after each
#     test case, but before teardown.
#     """
# 
#     if hasattr(_thread_local_data, 'current_space'):
#         _thread_local_data.current_space.verify()
# 
# def teardown():
#     """Tears down the current Doubles environment. Must be called after each test case."""
#     if hasattr(_thread_local_data, 'current_space'):
#         _thread_local_data.current_space.teardown()
#         del _thread_local_data.current_space


import sys
from nose.plugins.base import Plugin
from doubles.exceptions import MockExpectationError
from doubles.lifecycle import verify, teardown
from __future__ import absolute_import





class NoseIntegration(Plugin):
    name = 'doubles'

    def afterTest(self, test):
        teardown()


# Path: doubles/exceptions.py
# class MockExpectationError(AssertionError):
#     """An exception raised when a mock fails verification."""
# 
#     pass
# 
# Path: doubles/lifecycle.py
# def verify():
#     """Verify a mock
# 
#     Verifies any mocks that have been created during the test run. Must be called after each
#     test case, but before teardown.
#     """
# 
#     if hasattr(_thread_local_data, 'current_space'):
#         _thread_local_data.current_space.verify()
# 
# def teardown():
#     """Tears down the current Doubles environment. Must be called after each test case."""
#     if hasattr(_thread_local_data, 'current_space'):
#         _thread_local_data.current_space.teardown()
#         del _thread_local_data.current_space


# Path: doubles/nose.py
import sys
from nose.plugins.base import Plugin
from doubles.exceptions import MockExpectationError
from doubles.lifecycle import verify, teardown

from __future__ import absolute_import





class NoseIntegration(Plugin):
    name = 'doubles'

    def afterTest(self, test):
        teardown()


    def prepareTestCase(self, test):