コード例 #1
0
ファイル: test_zmqrouter.py プロジェクト: robotika/osgar
 def test_compress(self):
     config = { 'version': 2, 'robot': { 'modules': {}, 'links': [] } }
     config['robot']['modules']['publisher'] = {
         "driver": "osgar.test_zmqrouter:Publisher",
         "init": { "output": "count:gz"}
     }
     record(config, log_filename='compressed-publisher.log')
コード例 #2
0
ファイル: test_zmqrouter.py プロジェクト: robotika/osgar
 def test_fail_to_register(self):
     config = { 'version': 2, 'robot': { 'modules': {}, 'links': [] } }
     config['robot']['modules']['publisher'] = {
         "driver": "osgar.test_zmqrouter:Nonexisting",
         "init": { "output": "count:null"}
     }
     record(config, log_filename='null-publisher.log')
コード例 #3
0
ファイル: test_zmqrouter.py プロジェクト: robotika/osgar
 def test_publisher_multi(self):
     config = { 'version': 2, 'robot': { 'modules': {}, 'links': [] } }
     for i in range(3):
         config['robot']['modules'][f'publisher{i}'] = {
             "driver": "osgar.test_zmqrouter:Publisher",
             "init": { "output": f"count{i}" }
         }
     record(config, log_filename='publisher.log')
コード例 #4
0
ファイル: test_zmqrouter.py プロジェクト: robotika/osgar
 def test_publisher_threaded(self):
     config = { 'version': 2, 'robot': { 'modules': {}, 'links': [] } }
     config['robot']['modules']['publisher-threaded'] = {
         "driver": "osgar.test_zmqrouter:ThreadedPublisher",
     }
     record(config, log_filename='publisher-threaded.log', duration_sec=3)
     with osgar.logger.LogReader(self.tempdir/"publisher-threaded.log", only_stream_id=1) as log:
         count = sum(1 for _ in log)
         self.assertEqual(count, 10)
コード例 #5
0
ファイル: test_zmqrouter.py プロジェクト: robotika/osgar
 def test_fail_to_quit(self):
     config = { 'version': 2, 'robot': { 'modules': {}, 'links': [] } }
     config['robot']['modules']['publisher'] = {
         "driver": "osgar.test_zmqrouter:Publisher",
         "init": { "output": "count:null"}
     }
     config['robot']['modules']['noquit'] = {
         "driver": "osgar.test_zmqrouter:NoQuit",
     }
     record(config, log_filename='noquit.log')
コード例 #6
0
ファイル: test_zmqrouter.py プロジェクト: robotika/osgar
 def test_noop(self):
     config = {
         'version': 2,
         'robot': {
             'modules': {
                 "noop": {
                     "driver": "osgar.test_zmqrouter:Noop",
                     "init": {}
                 },
             }, 'links':[]
         }
     }
     record(config, log_filename='noop.log')
コード例 #7
0
ファイル: test_zmqrouter.py プロジェクト: robotika/osgar
 def test_publisher_single(self):
     config = { 'version': 2, 'robot': { 'modules': {}, 'links': [] } }
     config['robot']['modules']['publisher'] = {
         "driver": "osgar.test_zmqrouter:Publisher",
         "init": { "output": "count"}
     }
     record(config, log_filename='publisher.log')
     with osgar.logger.LogReader(self.tempdir/"publisher.log", only_stream_id=1) as log:
         last_dt = datetime.timedelta()
         count = 0
         for dt, channel, data in log:
             self.assertGreater(dt, last_dt)
             self.assertEqual(int.from_bytes(data, 'little'), count)
             last_dt = dt
             count += 1
コード例 #8
0
ファイル: test_zmqrouter.py プロジェクト: robotika/osgar
 def test_delays(self):
     config = { 'version': 2, 'robot': { 'modules': {}, 'links': [] } }
     config['robot']['modules']['publisher-listener'] = {
         "driver": "osgar.test_zmqrouter:PublisherListener",
         "init": { "output": "count"}
     }
     config['robot']['modules']['publisher'] = {
         "driver": "osgar.test_zmqrouter:Publisher",
         "init": { "output": "count"}
     }
     config['robot']['links'] = [
         ['publisher.count', 'publisher-listener.count'],
     ]
     record(config, log_filename='delays.log')
     with osgar.logger.LogReader(self.tempdir/"delays.log", only_stream_id=0) as log:
         count = 0
         for dt, channel, data in log:
             data = ast.literal_eval(str(data, 'ascii'))
             if hasattr(data, 'keys') and 'delay' in data.keys():
                 count += 1
                 self.assertGreater(data['delay'], 0.15)
         self.assertEqual(count, 10)
コード例 #9
0
        "0": {
            "driver": "udp",
            "init": {
                "host": "127.0.0.1",
                "port": 9111,
                "timeout": 0.5
            },
        },
        "1": {
            "driver": "udp",
            "init": {
                "host": "127.0.0.1",
                "port": 9111,
                "timeout": 0.5
            },
        },
        "echo": {
            "driver": "osgar.drivers.test_logsocket:Echo",
            "init": {
                "data": b"ok"
            }
        },
    }
    config['robot']['links'] = [['echo.raw0',
                                 '0.raw'], ['1.raw', 'echo.stdout'],
                                ['echo.raw1', '1.raw'],
                                ['0.raw', 'echo.stdout']]
    record(config, log_filename='logzeromq-zmqrouter.log')

# vim: expandtab sw=4 ts=4
コード例 #10
0
ファイル: test_zmqrouter.py プロジェクト: robotika/osgar
 def test_fail_to_quit_duration(self):
     config = { 'version': 2, 'robot': { 'modules': {}, 'links': [] } }
     config['robot']['modules']['noquit'] = {
         "driver": "osgar.test_zmqrouter:NoQuit",
     }
     record(config, log_filename='duration-no-quit.log', duration_sec=0.3)
コード例 #11
0
ファイル: test_zmqrouter.py プロジェクト: robotika/osgar
 def test_duration(self):
     config = { 'version': 2, 'robot': { 'modules': {}, 'links': [] } }
     config['robot']['modules']['listener'] = {
         "driver": "osgar.test_zmqrouter:Listener",
     }
     record(config, log_filename='duration.log', duration_sec=0.3)
コード例 #12
0
ファイル: test_zmqrouter.py プロジェクト: robotika/osgar
 def test_sleep(self):
     config = { 'version': 2, 'robot': { 'modules': {}, 'links': [] } }
     config['robot']['modules']['sleeper'] = {
         "driver": "osgar.test_zmqrouter:Sleeper",
     }
     record(config, log_filename='sleeps.log')