"""Tests for stream connection options.""" import pytest class TestStreamOptions: def test_defaults(self): from i2p_streaming.options import StreamOptions opts = StreamOptions() assert opts.initial_window_size == 6 assert opts.max_window_size == 128 assert opts.connect_timeout == 60000 assert opts.max_message_size == 1730 assert opts.inactivity_timeout == 90000 def test_override(self): from i2p_streaming.options import StreamOptions opts = StreamOptions(initial_window_size=10, max_window_size=64) assert opts.initial_window_size == 10 assert opts.max_window_size == 64 # Non-overridden defaults assert opts.connect_timeout == 60000 def test_read_timeout(self): from i2p_streaming.options import StreamOptions opts = StreamOptions(read_timeout=5000) assert opts.read_timeout == 5000 def test_write_timeout(self): from i2p_streaming.options import StreamOptions opts = StreamOptions(write_timeout=3000) assert opts.write_timeout == 3000 def test_merge(self): from i2p_streaming.options import StreamOptions opts = StreamOptions() opts.merge(initial_window_size=12, max_message_size=1000) assert opts.initial_window_size == 12 assert opts.max_message_size == 1000 assert opts.max_window_size == 128 # unchanged def test_equality(self): from i2p_streaming.options import StreamOptions o1 = StreamOptions(initial_window_size=8) o2 = StreamOptions(initial_window_size=8) o3 = StreamOptions(initial_window_size=4) assert o1 == o2 assert o1 != o3