def test_creates_singleton(self, client): """ it should return the same instance on multiple invocations """ request = mock.Mock() storage = mock.Mock(toolbar=None) request.user.is_anonymous.return_value=False storage.toolbar = None a = create_toolbar(request, storage=storage) b = create_toolbar(request, storage=storage) assert a is not None assert a == b
def test_anonymous(self, client): """ no toolbar should be created for anonymous users """ request = mock.Mock() storage = mock.Mock(toolbar=None) request.user.is_anonymous.return_value=True assert create_toolbar(request, storage=storage) is None assert storage.toolbar is None
def test_no_force(self, client): """ no force doesn't create if not necessary """ request = mock.Mock() storage = mock.Mock(toolbar="Hello") request.user.is_anonymous.return_value=False a = create_toolbar(request, storage=storage, force=False) assert a == "Hello"
def test_force(self, client): """ force always creates a new toolbar """ request = mock.Mock() storage = mock.Mock(toolbar="Hello") request.user.is_anonymous.return_value=False a = create_toolbar(request, storage=storage, force=True) assert a != "Hello"
def test_creates(self, client): """ but in non-anonymous cases it should create """ request = mock.Mock() storage = mock.Mock(toolbar=None) request.user.is_anonymous.return_value=False storage.toolbar = None a = create_toolbar(request, storage=storage) assert a is not None assert a == storage.toolbar