sourcery_vector_test_description_m Module

Define an abstraction for describing test intentions and array-valued test functions


Uses

  • module~~sourcery_vector_test_description_m~~UsesGraph module~sourcery_vector_test_description_m sourcery_vector_test_description_m assert_m assert_m module~sourcery_vector_test_description_m->assert_m module~sourcery_string_m sourcery_string_m module~sourcery_vector_test_description_m->module~sourcery_string_m module~sourcery_test_result_m sourcery_test_result_m module~sourcery_vector_test_description_m->module~sourcery_test_result_m module~sourcery_string_m->assert_m module~sourcery_test_result_m->module~sourcery_string_m

Used by

  • module~~sourcery_vector_test_description_m~~UsedByGraph module~sourcery_vector_test_description_m sourcery_vector_test_description_m module~sourcery_m sourcery_m module~sourcery_m->module~sourcery_vector_test_description_m module~sourcery_string_s sourcery_string_s module~sourcery_string_s->module~sourcery_m

Interfaces

public interface vector_test_description_t

  • private module function construct(description_vector, vector_function_strategy) 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) :: description_vector(:)
    class(vector_function_strategy_t), intent(in) :: vector_function_strategy

    Return Value type(vector_test_description_t)

interface

  • private module function contains_text(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, (:)

interface

  • private 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, (:)


Abstract Interfaces

abstract interface

  • private function vector_function_i() result(passes)

    Arguments

    None

    Return Value logical, allocatable, (:)


Derived Types

type, public, abstract ::  vector_function_strategy_t

Type-Bound Procedures

procedure(vector_function_i), public, deferred, nopass :: vector_function

type, public ::  vector_test_description_t

Encapsulate test descriptions and vector-valued test functions

Components

Type Visibility Attributes Name Initial
type(string_t), private, allocatable :: description_vector_(:)
class(vector_function_strategy_t), private, allocatable :: vector_function_strategy_

Constructor

private module function construct (description_vector, vector_function_strategy)

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

Type-Bound Procedures

procedure, public :: contains_text
procedure, public :: run

Module Procedures

module procedure /home/runner/work/sourcery/sourcery/doc/html/module/sourcery_vector_test_description_m.html construct private module function construct(description_vector, vector_function_strategy) result(vector_test_description)

Arguments

Type IntentOptional Attributes Name
type(string_t), intent(in) :: description_vector(:)
class(vector_function_strategy_t), intent(in) :: vector_function_strategy

Return Value type(vector_test_description_t)

module procedure /home/runner/work/sourcery/sourcery/doc/html/module/sourcery_vector_test_description_m.html contains_text private module function contains_text(self, substring) result(match_vector)

Arguments

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

Return Value logical, allocatable, (:)

module procedure /home/runner/work/sourcery/sourcery/doc/html/module/sourcery_vector_test_description_m.html run private impure module function run(self) result(test_results)

Arguments

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

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