Add base classes for mutators.

Review Request #12270 — Created May 6, 2022 and submitted

chipx86
Django Evolution
release-2.x
django-evolution

This introduces two new class: BaseMutator and BaseAppStateMutator.

BaseMutator is the base class for all mutators. It stores a couple of
attributes used in the mutator process (can_simulate and finalized),
introduces a function for finalizing, and a default to_sql()
implementation.

BaseAppStateMutator subclasses this, takes the parent AppMutator,
and sets up some forwarding properties that reflect or update the
AppMutator. It contains run_mutation() and run_simulation()
functions as well.

Right now, only ModelMutator subclasses BaseAppStateMutator, but
another will be coming soon.

All unit tests pass.

Tested along with an upcoming new mutator.

Summary
Add base classes for mutators.
Description From Last Updated

F821 undefined name 'CannotSimulate'

reviewbotreviewbot
Checks run (1 failed, 1 succeeded)
flake8 failed.
JSHint passed.

flake8

chipx86
david
  1. Ship It!
  2. 
      
chipx86
Review request changed

Status: Closed (submitted)

Change Summary:

Pushed to release-2.x (d815c93)
Loading...