Skip to content

Add unit tests for core wipe algorithms #3

@BhoomiAgrawal12

Description

@BhoomiAgrawal12

Description

The project currently lacks comprehensive unit tests for the core wiping algorithms (ATA Secure Erase, NVMe Secure Erase, Overwrite, Guttmann, etc.). We need to implement a testing framework to ensure reliability and catch regressions.

Proposed Solution

  • Set up a C++ testing framework (e.g., Google Test or Catch2)
  • Create mock disk interfaces for testing without real hardware
  • Write unit tests for each algorithm in src/algorithms/
  • Add tests for edge cases and error handling
  • Integrate tests into the build system

Affected Components

  • src/algorithms/ata_erase.cpp
  • src/algorithms/crypto_erase.cpp
  • src/algorithms/overwrite.cpp
  • src/algorithms/guttmann.cpp

Acceptance Criteria

  • Testing framework integrated with Makefile
  • Unit tests for all wipe algorithms
  • Test coverage > 70% for algorithm code
  • CI/CD pipeline runs tests automatically
  • Documentation on running tests

Additional Context

This is crucial for ensuring data is actually being wiped correctly and meeting NIST SP 800-88 compliance standards.

Metadata

Metadata

Assignees

No one assigned

    Labels

    help wantedExtra attention is needed

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions