Core functionality verification system - main types and verification logic Split from fortplot_functionality_verification.f90 for file size compliance (Issue #884)
| Type | Visibility | Attributes | Name | Initial | |||
|---|---|---|---|---|---|---|---|
| integer, | public, | parameter | :: | MAX_CATEGORIES | = | 6 | 
Baseline data for functionality comparison
| 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 | 
Comprehensive verification report with technical evidence
| 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 | 
| procedure, public :: add_test_result | |
| procedure, public :: set_category_result | 
Main functionality verifier with comprehensive testing capabilities
| 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 | 
| 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 | 
Create and initialize functionality verifier
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| character(len=*), | intent(in) | :: | baseline_dir | |||
| character(len=*), | intent(in) | :: | output_dir | |||
| character(len=*), | intent(in) | :: | evidence_dir |