vector_test_description_t Derived Type

type, public :: vector_test_description_t


Inherits

type~~vector_test_description_t~~InheritsGraph type~vector_test_description_t vector_test_description_t type~string_t string_t type~vector_test_description_t->type~string_t descriptions_

Components

Type Visibility Attributes Name Initial
type(string_t), private, allocatable :: descriptions_(:)
procedure(vector_diagnosis_function_i), private, pointer, nopass :: vector_diagnosis_function_ => null()

Constructor

public interface vector_test_description_t

  • private module function construct_from_strings(descriptions, vector_diagnosis_function) result(vector_test_description)

    The result is a vector_test_description_t object with the components defined by the dummy arguments

    Arguments

    Type IntentOptional Attributes Name
    type(string_t), intent(in) :: descriptions(:)
    procedure(vector_diagnosis_function_i), intent(in), optional, pointer :: vector_diagnosis_function

    Return Value type(vector_test_description_t)


Type-Bound Procedures

generic, public :: contains_text => contains_string_t, contains_characters

procedure, public :: run

  • interface

    public impure module function run(self) result(test_results)

    The result encapsulates the test description and test outcome

    Arguments

    Type IntentOptional Attributes Name
    class(vector_test_description_t), intent(in) :: self

    Return Value type(test_result_t), allocatable, (:)

procedure, private :: contains_characters

  • interface

    private module function contains_characters(self, substring) result(match_vector)

    The result is .true. if the test description includes the value of substring

    Arguments

    Type IntentOptional Attributes Name
    class(vector_test_description_t), intent(in) :: self
    character(len=*), intent(in) :: substring

    Return Value logical, allocatable, (:)

procedure, private :: contains_string_t

  • interface

    private module function contains_string_t(self, substring) result(match_vector)

    The result is .true. if the test description includes the value of substring%string()

    Arguments

    Type IntentOptional Attributes Name
    class(vector_test_description_t), intent(in) :: self
    type(string_t), intent(in) :: substring

    Return Value logical, allocatable, (:)