You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
39 lines
1.1 KiB
39 lines
1.1 KiB
11 months ago
|
#!/usr/bin/env python3
|
||
|
|
||
|
import unittest
|
||
|
|
||
|
import aiortc
|
||
|
|
||
|
from teleoprtc.tracks import video_track_id, parse_video_track_id, TiciVideoStreamTrack, TiciTrackWrapper
|
||
|
|
||
|
|
||
|
class TestTracks(unittest.TestCase):
|
||
|
def test_track_id(self):
|
||
|
expected_camera_type, expected_track_id = "driver", "test"
|
||
|
track_id = video_track_id(expected_camera_type, expected_track_id)
|
||
|
camera_type, track_id = parse_video_track_id(track_id)
|
||
|
self.assertEqual(expected_camera_type, camera_type)
|
||
|
self.assertEqual(expected_track_id, track_id)
|
||
|
|
||
|
def test_track_id_invalid(self):
|
||
|
with self.assertRaises(ValueError):
|
||
|
parse_video_track_id("test")
|
||
|
|
||
|
def test_tici_track_id(self):
|
||
|
class VideoStream(TiciVideoStreamTrack):
|
||
|
async def recv(self):
|
||
|
raise NotImplementedError()
|
||
|
|
||
|
track = VideoStream("driver", 0.1)
|
||
|
camera_type, _ = parse_video_track_id(track.id)
|
||
|
self.assertEqual("driver", camera_type)
|
||
|
|
||
|
def test_tici_wrapper_id(self):
|
||
|
track = TiciTrackWrapper("driver", aiortc.mediastreams.VideoStreamTrack())
|
||
|
camera_type, _ = parse_video_track_id(track.id)
|
||
|
self.assertEqual("driver", camera_type)
|
||
|
|
||
|
|
||
|
if __name__ == '__main__':
|
||
|
unittest.main()
|