@@ -31,7 +31,7 @@ def __init__(self):
3131 self ._arguments : list [str ] = []
3232 self ._binary_location : str = ''
3333 self ._start_timeout : int = 10
34- self ._browser_preferences : BrowserPreferences = {}
34+ self ._browser_preferences : dict [ str , Any ] = {}
3535 self ._headless : bool = False
3636 self ._page_load_state : PageLoadState = PageLoadState .COMPLETE
3737
@@ -126,7 +126,7 @@ def remove_argument(self, argument: str):
126126
127127 @property
128128 def browser_preferences (self ) -> BrowserPreferences :
129- return self ._browser_preferences
129+ return cast ( BrowserPreferences , self ._browser_preferences )
130130
131131 @browser_preferences .setter
132132 def browser_preferences (self , preferences : BrowserPreferences ):
@@ -191,20 +191,22 @@ def _validate_pref_value(path: list[str], value: Any) -> None:
191191 # Expected is a subschema dict; value must be a dict and match the schema
192192 if not isinstance (value , dict ):
193193 raise InvalidPreferenceValue (
194- f'Invalid value type for { "." .join (path )} : expected dict, got { type (value ).__name__ } '
194+ f'Invalid value type for { "." .join (path )} : '
195+ f'expected dict, got { type (value ).__name__ } '
195196 )
196197 # Recursively validate each key-value in the value dict
197198 for k , v in value .items ():
198199 if k not in expected :
199- raise InvalidPreferencePath (f'Invalid key "{ k } " in preference path { "." .join (path )} ' )
200- sub_expected = expected [k ]
200+ raise InvalidPreferencePath (
201+ f'Invalid key "{ k } " in preference path { "." .join (path )} '
202+ )
201203 ChromiumOptions ._validate_pref_value (path + [k ], v )
202- else :
204+ elif not isinstance ( value , expected ) :
203205 # Expected is a primitive type; check isinstance
204- if not isinstance ( value , expected ):
205- raise InvalidPreferenceValue (
206- f'Invalid value type for { "." . join ( path ) } : expected { expected .__name__ } , got { type (value ).__name__ } '
207- )
206+ raise InvalidPreferenceValue (
207+ f'Invalid value type for { "." . join ( path ) } : '
208+ f' expected { expected .__name__ } , got { type (value ).__name__ } '
209+ )
208210
209211 def _get_pref_path (self , path : list ):
210212 """
0 commit comments