pub struct TraceabilityMatrix {
pub requirements: Vec<SpecRequirement>,
pub entries: Vec<TraceabilityEntry>,
/* private fields */
}Expand description
A matrix tracking specification requirements and their test coverage.
Fields§
§requirements: Vec<SpecRequirement>All specification requirements.
entries: Vec<TraceabilityEntry>Entries mapping tests to requirements.
Implementations§
Source§impl TraceabilityMatrix
impl TraceabilityMatrix
Sourcepub fn new(requirements: Vec<SpecRequirement>) -> Self
pub fn new(requirements: Vec<SpecRequirement>) -> Self
Create a new traceability matrix with the given requirements.
Sourcepub fn from_entries(
requirements: Vec<SpecRequirement>,
entries: Vec<TraceabilityEntry>,
) -> Self
pub fn from_entries( requirements: Vec<SpecRequirement>, entries: Vec<TraceabilityEntry>, ) -> Self
Create a traceability matrix from requirements and entries.
Sourcepub fn add_requirement(&mut self, requirement: SpecRequirement)
pub fn add_requirement(&mut self, requirement: SpecRequirement)
Add a specification requirement.
Sourcepub fn add_test_mapping(
&mut self,
spec_section: impl Into<String>,
test_name: impl Into<String>,
test_file: impl Into<PathBuf>,
test_line: u32,
)
pub fn add_test_mapping( &mut self, spec_section: impl Into<String>, test_name: impl Into<String>, test_file: impl Into<PathBuf>, test_line: u32, )
Add a test mapping.
Sourcepub fn add_entry(&mut self, entry: TraceabilityEntry)
pub fn add_entry(&mut self, entry: TraceabilityEntry)
Add a complete traceability entry.
Sourcepub fn covered_sections(&mut self) -> HashSet<String>
pub fn covered_sections(&mut self) -> HashSet<String>
Get the sections that are covered by at least one test.
Sourcepub fn missing_sections(&mut self) -> Vec<String>
pub fn missing_sections(&mut self) -> Vec<String>
Get the sections that have no test coverage.
Sourcepub fn tests_for_section(&mut self, section: &str) -> Vec<&TraceabilityEntry>
pub fn tests_for_section(&mut self, section: &str) -> Vec<&TraceabilityEntry>
Get tests covering a specific section.
Sourcepub fn coverage_percentage(&mut self) -> f64
pub fn coverage_percentage(&mut self) -> f64
Calculate coverage percentage.
Sourcepub fn coverage_stats(&mut self) -> CoverageStats
pub fn coverage_stats(&mut self) -> CoverageStats
Get coverage statistics.
Sourcepub fn to_markdown(&mut self) -> String
pub fn to_markdown(&mut self) -> String
Generate a markdown report.
Sourcepub fn meets_threshold(&mut self, threshold_percent: f64) -> bool
pub fn meets_threshold(&mut self, threshold_percent: f64) -> bool
Check if coverage meets a threshold.
Trait Implementations§
Source§impl Clone for TraceabilityMatrix
impl Clone for TraceabilityMatrix
Source§fn clone(&self) -> TraceabilityMatrix
fn clone(&self) -> TraceabilityMatrix
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for TraceabilityMatrix
impl Debug for TraceabilityMatrix
Source§impl Default for TraceabilityMatrix
impl Default for TraceabilityMatrix
Source§impl<'de> Deserialize<'de> for TraceabilityMatrix
impl<'de> Deserialize<'de> for TraceabilityMatrix
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Auto Trait Implementations§
impl Freeze for TraceabilityMatrix
impl RefUnwindSafe for TraceabilityMatrix
impl Send for TraceabilityMatrix
impl Sync for TraceabilityMatrix
impl Unpin for TraceabilityMatrix
impl UnsafeUnpin for TraceabilityMatrix
impl UnwindSafe for TraceabilityMatrix
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<T> FutureExt for T
impl<T> FutureExt for T
Source§fn with_context(self, otel_cx: Context) -> WithContext<Self> ⓘ
fn with_context(self, otel_cx: Context) -> WithContext<Self> ⓘ
Source§fn with_current_context(self) -> WithContext<Self> ⓘ
fn with_current_context(self) -> WithContext<Self> ⓘ
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::Request