PyICe.refid_modules package
Submodules
PyICe.refid_modules.bench_base module
- class PyICe.refid_modules.bench_base.bench_base(**kwargs)
Bases:
ABC
- add_cleanup(fn)
- add_notification(fn)
- add_traceability_channels()
- cleanup()
- cleanup_oven()
- close_ports()
- get_master()
- abstract init(virtual_oven)
‘make this gun work
- notify(msg, subject=None, attachment_filenames=[], attachment_MIMEParts=[])
PyICe.refid_modules.bench_identifier module
- PyICe.refid_modules.bench_identifier.get_bench_instruments(project_folder_name, benchsetup=None)
PyICe.refid_modules.p4_traceability module
- PyICe.refid_modules.p4_traceability.check_file_writable(fnm)
- PyICe.refid_modules.p4_traceability.get_client_info()
- PyICe.refid_modules.p4_traceability.get_describe(change_number)
- PyICe.refid_modules.p4_traceability.get_fstat(local_file)
- PyICe.refid_modules.p4_traceability.p4_edit(filename)
- class PyICe.refid_modules.p4_traceability.results_dict
Bases:
OrderedDict
Ordered dictionary with pretty print addition.
- PyICe.refid_modules.p4_traceability.sync_workspace(template_workspace)
PyICe.refid_modules.stdf_utils module
PyICe.refid_modules.temptroller module
- PyICe.refid_modules.temptroller.ctrlc(sig, frame)
- class PyICe.refid_modules.temptroller.replotter
Bases:
object
- add_test_run(test_class, table_name, db_file, bench_setup_image=None, bench_setup_list=None, bench_instruments=None, refid=None, skip_plots=False)
- add_to_markdown(refid, indent_level=None)
- write_html(html_file)
- PyICe.refid_modules.temptroller.sig_handler(dwCtrlType, hook_sigint=<built-in function interrupt_main>)
- class PyICe.refid_modules.temptroller.temptroller(temperatures=None, debug=False)
Bases:
object
- add_test(test_module, repeat_count=1)
- collect()
- email_plots(plot_svg_source)
- get_bench_identity()
just used to differentiate notifications. Not necessarily related to acutal bench in use if overridden.
- hook_functions(hook_key, *args)
- manual_archive()
- notify(msg, subject=None, attachment_filenames=[], attachment_MIMEParts=[])
- plot()
- run(collect_data, skip_plot=False, force_archive=False)
- set_lab_bench_constructor(lab_bench_constructor)
override automatic bench lookup mechanism for special equipment setup. Usually not necessary constructure should be executable with no arguments and return an object with (minimally) channel master and notification function attributes
PyICe.refid_modules.test_archive module
- class PyICe.refid_modules.test_archive.database_archive(db_source_file)
Bases:
object
- classmethod ask_archive_folder(suggestion=None)
- compute_db_destination(archive_folder)
- copy_interactive(archive_folder=None, project_folder_name=None)
- copy_table(db_source_table, db_dest_table, db_dest_file, db_indices)
- delete_table(db_source_table, commit=True)
- disposition_table(table_name, db_dest_file, db_indices)
- get_table_names()
- classmethod write_plot_script(test_module, test_class, db_table, db_file)
PyICe.refid_modules.test_module module
- PyICe.refid_modules.test_module.isnan(value)
- class PyICe.refid_modules.test_module.multitest_module(debug=False)
Bases:
test_module
class template all test modules shall inherit from this class and implement these abstract methods.
- add_multitest_unit(multitest_unit_class)
- abstract add_multitest_units()
Implement with repeated calls to self.add_multitest_unit(multitest_unit_class)
- compile_test_results(database, table_name)
inspect previously collected data. Check against parametic limits or functional specification to return Pass/Fail aggregated result.
- plot(database, table_name, plot_filepath, skip_output=False)
output plot from previously stored data. Static method prevents logger/instrument creation. what about self.get_name()??? return list of svg sources???
- register_tests()
todo docs
- class PyICe.refid_modules.test_module.multitest_unit(parent_module)
Bases:
ABC
class template all test modules shall inherit from this class and implement these abstract methods.
- abstract compile_test_results(database, table_name)
inspect previously collected data. Check against parametic limits or functional specification to return Pass/Fail aggregated result.
- debug_mode()
query to see if module debug flag is set. useful where otherwise not provided as method argument, ex in setup().
- get_correlation_data(REFID, temperature=None)
- get_correlation_data_scalar(REFID, temperature)
- get_die_traceability_hash_table()
- get_name()
- get_revid()
- get_test_limits(test_name)
- get_variant_id()
- abstract plot(database, table_name, plot_filepath, skip_output)
output plot from previously stored data. Static method prevents logger/instrument creation. what about self.name??? return list of svg sources??? if skip_output, return svg source without writing to files
- abstract register_tests()
enumerate measurments to be taken, limits, etc before writing test or collcting results make repeated calls to self.register_test_*()
- exception PyICe.refid_modules.test_module.regressionException
Bases:
Exception
special exception class to crash not just a single test module, but the whole enchilada.
- class PyICe.refid_modules.test_module.test_module(debug=False)
Bases:
ABC
class template all test modules shall inherit from this class and implement these abstract methods.
- abort_regression(reason=None)
force crash not just this test, but all of them.
- abstract collect(channels, debug)
perform data collection at a single temperature.
- classmethod configure_bench(components)
- copy_table()
- crash_info()
- debug_mode()
query to see if module debug flag is set. useful where otherwise not provided as method argument, ex in setup().
- export_table_xlsx(filename)
- get_db()
- get_db_table_name()
- get_import_str()
- get_lab_bench()
- get_logger()
- get_max_test_temp()
- get_min_test_temp()
- classmethod get_name()
- hook_functions(hook_key, *args)
- in_range(tdegc)
- is_crashed()
- abstract plot(database, table_name, plot_filepath, skip_output)
output plot from previously stored data. Static method prevents logger/instrument creation. what about self.name??? return list of svg sources???
- classmethod plot_from_table(table_name=None, db_file=None, debug=False)
- reconfigure(channel, value)
save channel settings specific to a particular test. Unwound after test at each temperature.
- register_db_index(column_list)
- register_plugin(plugin)
- classmethod run(collect_data, temperatures=None, debug=False, lab_bench_constructor=None)
- classmethod run_repeatability(repeat_count, temperatures=None, debug=False, lab_bench_constructor=None)
- set_max_test_temp(temperature)
- set_min_test_temp(temperature)
- abstract setup(channels)
customize logger channels and virtual instruments for test here
- teardown()
Any test cleanup required after all temps?
- temp_is_included(tdegc)
PyICe.refid_modules.test_results module
- exception PyICe.refid_modules.test_results.ResultsSchemaMismatchException
Bases:
Exception
Mismatch between writer and reader formats
- class PyICe.refid_modules.test_results.correlation_results(name, module)
Bases:
generic_results
- get_correlation_declaration(key)
- get_correlation_declarations()
- json_report()
- class PyICe.refid_modules.test_results.correlation_results_reload(results_json='correlation_results.json')
Bases:
correlation_results
- json_report(filename='correlation_results_rewrite.json')
- PyICe.refid_modules.test_results.freeze(o)
- class PyICe.refid_modules.test_results.generic_results
Bases:
object
Parent of test_results and correlation_results and keeper of any commonalities.
- get_name()
- get_traceability_info()
- set_db_filepath(db_filepath)
- set_table_name(table_name)
- PyICe.refid_modules.test_results.make_hash(o)
makes a hash out of anything that contains only list,dict and hashable types including string and numeric types
- PyICe.refid_modules.test_results.none_abs(a)
- PyICe.refid_modules.test_results.none_max(a, b)
- PyICe.refid_modules.test_results.none_min(a, b)
- class PyICe.refid_modules.test_results.test_results(name, module)
Bases:
generic_results
- get_test_declaration(key)
- get_test_declarations()
- json_report()
- class PyICe.refid_modules.test_results.test_results_reload(results_json='test_results.json')
Bases:
test_results
- json_report(filename='test_results_rewrite.json')