MCPcopy Create free account
hub / github.com/StackStorm/st2 / _assert_crud

Method _assert_crud

st2tests/st2tests/base.py:455–481  ·  view source on GitHub ↗
(self, instance, defaults=None, updates=None)

Source from the content-addressed store, hash-verified

453 assert_func(getattr(a, k, None), v)
454
455 def _assert_crud(self, instance, defaults=None, updates=None):
456 # Assert instance is not already in the database.
457 self.assertIsNone(getattr(instance, "id", None))
458
459 # Assert default values are assigned.
460 self._assert_values_equal(instance, values=defaults)
461
462 # Assert instance is created in the datbaase.
463 saved = self.access_type.add_or_update(instance)
464 self.assertIsNotNone(saved.id)
465 self._assert_fields_equal(instance, saved, exclude=["id"])
466 retrieved = self.access_type.get_by_id(saved.id)
467 self._assert_fields_equal(saved, retrieved)
468
469 # Assert instance is updated in the database.
470 for k, v in six.iteritems(updates or {}):
471 setattr(instance, k, v)
472
473 updated = self.access_type.add_or_update(instance)
474 self._assert_fields_equal(instance, updated)
475
476 # Assert instance is deleted from the database.
477 retrieved = self.access_type.get_by_id(instance.id)
478 retrieved.delete()
479 self.assertRaises(
480 StackStormDBObjectNotFoundError, self.access_type.get_by_id, instance.id
481 )
482
483 def _assert_unique_key_constraint(self, instance):
484 # Assert instance is not already in the database.

Callers 2

test_crudMethod · 0.80
test_crudMethod · 0.80

Calls 5

_assert_values_equalMethod · 0.95
_assert_fields_equalMethod · 0.95
add_or_updateMethod · 0.45
get_by_idMethod · 0.45
deleteMethod · 0.45

Tested by 2

test_crudMethod · 0.64
test_crudMethod · 0.64