def test_json_datatypes(): # minPercent is at 30.1 to test if non-integer data raises an exception json = """{"zoom.minPercent": 30.1, "zoom.maxPercent": 300}""" with mozfile.NamedTemporaryFile(suffix=".json") as f: f.write(json.encode()) f.flush() with pytest.raises(PreferencesReadError): Preferences.read_json(f._path)
def test_json_datatypes(self): # minPercent is at 30.1 to test if non-integer data raises an exception json = """{"zoom.minPercent": 30.1, "zoom.maxPercent": 300}""" with mozfile.NamedTemporaryFile(suffix='.json') as f: f.write(json) f.flush() with self.assertRaises(PreferencesReadError): Preferences.read_json(f._path)
def test_merge_profile(cls): profile = cls(preferences={'foo': 'bar'}) assert profile._addons == [] assert os.path.isfile( os.path.join(profile.profile, profile.preference_file_names[0])) other_profile = os.path.join(here, 'files', 'dummy-profile') profile.merge(other_profile) # make sure to add a pref file for each preference_file_names in the dummy-profile prefs = {} for name in profile.preference_file_names: path = os.path.join(profile.profile, name) assert os.path.isfile(path) try: prefs.update(Preferences.read_json(path)) except ValueError: prefs.update(Preferences.read_prefs(path)) assert 'foo' in prefs assert len(prefs) == len(profile.preference_file_names) + 1 assert all(name in prefs for name in profile.preference_file_names) assert len(profile._addons) == 1 assert profile._addons[0].endswith('empty.xpi') assert os.path.exists(profile._addons[0])
def test_merge_profile(cls): profile = cls(preferences={"foo": "bar"}) assert profile._addons == [] assert os.path.isfile( os.path.join(profile.profile, profile.preference_file_names[0])) other_profile = os.path.join(here, "files", "dummy-profile") profile.merge(other_profile) # make sure to add a pref file for each preference_file_names in the dummy-profile prefs = {} for name in profile.preference_file_names: path = os.path.join(profile.profile, name) assert os.path.isfile(path) try: prefs.update(Preferences.read_json(path)) except ValueError: prefs.update(Preferences.read_prefs(path)) assert "foo" in prefs assert len(prefs) == len(profile.preference_file_names) + 1 assert all(name in prefs for name in profile.preference_file_names) # for Google Chrome currently we ignore webext in profile prefs if cls == Profile: assert len(profile._addons) == 1 assert profile._addons[0].endswith("empty.xpi") assert os.path.exists(profile._addons[0]) else: assert len(profile._addons) == 0