ftorch_test_utils Module

Utils module for FTorch containing assertions for testing

  • License FTorch is released under an MIT license. See the LICENSE file for details.


Interfaces

public interface assert_allclose

  • public function assert_allclose_real32_1d(got, expect, test_name, rtol, print_result) result(test_pass)

    Asserts that two real32-valued 1D arrays coincide to a given relative tolerance

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real32), intent(in), dimension(:) :: got

    The array of values to be tested

    real(kind=real32), intent(in), dimension(:) :: expect

    The array of expected values

    character(len=*), intent(in) :: test_name

    Name of the test being run

    real(kind=real32), intent(in), optional :: rtol

    Optional relative tolerance (defaults to 1e-5)

    logical, intent(in), optional :: print_result

    Optionally print test result to screen (defaults to .true.)

    Return Value logical

    Did the assertion pass?

  • public function assert_allclose_real32_2d(got, expect, test_name, rtol, print_result) result(test_pass)

    Asserts that two real32-valued 2D arrays coincide to a given relative tolerance

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real32), intent(in), dimension(:,:) :: got

    The array of values to be tested

    real(kind=real32), intent(in), dimension(:,:) :: expect

    The array of expected values

    character(len=*), intent(in) :: test_name

    Name of the test being run

    real(kind=real32), intent(in), optional :: rtol

    Optional relative tolerance (defaults to 1e-5)

    logical, intent(in), optional :: print_result

    Optionally print test result to screen (defaults to .true.)

    Return Value logical

    Did the assertion pass?

  • public function assert_allclose_real64_1d(got, expect, test_name, rtol, print_result) result(test_pass)

    Asserts that two real64-valued 1D arrays coincide to a given relative tolerance

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real64), intent(in), dimension(:) :: got

    The array of values to be tested

    real(kind=real64), intent(in), dimension(:) :: expect

    The array of expected values

    character(len=*), intent(in) :: test_name

    Name of the test being run

    real(kind=real64), intent(in), optional :: rtol

    Optional relative tolerance (defaults to 1e-5)

    logical, intent(in), optional :: print_result

    Optionally print test result to screen (defaults to .true.)

    Return Value logical

    Did the assertion pass?

  • public function assert_allclose_real64_2d(got, expect, test_name, rtol, print_result) result(test_pass)

    Asserts that two real64-valued 2D arrays coincide to a given relative tolerance

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real64), intent(in), dimension(:,:) :: got

    The array of values to be tested

    real(kind=real64), intent(in), dimension(:,:) :: expect

    The array of expected values

    character(len=*), intent(in) :: test_name

    Name of the test being run

    real(kind=real64), intent(in), optional :: rtol

    Optional relative tolerance (defaults to 1e-5)

    logical, intent(in), optional :: print_result

    Optionally print test result to screen (defaults to .true.)

    Return Value logical

    Did the assertion pass?

public interface assert_isclose

  • public function assert_isclose_real32(got, expect, test_name, rtol, print_result) result(test_pass)

    Asserts that two real32 values coincide to a given relative tolerance

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real32), intent(in) :: got

    The value to be tested

    real(kind=real32), intent(in) :: expect

    The expected value

    character(len=*), intent(in) :: test_name

    Name of the test being run

    real(kind=real32), intent(in), optional :: rtol

    Optional relative tolerance (defaults to 1e-5)

    logical, intent(in), optional :: print_result

    Optionally print test result to screen (defaults to .true.)

    Return Value logical

    Did the assertion pass?

  • public function assert_isclose_real64(got, expect, test_name, rtol, print_result) result(test_pass)

    Asserts that two real64 values coincide to a given relative tolerance

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real64), intent(in) :: got

    The value to be tested

    real(kind=real64), intent(in) :: expect

    The expected value

    character(len=*), intent(in) :: test_name

    Name of the test being run

    real(kind=real64), intent(in), optional :: rtol

    Optional relative tolerance (defaults to 1e-5)

    logical, intent(in), optional :: print_result

    Optionally print test result to screen (defaults to .true.)

    Return Value logical

    Did the assertion pass?


Functions

public function assert_allclose_real32_1d(got, expect, test_name, rtol, print_result) result(test_pass)

Asserts that two real32-valued 1D arrays coincide to a given relative tolerance

Arguments

Type IntentOptional Attributes Name
real(kind=real32), intent(in), dimension(:) :: got

The array of values to be tested

real(kind=real32), intent(in), dimension(:) :: expect

The array of expected values

character(len=*), intent(in) :: test_name

Name of the test being run

real(kind=real32), intent(in), optional :: rtol

Optional relative tolerance (defaults to 1e-5)

logical, intent(in), optional :: print_result

Optionally print test result to screen (defaults to .true.)

Return Value logical

Did the assertion pass?

public function assert_allclose_real32_2d(got, expect, test_name, rtol, print_result) result(test_pass)

Asserts that two real32-valued 2D arrays coincide to a given relative tolerance

Arguments

Type IntentOptional Attributes Name
real(kind=real32), intent(in), dimension(:,:) :: got

The array of values to be tested

real(kind=real32), intent(in), dimension(:,:) :: expect

The array of expected values

character(len=*), intent(in) :: test_name

Name of the test being run

real(kind=real32), intent(in), optional :: rtol

Optional relative tolerance (defaults to 1e-5)

logical, intent(in), optional :: print_result

Optionally print test result to screen (defaults to .true.)

Return Value logical

Did the assertion pass?

public function assert_allclose_real64_1d(got, expect, test_name, rtol, print_result) result(test_pass)

Asserts that two real64-valued 1D arrays coincide to a given relative tolerance

Arguments

Type IntentOptional Attributes Name
real(kind=real64), intent(in), dimension(:) :: got

The array of values to be tested

real(kind=real64), intent(in), dimension(:) :: expect

The array of expected values

character(len=*), intent(in) :: test_name

Name of the test being run

real(kind=real64), intent(in), optional :: rtol

Optional relative tolerance (defaults to 1e-5)

logical, intent(in), optional :: print_result

Optionally print test result to screen (defaults to .true.)

Return Value logical

Did the assertion pass?

public function assert_allclose_real64_2d(got, expect, test_name, rtol, print_result) result(test_pass)

Asserts that two real64-valued 2D arrays coincide to a given relative tolerance

Arguments

Type IntentOptional Attributes Name
real(kind=real64), intent(in), dimension(:,:) :: got

The array of values to be tested

real(kind=real64), intent(in), dimension(:,:) :: expect

The array of expected values

character(len=*), intent(in) :: test_name

Name of the test being run

real(kind=real64), intent(in), optional :: rtol

Optional relative tolerance (defaults to 1e-5)

logical, intent(in), optional :: print_result

Optionally print test result to screen (defaults to .true.)

Return Value logical

Did the assertion pass?

public function assert_isclose_real32(got, expect, test_name, rtol, print_result) result(test_pass)

Asserts that two real32 values coincide to a given relative tolerance

Arguments

Type IntentOptional Attributes Name
real(kind=real32), intent(in) :: got

The value to be tested

real(kind=real32), intent(in) :: expect

The expected value

character(len=*), intent(in) :: test_name

Name of the test being run

real(kind=real32), intent(in), optional :: rtol

Optional relative tolerance (defaults to 1e-5)

logical, intent(in), optional :: print_result

Optionally print test result to screen (defaults to .true.)

Return Value logical

Did the assertion pass?

public function assert_isclose_real64(got, expect, test_name, rtol, print_result) result(test_pass)

Asserts that two real64 values coincide to a given relative tolerance

Arguments

Type IntentOptional Attributes Name
real(kind=real64), intent(in) :: got

The value to be tested

real(kind=real64), intent(in) :: expect

The expected value

character(len=*), intent(in) :: test_name

Name of the test being run

real(kind=real64), intent(in), optional :: rtol

Optional relative tolerance (defaults to 1e-5)

logical, intent(in), optional :: print_result

Optionally print test result to screen (defaults to .true.)

Return Value logical

Did the assertion pass?


Subroutines

public subroutine test_print(test_name, message, test_pass)

Print the result of a test to the terminal

Arguments

Type IntentOptional Attributes Name
character(len=*), intent(in) :: test_name

Name of the test being run

character(len=*), intent(in) :: message

Message to print

logical, intent(in) :: test_pass

Result of the assertion