def test_with_trashed_extension(self): scope = flexmock(SoftDeletingScope()) builder = Builder(None) scope.extend(builder) callback = builder.get_macro('with_trashed') query = flexmock(QueryBuilder(None, None, None)) given_builder = Builder(query) model = flexmock(ModelStub()) given_builder.set_model(model) scope.should_receive('remove').once().with_args(given_builder, model) result = callback(given_builder) self.assertEqual(given_builder, result)
def test_with_trashed_extension(self): scope = flexmock(SoftDeletingScope()) builder = Builder(None) scope.extend(builder) callback = builder.get_macro('with_trashed') query = flexmock(QueryBuilder(None, None, None)) given_builder = Builder(query) model = flexmock(ModelStub()) given_builder.set_model(model) scope.should_receive('remove').once().with_args(given_builder, model) result = callback(given_builder) self.assertEqual(given_builder, result)
def test_with_trashed_extension(self): scope = flexmock(SoftDeletingScope()) builder = Builder(None) scope.extend(builder) callback = builder.get_macro("with_trashed") query = flexmock(QueryBuilder(None, None, None)) given_builder = Builder(query) model = flexmock(ModelStub()) given_builder.set_model(model) given_builder.remove_global_scope = mock.MagicMock(return_value=given_builder) result = callback(given_builder) self.assertEqual(given_builder, result) given_builder.remove_global_scope.assert_called_with(scope)
def test_with_trashed_extension(self): scope = flexmock(SoftDeletingScope()) builder = Builder(None) scope.extend(builder) callback = builder.get_macro('with_trashed') query = flexmock(QueryBuilder(None, None, None)) given_builder = Builder(query) model = flexmock(ModelStub()) given_builder.set_model(model) given_builder.remove_global_scope = mock.MagicMock(return_value=given_builder) result = callback(given_builder) self.assertEqual(given_builder, result) given_builder.remove_global_scope.assert_called_with(scope)
def test_scope_can_remove_deleted_at_constraint(self): scope = SoftDeletingScope() query = flexmock(QueryBuilder(None, None, None)) model = flexmock(ModelStub()) builder = Builder(query) builder.set_model(model) model.should_receive('get_qualified_deleted_at_column').once( ).and_return('table.deleted_at') query.wheres = [{ 'type': 'null', 'column': 'foo' }, { 'type': 'null', 'column': 'table.deleted_at' }] scope.remove(builder, model) self.assertEqual(query.wheres, [{'type': 'null', 'column': 'foo'}])
def test_scope_can_remove_deleted_at_constraint(self): scope = SoftDeletingScope() query = flexmock(QueryBuilder(None, None, None)) model = flexmock(ModelStub()) builder = Builder(query) builder.set_model(model) model.should_receive('get_qualified_deleted_at_column').once().and_return('table.deleted_at') query.wheres = [{ 'type': 'null', 'column': 'foo' }, { 'type': 'null', 'column': 'table.deleted_at' }] scope.remove(builder, model) self.assertEqual( query.wheres, [{ 'type': 'null', 'column': 'foo' }] )