dextool.plugin.mutate.backend.test_mutant.timeout

Members

Functions

calculateTimeout
std_.datetime.Duration calculateTimeout(long iter, std_.datetime.Duration base)

Calculate the timeout to use based on the context.

resetTimeoutContext
void resetTimeoutContext(Database db)

Reset the state of the timeout algorithm to its inital state.

updateMutantStatus
void updateMutantStatus(Database db, MutationStatusId id, Mutation.Status st, ExitStatus ecode, long usedIter)

Update the status of a mutant.

Structs

TimeoutFsm
struct TimeoutFsm

FSM for handling mutants during the test phase.

Variables

MaxTimeoutIterations
auto MaxTimeoutIterations;
Undocumented in source.

Meta

License

MPL-2

Authors

Joakim Brännström (joakim.brannstrom@gmx.com)

This Source Code Form is subject to the terms of the Mozilla Public License, v.2.0. If a copy of the MPL was not distributed with this file, You can obtain one at http://mozilla.org/MPL/2.0/.

Analyze

The worklist should not be cleared during an analyze phase. Any mutant that has been removed in the source code will be automatically removed from the worklist because the tables is setup with ON DELETE CASCADE.

Thus by not removing it old timeout mutants that need more work will be "resumed".

Test

TODO: describe the test phase and FSM