loki.tests.test_pickle

A set of tests that ensures that serialisation/deserialisation via pickle works and creates equivalent objects of various types.

Functions

fixture_here()

test_pickle_expression()

Ensure pickle-replication of Pymbolic-backed expressions.

test_pickle_module(frontend, tmp_path)

Ensure that serialisation/deserialisation via pickling works as expected.

test_pickle_module_with_routines(frontend, ...)

Ensure that Module object with cross-calling subroutines pickle cleanly, including the procedure type symbols.

test_pickle_module_with_typedef(frontend, ...)

Ensure that a type definition in a module is pickle-safe.

test_pickle_scheduler_item(here, frontend, ...)

Test that Item objects are picklable, so that we may use them with parallel processes.

test_pickle_subroutine(frontend)

Ensure that Subroutine and its components are picklable.

test_pickle_subroutine_with_member(frontend)

Ensure that Subroutine and its components are picklable.

fixture_here()
test_pickle_expression()

Ensure pickle-replication of Pymbolic-backed expressions.

test_pickle_subroutine(frontend)

Ensure that Subroutine and its components are picklable.

test_pickle_module(frontend, tmp_path)

Ensure that serialisation/deserialisation via pickling works as expected.

test_pickle_module_with_typedef(frontend, tmp_path)

Ensure that a type definition in a module is pickle-safe.

test_pickle_subroutine_with_member(frontend)

Ensure that Subroutine and its components are picklable.

test_pickle_module_with_routines(frontend, tmp_path)

Ensure that Module object with cross-calling subroutines pickle cleanly, including the procedure type symbols.

test_pickle_scheduler_item(here, frontend, tmp_path)

Test that Item objects are picklable, so that we may use them with parallel processes.