blob: 20f4ca83b1fc68637a83b2c5add76c960883f7f9 [file] [log] [blame]
Scott Bakeracb2bf62019-03-15 10:20:35 -07001# Copyright 2018-present Open Networking Foundation
2#
3# Licensed under the Apache License, Version 2.0 (the "License");
4# you may not use this file except in compliance with the License.
5# You may obtain a copy of the License at
6#
7# http://www.apache.org/licenses/LICENSE-2.0
8#
9# Unless required by applicable law or agreed to in writing, software
10# distributed under the License is distributed on an "AS IS" BASIS,
11# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12# See the License for the specific language governing permissions and
13# limitations under the License.
14
15from __future__ import absolute_import
16
17import os
18import time
19
20
21def get_signal_fn(model, name):
22 return os.path.join("/tmp", "signal_%s_%s_%s" % (model.model_name, model.id, name))
23
24
25def put_signal(log, model, name):
26 open(get_signal_fn(model, name), "a").write(str(time.time()) + "\n")
27
28
29def wait_for_signal(log, model, name, timeout=30):
30 fn = get_signal_fn(model, name)
31 count = 0
32 while not os.path.exists(fn):
33 count += 1
34 if (count > 30):
35 log.error("TEST:FAIL - Timeout waiting for %s" % fn, model=model)
36 raise Exception("timeout")
37 time.sleep(1)