fortplot_verification_core Module

Core functionality verification system - main types and verification logic Split from fortplot_functionality_verification.f90 for file size compliance (Issue #884)



Variables

Type Visibility Attributes Name Initial
integer, public, parameter :: MAX_CATEGORIES = 6

Derived Types

type, public ::  baseline_t

Baseline data for functionality comparison

Components

Type Visibility Attributes Name Initial
character(len=256), public :: test_name
character(len=256), public :: output_file
integer(kind=int64), public :: file_size
real(kind=wp), public :: execution_time
integer, public :: api_calls_count
logical, public :: api_success
character(len=256), public :: checksum
character(len=64), public :: format_type
real(kind=wp), public :: timestamp

type, public ::  verification_report_t

Comprehensive verification report with technical evidence

Components

Type Visibility Attributes Name Initial
logical, public :: overall_passed
integer, public :: total_tests
integer, public :: passed_tests
integer, public :: failed_tests
character(len=256), public :: report_timestamp
character(len=1024), public :: evidence_summary
character(len=256), public :: ci_run_url
real(kind=wp), public :: total_execution_time
logical, public, dimension(MAX_CATEGORIES) :: category_passed
integer, public, dimension(MAX_CATEGORIES) :: category_test_count
character(len=256), public, dimension(MAX_CATEGORIES) :: category_messages
type(validation_result_t), public, dimension(MAX_VERIFICATION_TESTS) :: test_results
integer, public :: result_count
real(kind=wp), public :: performance_regression_percent
logical, public :: performance_acceptable
integer, public :: new_failures_count
integer, public :: fixed_issues_count
logical, public :: baseline_comparison_success

Type-Bound Procedures

procedure, public :: add_test_result
procedure, public :: set_category_result

type, public ::  functionality_verifier_t

Main functionality verifier with comprehensive testing capabilities

Components

Type Visibility Attributes Name Initial
character(len=256), public :: baseline_directory
character(len=256), public :: output_directory
character(len=256), public :: evidence_directory
logical, public :: performance_monitoring_enabled
logical, public :: regression_detection_enabled
logical, public :: ci_integration_enabled
real(kind=wp), public :: performance_baseline_time
integer, public :: baseline_count
type(baseline_t), public, dimension(MAX_BASELINE_FILES) :: baselines

Type-Bound Procedures

procedure, public :: initialize_verifier
procedure, public :: load_baselines
procedure, public :: save_baselines
procedure, public :: verify_api_functionality
procedure, public :: verify_plotting_functionality
procedure, public :: verify_backend_functionality
procedure, public :: verify_performance
procedure, public :: verify_output_integrity
procedure, public :: detect_regressions
procedure, public :: run_verification_suite

Functions

public function create_functionality_verifier(baseline_dir, output_dir, evidence_dir) result(verifier)

Create and initialize functionality verifier

Arguments

Type IntentOptional Attributes Name
character(len=*), intent(in) :: baseline_dir
character(len=*), intent(in) :: output_dir
character(len=*), intent(in) :: evidence_dir

Return Value type(functionality_verifier_t)