Fix functional pipeline tool tests

pull/22596/head
TolyaTalamanov 2 years ago
parent 1113c9ab10
commit 9f88a65873
  1. 8
      modules/gapi/samples/pipeline_modeling_tool/pipeline.hpp
  2. 4
      modules/gapi/samples/pipeline_modeling_tool/pipeline_builder.hpp
  3. 37
      modules/gapi/samples/pipeline_modeling_tool/test_pipeline_modeling_tool.py

@ -44,9 +44,9 @@ class StopCriteria {
public:
using Ptr = std::unique_ptr<StopCriteria>;
virtual void start() = 0;
virtual void iter() = 0;
virtual bool isOver() = 0;
virtual void start() = 0;
virtual void iter() = 0;
virtual bool done() = 0;
virtual ~StopCriteria() = default;
};
@ -117,7 +117,7 @@ void Pipeline::run() {
m_perf.elapsed = duration_cast<milliseconds>(high_resolution_clock::now() - start).count();
m_stop_criteria->iter();
if (m_stop_criteria->isOver()) {
if (m_stop_criteria->done()) {
deinit();
break;
}

@ -274,7 +274,7 @@ public:
m_curr_ts = utils::timestamp<std::chrono::microseconds>();
}
bool isOver() override {
bool done() override {
return (m_curr_ts - m_start_ts) >= m_work_time_mcs;
}
@ -296,7 +296,7 @@ public:
++m_curr_iters;
}
bool isOver() override {
bool done() override {
return m_curr_iters == m_num_iters;
}

@ -26,14 +26,6 @@ def test_error_no_config_exists():
assert 'Failed to open config file: not_existing_cfg.yml' in out
def test_error_no_work_time():
cfg_file = """\"%YAML:1.0\" """
exec_str = '{} --cfg={}'.format(pipeline_modeling_tool, cfg_file)
out = get_output(exec_str)
assert out.startswith('Config must contain field: work_time')
def test_error_work_time_not_positive():
cfg_file = """\"%YAML:1.0
work_time: -1\" """
@ -77,7 +69,8 @@ def test_error_no_source():
cfg_file = """\"%YAML:1.0
work_time: 1000
Pipelines:
PL1:\" """
PL1:
queue_capacity: 1\" """
exec_str = '{} --cfg={}'.format(pipeline_modeling_tool, cfg_file)
out = get_output(exec_str)
@ -982,3 +975,29 @@ Pipelines:
check(cfg_file, -3)
check(cfg_file, 0)
def test_error_no_worktime_and_num_iters():
cfg_file = """\"%YAML:1.0
Pipelines:
PL1:
source:
name: 'Src'
latency: 20
output:
dims: [1,1]
precision: 'U8'
nodes:
- name: 'Node0'
type: 'Dummy'
time: 0.2
output:
dims: [1,2,3,4]
precision: 'U8'
edges:
- from: 'Src'
to: 'Node0'\" """
exec_str = '{} --cfg={}'.format(pipeline_modeling_tool, cfg_file)
out = get_output(exec_str)
assert out.startswith('Failed: Pipeline PL1 doesn\'t have stop criteria!')

Loading…
Cancel
Save