Skip to content

Introduce additional integration tests #1123

Description

@aaronfern

How to categorize this issue?

/area testing
/kind test
/priority 3

What would you like to be added:
The integration tests that are currently present in the repo have not been updated in some time and no new tests have been added to verify and validate newer mcm features.
This issue is to keep track of new integration tests that are needed.

The following integration tests are needed

  • Auto machine preservation -> Add integration tests for machine preservation #1124
    The following cases need to be validated
    • Machine should be preserved on failure and should be able to re-join the cluster when it recovers
    • Threshold should be respected, and failed machines crossing this should not be preserved
    • machinePreserveTimeout should be honoured for failed machines
    • Machine should not be preserved when the preserve=false annotation is present
    • Preserved machine should stop being preserved when the preserve=false annotation is added to it
  • Manual machine preservation -> Add integration tests for machine preservation #1124
    The following cases need to be validated
    • Machine should be preserved when the preserve=when-failed annotation is present on it
    • Machine marked for preservation using when-failed should be preserved when failed even if autoPreserveMax is crossed
    • Failed machine that has been preserved using when-failed should move back to Running phase when it recovers
    • Preserved failed machine should terminate if preserve annotation is removed
  • Auto inPlace machine updates -> Add integration tests for inplace machine upgrade #1144
  • Manual inPlace machine updates -> Add integration tests for inplace machine upgrade #1144
  • Machine is deleted when deletionTimestamp added to node object -> Add an integration test for node deletion #1126

In addition, there will be an additional task. This will be re-looked after all tests mentioned above have been added

  • Modernise existing integration tests to have them all use uniform helper methods and structure as the newly added tests

Why is this needed:
This is needed as we have not added integration tests for newly added features, and as the codebase gets more complicated, we need a way to ensure that existing features do not break

Note
Cases that have to be covered for each tests will be added/updated as they are being worked on

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

area/testingTesting relatedkind/enhancementEnhancement, improvement, extensionkind/testTestpriority/3Priority (lower number equals higher priority)

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions