Skip to content
Dmitry Litvintsev edited this page Mar 2, 2021 · 18 revisions

Decisionengine framework

Prerequisites:

yum install -y postgresql11 postgresql11-server
sudo localedef -v -c -i en_US -f UTF-8 C.UTF-8 # (needed for tests)

Test

git clone https://github.com/HEPCloud/decisionengine
cd decisionengine

python3 setup.py develop --user
python3 -m pip install --user decisionengine[develop]

export PATH=/usr/pgsql-13/bin:$PATH
python3 -m pytest  # (or just pytest at this point)

would produce output looking like so:

=================================================================================== test session starts ====================================================================================
platform linux -- Python 3.6.8, pytest-6.2.2, py-1.9.0, pluggy-0.13.1 -- /usr/bin/python3
cachedir: .pytest_cache
rootdir: /home/litvinse/junk/decisionengine, configfile: pyproject.toml, testpaths: src/decisionengine
plugins: cov-2.11.1, flake8-1.0.7, postgresql-2.6.1, timeout-1.4.2
collected 100 items                                                                                                                                                                        

src/decisionengine/framework/config/tests/test_config.py::test_empty_config PASSED                                                                                                   [  1%]
src/decisionengine/framework/config/tests/test_config.py::test_wrong_type PASSED                                                                                                     [  2%]
src/decisionengine/framework/config/tests/test_config.py::test_empty_dict PASSED                                                                                                     [  3%]
src/decisionengine/framework/config/tests/test_config.py::test_empty_dict_with_leading_comment PASSED                                                                                [  4%]
src/decisionengine/framework/config/tests/test_config.py::test_minimal_python PASSED                                                                                                 [  5%]
src/decisionengine/framework/config/tests/test_config.py::test_minimal_jsonnet_wrong_extension PASSED                                                                                [  6%]
src/decisionengine/framework/config/tests/test_config.py::test_minimal_jsonnet_right_extension PASSED                                                                                [  7%]
src/decisionengine/framework/config/tests/test_config.py::test_channel_no_config_files PASSED                                                                                        [  8%]
src/decisionengine/framework/config/tests/test_config.py::test_channel_empty_config PASSED                                                                                           [  9%]
src/decisionengine/framework/config/tests/test_config.py::test_channel_empty_dictionary PASSED                                                                                       [ 10%]
src/decisionengine/framework/config/tests/test_config.py::test_channel_no_modules PASSED                                                                                             [ 11%]
src/decisionengine/framework/config/tests/test_config.py::test_channel_names PASSED                                                                                                  [ 12%]
src/decisionengine/framework/config/tests/test_config.py::test_channel_loading PASSED                                                                                                [ 13%]
src/decisionengine/framework/config/tests/test_policies.py::test_valid_dir PASSED                                                                                                    [ 14%]
src/decisionengine/framework/config/tests/test_policies.py::test_global_config_dir PASSED                                                                                            [ 15%]
src/decisionengine/framework/config/tests/test_policies.py::test_channel_config_dir PASSED                                                                                           [ 16%]
src/decisionengine/framework/config/tests/test_policies.py::test_global_config_file PASSED                                                                                           [ 17%]
src/decisionengine/framework/dataspace/datasources/tests/test_postgresql.py::test_generate_insert_query PASSED                                                                       [ 18%]
src/decisionengine/framework/dataspace/datasources/tests/test_postgresql.py::test_create_tables PASSED                                                                               [ 19%]
src/decisionengine/framework/dataspace/datasources/tests/test_postgresql.py::test_store_taskmanager PASSED                                                                           [ 20%]
src/decisionengine/framework/dataspace/datasources/tests/test_postgresql.py::test_get_taskmanager PASSED                                                                             [ 21%]
src/decisionengine/framework/dataspace/datasources/tests/test_postgresql.py::test_get_last_generation_id PASSED                                                                      [ 22%]
src/decisionengine/framework/dataspace/datasources/tests/test_postgresql.py::test_insert PASSED                                                                                      [ 23%]
src/decisionengine/framework/dataspace/tests/test_Reaper.py::TestReaper::test_fail_missing_config_key PASSED                                                                         [ 24%]
src/decisionengine/framework/dataspace/tests/test_Reaper.py::TestReaper::test_fail_wrong_config_key PASSED                                                                           [ 25%]
src/decisionengine/framework/dataspace/tests/test_Reaper.py::TestReaper::test_loop_of_start_stop_in_clumps PASSED                                                                    [ 26%]
src/decisionengine/framework/dataspace/tests/test_Reaper.py::TestReaper::test_reap_can_reap PASSED                                                                                   [ 27%]
src/decisionengine/framework/dataspace/tests/test_Reaper.py::TestReaper::test_reap_default_state PASSED                                                                              [ 28%]
src/decisionengine/framework/dataspace/tests/test_Reaper.py::TestReaper::test_source_fail_can_be_fixed PASSED                                                                        [ 29%]
src/decisionengine/framework/dataspace/tests/test_Reaper.py::TestReaper::test_start_stop PASSED                                                                                      [ 30%]
src/decisionengine/framework/dataspace/tests/test_Reaper.py::TestReaper::test_start_stop_delay PASSED                                                                                [ 31%]
src/decisionengine/framework/dataspace/tests/test_datablock.py::TestDatablock::test_DataBlock_constructor PASSED                                                                     [ 32%]
src/decisionengine/framework/dataspace/tests/test_datablock.py::TestDatablock::test_DataBlock_duplicate PASSED                                                                       [ 33%]
src/decisionengine/framework/dataspace/tests/test_datablock.py::TestDatablock::test_DataBlock_get_dataproducts PASSED                                                                [ 34%]
src/decisionengine/framework/dataspace/tests/test_datablock.py::TestDatablock::test_DataBlock_get_header PASSED                                                                      [ 35%]
src/decisionengine/framework/dataspace/tests/test_datablock.py::TestDatablock::test_DataBlock_get_metadata PASSED                                                                    [ 36%]
src/decisionengine/framework/dataspace/tests/test_datablock.py::TestDatablock::test_DataBlock_get_taskmanager PASSED                                                                 [ 37%]
src/decisionengine/framework/dataspace/tests/test_datablock.py::TestDatablock::test_DataBlock_get_taskmanagers PASSED                                                                [ 38%]
src/decisionengine/framework/dataspace/tests/test_datablock.py::TestDatablock::test_DataBlock_key_management PASSED                                                                  [ 39%]
src/decisionengine/framework/dataspace/tests/test_datablock.py::TestDatablock::test_DataBlock_to_str PASSED                                                                          [ 40%]
src/decisionengine/framework/dataspace/tests/test_datablock.py::TestDatablock::test_Header_constructor PASSED                                                                        [ 41%]
src/decisionengine/framework/dataspace/tests/test_datablock.py::TestDatablock::test_Header_is_valid PASSED                                                                           [ 42%]
src/decisionengine/framework/dataspace/tests/test_datablock.py::TestDatablock::test_Metadata_constructor PASSED                                                                      [ 43%]
src/decisionengine/framework/dataspace/tests/test_datablock.py::TestDatablock::test_Metadata_set_state PASSED                                                                        [ 44%]
src/decisionengine/framework/dataspace/tests/test_datablock.py::TestDatablock::test_compress PASSED                                                                                  [ 45%]
src/decisionengine/framework/dataspace/tests/test_datablock.py::TestDatablock::test_zdumps PASSED                                                                                    [ 46%]
src/decisionengine/framework/dataspace/tests/test_datablock.py::TestDatablock::test_zloads PASSED                                                                                    [ 47%]
src/decisionengine/framework/engine/tests/test_client_only.py::test_client_help PASSED                                                                                               [ 48%]
src/decisionengine/framework/engine/tests/test_client_only.py::test_client_with_no_server PASSED                                                                                     [ 49%]
src/decisionengine/framework/engine/tests/test_startup.py::test_default_config PASSED                                                                                                [ 50%]
src/decisionengine/framework/engine/tests/test_startup.py::test_change_port PASSED                                                                                                   [ 51%]
src/decisionengine/framework/logicengine/tests/test_cascaded_rules.py::test_rule_that_fires PASSED                                                                                   [ 52%]
src/decisionengine/framework/logicengine/tests/test_cascaded_rules.py::test_rule_that_does_not_fire PASSED                                                                           [ 53%]
src/decisionengine/framework/logicengine/tests/test_construction.py::test_default_construction PASSED                                                                                [ 54%]
src/decisionengine/framework/logicengine/tests/test_construction.py::test_wrong_configuration PASSED                                                                                 [ 55%]
src/decisionengine/framework/logicengine/tests/test_construction.py::test_trivial_configuration PASSED                                                                               [ 56%]
src/decisionengine/framework/logicengine/tests/test_construction.py::test_configuration_with_fact_using_function PASSED                                                              [ 57%]
src/decisionengine/framework/logicengine/tests/test_construction.py::test_configuration_with_numy_facts PASSED                                                                       [ 58%]
src/decisionengine/framework/logicengine/tests/test_duplicate_fact_names.py::test_duplicate_fact_names PASSED                                                                        [ 59%]
src/decisionengine/framework/logicengine/tests/test_facts.py::test_simple_fact PASSED                                                                                                [ 60%]
src/decisionengine/framework/logicengine/tests/test_facts.py::test_compound_fact PASSED                                                                                              [ 61%]
src/decisionengine/framework/logicengine/tests/test_facts.py::test_fact_with_nested_names PASSED                                                                                     [ 62%]
src/decisionengine/framework/logicengine/tests/test_facts.py::test_fact_using_numpy_array PASSED                                                                                     [ 63%]
src/decisionengine/framework/logicengine/tests/test_facts.py::test_fact_using_numpy_function PASSED                                                                                  [ 64%]
src/decisionengine/framework/logicengine/tests/test_missing_value.py::test_misspecified_fact PASSED                                                                                  [ 65%]
src/decisionengine/framework/logicengine/tests/test_missing_value.py::test_fact_with_misspecified_attribute PASSED                                                                   [ 66%]
src/decisionengine/framework/logicengine/tests/test_missing_value.py::test_conditional_fact PASSED                                                                                   [ 67%]
src/decisionengine/framework/logicengine/tests/test_missing_value.py::test_lookup_error PASSED                                                                                       [ 68%]
src/decisionengine/framework/logicengine/tests/test_missing_value.py::test_fail_on_error PASSED                                                                                      [ 69%]
src/decisionengine/framework/logicengine/tests/test_pandas_fact.py::test_rule_that_fires PASSED                                                                                      [ 70%]
src/decisionengine/framework/logicengine/tests/test_pandas_fact.py::test_rule_that_does_not_fire PASSED                                                                              [ 71%]
src/decisionengine/framework/logicengine/tests/test_rule_with_negated_fact.py::test_rule_that_fires PASSED                                                                           [ 72%]
src/decisionengine/framework/logicengine/tests/test_rule_with_negated_fact.py::test_rule_that_does_not_fire PASSED                                                                   [ 73%]
src/decisionengine/framework/logicengine/tests/test_simple_configuration.py::test_rule_that_fires PASSED                                                                             [ 74%]
src/decisionengine/framework/logicengine/tests/test_simple_configuration.py::test_rule_that_does_not_fire PASSED                                                                     [ 75%]
src/decisionengine/framework/taskmanager/tests/test_processing_state.py::test_shared_state_construction PASSED                                                                       [ 76%]
src/decisionengine/framework/taskmanager/tests/test_processing_state.py::test_wrong_value_on_creation PASSED                                                                         [ 77%]
src/decisionengine/framework/taskmanager/tests/test_processing_state.py::test_wrong_value_on_assignment PASSED                                                                       [ 78%]
src/decisionengine/framework/taskmanager/tests/test_processing_state.py::test_wait_until PASSED                                                                                      [ 79%]
src/decisionengine/framework/taskmanager/tests/test_processing_state.py::test_wait_while PASSED                                                                                      [ 80%]
src/decisionengine/framework/taskmanager/tests/test_task_manager.py::test_task_manager_construction PASSED                                                                           [ 81%]
src/decisionengine/framework/taskmanager/tests/test_task_manager.py::test_take_task_manager_offline PASSED                                                                           [ 82%]
src/decisionengine/framework/taskmanager/tests/test_task_manager.py::test_failing_publisher PASSED                                                                                   [ 83%]
src/decisionengine/framework/tests/test_client_server.py::test_client_print_product PASSED                                                                                           [ 84%]
src/decisionengine/framework/tests/test_defaults.py::test_client_can_get_de_server_show_channel_logger_level PASSED                                                                  [ 85%]
src/decisionengine/framework/tests/test_defaults.py::test_global_channel_log_level_in_config PASSED                                                                                  [ 86%]
src/decisionengine/framework/tests/test_defaults.py::test_client_de_config_is_json PASSED                                                                                            [ 87%]
src/decisionengine/framework/tests/test_failing_source_proxy.py::test_stop_failing_source_proxy PASSED                                                                               [ 88%]
src/decisionengine/framework/tests/test_reaper.py::test_client_can_get_de_server_reaper_status PASSED                                                                                [ 89%]
src/decisionengine/framework/tests/test_reaper.py::test_client_can_get_de_server_reaper_stop PASSED                                                                                  [ 90%]
src/decisionengine/framework/tests/test_reaper.py::test_client_can_get_de_server_reaper_start_delay PASSED                                                                           [ 91%]
src/decisionengine/framework/tests/test_restart_channel.py::test_restart_channel PASSED                                                                                              [ 92%]
src/decisionengine/framework/tests/test_sample_config.py::test_client_can_get_de_server_status PASSED                                                                                [ 93%]
src/decisionengine/framework/tests/test_sample_config.py::test_client_can_get_de_server_show_config PASSED                                                                           [ 94%]
src/decisionengine/framework/tests/test_sample_config.py::test_client_can_get_de_server_show_logger_level PASSED                                                                     [ 95%]
src/decisionengine/framework/tests/test_start_with_no_channels.py::test_start_from_nothing PASSED                                                                                    [ 96%]
src/decisionengine/framework/util/tests/test_fs.py::test_empty_directory PASSED                                                                                                      [ 97%]
src/decisionengine/framework/util/tests/test_fs.py::test_nonempty_directory PASSED                                                                                                   [ 98%]
src/decisionengine/framework/util/tests/test_fs.py::test_nonempty_directory_with_extensions PASSED                                                                                   [ 99%]
src/decisionengine/framework/util/tests/test_tsort.py::TestTsort::test_tsort PASSED                                                                                                  [100%]

==================================================================================== slowest durations =====================================================================================
13.15s call     src/decisionengine/framework/tests/test_start_with_no_channels.py::test_start_from_nothing
12.08s call     src/decisionengine/framework/taskmanager/tests/test_task_manager.py::test_take_task_manager_offline
12.08s call     src/decisionengine/framework/tests/test_restart_channel.py::test_restart_channel
11.09s call     src/decisionengine/framework/taskmanager/tests/test_task_manager.py::test_failing_publisher
10.01s teardown src/decisionengine/framework/tests/test_restart_channel.py::test_restart_channel
3.11s call     src/decisionengine/framework/tests/test_failing_source_proxy.py::test_stop_failing_source_proxy
3.10s call     src/decisionengine/framework/dataspace/tests/test_Reaper.py::TestReaper::test_loop_of_start_stop_in_clumps
3.08s teardown src/decisionengine/framework/tests/test_defaults.py::test_client_can_get_de_server_show_channel_logger_level
2.11s call     src/decisionengine/framework/tests/test_client_server.py::test_client_print_product
2.07s call     src/decisionengine/framework/tests/test_reaper.py::test_client_can_get_de_server_reaper_stop
2.06s call     src/decisionengine/framework/tests/test_sample_config.py::test_client_can_get_de_server_status
2.06s call     src/decisionengine/framework/tests/test_reaper.py::test_client_can_get_de_server_reaper_start_delay
2.06s call     src/decisionengine/framework/tests/test_defaults.py::test_global_channel_log_level_in_config
2.06s call     src/decisionengine/framework/tests/test_reaper.py::test_client_can_get_de_server_reaper_status
2.06s call     src/decisionengine/framework/tests/test_sample_config.py::test_client_can_get_de_server_show_logger_level
2.06s call     src/decisionengine/framework/tests/test_defaults.py::test_client_de_config_is_json
2.06s call     src/decisionengine/framework/tests/test_sample_config.py::test_client_can_get_de_server_show_config
2.01s call     src/decisionengine/framework/taskmanager/tests/test_processing_state.py::test_wait_until
2.01s call     src/decisionengine/framework/taskmanager/tests/test_processing_state.py::test_wait_while
1.62s teardown src/decisionengine/framework/tests/test_reaper.py::test_client_can_get_de_server_reaper_start_delay
1.62s teardown src/decisionengine/framework/tests/test_defaults.py::test_client_de_config_is_json
1.62s teardown src/decisionengine/framework/tests/test_defaults.py::test_global_channel_log_level_in_config
1.53s teardown src/decisionengine/framework/tests/test_sample_config.py::test_client_can_get_de_server_show_logger_level
1.52s teardown src/decisionengine/framework/tests/test_reaper.py::test_client_can_get_de_server_reaper_stop
1.52s teardown src/decisionengine/framework/tests/test_reaper.py::test_client_can_get_de_server_reaper_status
1.52s teardown src/decisionengine/framework/tests/test_sample_config.py::test_client_can_get_de_server_status
1.52s teardown src/decisionengine/framework/tests/test_sample_config.py::test_client_can_get_de_server_show_config
1.52s teardown src/decisionengine/framework/tests/test_client_server.py::test_client_print_product
1.14s teardown src/decisionengine/framework/tests/test_failing_source_proxy.py::test_stop_failing_source_proxy
1.11s teardown src/decisionengine/framework/util/tests/test_tsort.py::TestTsort::test_tsort
1.10s call     src/decisionengine/framework/dataspace/tests/test_Reaper.py::TestReaper::test_source_fail_can_be_fixed
1.10s call     src/decisionengine/framework/dataspace/tests/test_Reaper.py::TestReaper::test_start_stop_delay
1.10s setup    src/decisionengine/framework/tests/test_restart_channel.py::test_restart_channel
0.92s setup    src/decisionengine/framework/tests/test_reaper.py::test_client_can_get_de_server_reaper_status
0.91s setup    src/decisionengine/framework/tests/test_defaults.py::test_client_can_get_de_server_show_channel_logger_level
0.91s setup    src/decisionengine/framework/tests/test_failing_source_proxy.py::test_stop_failing_source_proxy
0.89s setup    src/decisionengine/framework/tests/test_sample_config.py::test_client_can_get_de_server_status
0.89s setup    src/decisionengine/framework/tests/test_client_server.py::test_client_print_product
0.84s setup    src/decisionengine/framework/dataspace/datasources/tests/test_postgresql.py::test_create_tables
0.11s teardown src/decisionengine/framework/dataspace/tests/test_datablock.py::TestDatablock::test_Header_constructor
0.11s teardown src/decisionengine/framework/dataspace/tests/test_datablock.py::TestDatablock::test_DataBlock_constructor
0.11s teardown src/decisionengine/framework/dataspace/tests/test_datablock.py::TestDatablock::test_DataBlock_get_taskmanagers
0.11s teardown src/decisionengine/framework/dataspace/tests/test_datablock.py::TestDatablock::test_DataBlock_key_management
0.10s setup    src/decisionengine/framework/tests/test_reaper.py::test_client_can_get_de_server_reaper_start_delay
0.10s setup    src/decisionengine/framework/tests/test_sample_config.py::test_client_can_get_de_server_show_logger_level
0.10s call     src/decisionengine/framework/dataspace/tests/test_Reaper.py::TestReaper::test_fail_missing_config_key
0.10s call     src/decisionengine/framework/dataspace/tests/test_Reaper.py::TestReaper::test_fail_wrong_config_key
0.10s call     src/decisionengine/framework/dataspace/tests/test_Reaper.py::TestReaper::test_start_stop
0.10s call     src/decisionengine/framework/dataspace/tests/test_Reaper.py::TestReaper::test_reap_default_state
0.10s call     src/decisionengine/framework/dataspace/tests/test_Reaper.py::TestReaper::test_reap_can_reap
0.10s setup    src/decisionengine/framework/tests/test_defaults.py::test_client_de_config_is_json
0.10s call     src/decisionengine/framework/config/tests/test_config.py::test_channel_loading
0.10s setup    src/decisionengine/framework/tests/test_defaults.py::test_global_channel_log_level_in_config
0.10s setup    src/decisionengine/framework/tests/test_sample_config.py::test_client_can_get_de_server_show_config
0.09s setup    src/decisionengine/framework/tests/test_reaper.py::test_client_can_get_de_server_reaper_stop
0.07s call     src/decisionengine/framework/engine/tests/test_client_only.py::test_client_help
0.05s call     src/decisionengine/framework/config/tests/test_config.py::test_channel_no_modules
0.05s call     src/decisionengine/framework/config/tests/test_config.py::test_channel_names
0.05s call     src/decisionengine/framework/config/tests/test_config.py::test_channel_empty_dictionary
0.05s setup    src/decisionengine/framework/dataspace/tests/test_datablock.py::TestDatablock::test_DataBlock_constructor
0.05s setup    src/decisionengine/framework/tests/test_start_with_no_channels.py::test_start_from_nothing
0.05s setup    src/decisionengine/framework/dataspace/tests/test_datablock.py::TestDatablock::test_DataBlock_get_metadata
0.05s call     src/decisionengine/framework/taskmanager/tests/test_task_manager.py::test_task_manager_construction
0.04s setup    src/decisionengine/framework/dataspace/tests/test_datablock.py::TestDatablock::test_DataBlock_to_str
0.04s setup    src/decisionengine/framework/dataspace/tests/test_datablock.py::TestDatablock::test_Metadata_set_state
0.04s setup    src/decisionengine/framework/dataspace/tests/test_datablock.py::TestDatablock::test_DataBlock_key_management
0.04s setup    src/decisionengine/framework/dataspace/tests/test_datablock.py::TestDatablock::test_Metadata_constructor
0.04s setup    src/decisionengine/framework/dataspace/tests/test_datablock.py::TestDatablock::test_zdumps
0.04s setup    src/decisionengine/framework/dataspace/tests/test_datablock.py::TestDatablock::test_zloads
0.04s setup    src/decisionengine/framework/dataspace/tests/test_datablock.py::TestDatablock::test_Header_is_valid
0.04s setup    src/decisionengine/framework/dataspace/tests/test_datablock.py::TestDatablock::test_DataBlock_get_taskmanagers
0.04s setup    src/decisionengine/framework/dataspace/tests/test_datablock.py::TestDatablock::test_DataBlock_get_dataproducts
0.04s setup    src/decisionengine/framework/dataspace/tests/test_datablock.py::TestDatablock::test_Header_constructor
0.04s setup    src/decisionengine/framework/dataspace/tests/test_datablock.py::TestDatablock::test_DataBlock_duplicate
0.04s call     src/decisionengine/framework/config/tests/test_config.py::test_minimal_jsonnet_right_extension
0.04s setup    src/decisionengine/framework/dataspace/tests/test_datablock.py::TestDatablock::test_compress
0.04s setup    src/decisionengine/framework/dataspace/tests/test_datablock.py::TestDatablock::test_DataBlock_get_header
0.04s setup    src/decisionengine/framework/dataspace/tests/test_datablock.py::TestDatablock::test_DataBlock_get_taskmanager
0.03s call     src/decisionengine/framework/engine/tests/test_startup.py::test_default_config
0.03s call     src/decisionengine/framework/config/tests/test_config.py::test_empty_dict_with_leading_comment
0.03s call     src/decisionengine/framework/config/tests/test_config.py::test_minimal_jsonnet_wrong_extension
0.03s call     src/decisionengine/framework/config/tests/test_config.py::test_empty_dict
0.03s call     src/decisionengine/framework/engine/tests/test_startup.py::test_change_port
0.03s setup    src/decisionengine/framework/dataspace/datasources/tests/test_postgresql.py::test_insert
0.03s setup    src/decisionengine/framework/dataspace/datasources/tests/test_postgresql.py::test_store_taskmanager
0.03s setup    src/decisionengine/framework/dataspace/datasources/tests/test_postgresql.py::test_get_taskmanager
0.03s setup    src/decisionengine/framework/dataspace/datasources/tests/test_postgresql.py::test_get_last_generation_id
0.02s call     src/decisionengine/framework/config/tests/test_config.py::test_channel_empty_config
0.02s call     src/decisionengine/framework/config/tests/test_config.py::test_minimal_python
0.02s call     src/decisionengine/framework/config/tests/test_config.py::test_wrong_type
0.02s call     src/decisionengine/framework/config/tests/test_config.py::test_channel_no_config_files
0.01s teardown src/decisionengine/framework/dataspace/tests/test_datablock.py::TestDatablock::test_Header_is_valid
0.01s teardown src/decisionengine/framework/dataspace/tests/test_datablock.py::TestDatablock::test_compress
0.01s teardown src/decisionengine/framework/dataspace/tests/test_datablock.py::TestDatablock::test_DataBlock_get_metadata
0.01s teardown src/decisionengine/framework/dataspace/tests/test_datablock.py::TestDatablock::test_zloads
0.01s teardown src/decisionengine/framework/dataspace/tests/test_datablock.py::TestDatablock::test_DataBlock_duplicate
0.01s teardown src/decisionengine/framework/dataspace/tests/test_datablock.py::TestDatablock::test_DataBlock_get_taskmanager
0.01s teardown src/decisionengine/framework/dataspace/tests/test_datablock.py::TestDatablock::test_DataBlock_to_str
0.01s teardown src/decisionengine/framework/dataspace/tests/test_datablock.py::TestDatablock::test_Metadata_set_state
0.01s teardown src/decisionengine/framework/dataspace/tests/test_datablock.py::TestDatablock::test_DataBlock_get_header
0.01s teardown src/decisionengine/framework/dataspace/tests/test_datablock.py::TestDatablock::test_zdumps
0.01s teardown src/decisionengine/framework/dataspace/datasources/tests/test_postgresql.py::test_get_taskmanager
0.01s teardown src/decisionengine/framework/dataspace/tests/test_datablock.py::TestDatablock::test_DataBlock_get_dataproducts
0.01s teardown src/decisionengine/framework/dataspace/datasources/tests/test_postgresql.py::test_create_tables
0.01s teardown src/decisionengine/framework/dataspace/datasources/tests/test_postgresql.py::test_get_last_generation_id
0.01s teardown src/decisionengine/framework/dataspace/tests/test_datablock.py::TestDatablock::test_Metadata_constructor
0.01s teardown src/decisionengine/framework/dataspace/datasources/tests/test_postgresql.py::test_store_taskmanager
0.01s teardown src/decisionengine/framework/dataspace/datasources/tests/test_postgresql.py::test_insert
0.01s call     src/decisionengine/framework/dataspace/datasources/tests/test_postgresql.py::test_get_last_generation_id
0.01s call     src/decisionengine/framework/dataspace/datasources/tests/test_postgresql.py::test_get_taskmanager

(190 durations < 0.005s hidden.  Use -vv to show these durations.)
============================================================================= 100 passed in 119.20s (0:01:59) ==============================================================================
[litvinse@litvintsev decisionengine]$