@Test public void userPrefsArePreservedWhenConvertingToAndFromJson() throws IOException { profile.setPreference("browser.startup.homepage", "http://www.example.com"); String json = profile.toJson(); FirefoxProfile rebuilt = FirefoxProfile.fromJson(json); Preferences parsedPrefs = parseUserPrefs(rebuilt); assertEquals("http://www.example.com", parsedPrefs.getPreference("browser.startup.homepage")); }
@Test public void backslashedCharsArePreservedWhenConvertingToAndFromJson() throws IOException { String dir = "c:\\aaa\\bbb\\ccc\\ddd\\eee\\fff\\ggg\\hhh\\iii\\jjj\\kkk\\lll\\mmm\\nnn\\ooo\\ppp\\qqq\\rrr\\sss\\ttt\\uuu\\vvv\\www\\xxx\\yyy\\zzz"; profile.setPreference("browser.download.dir", dir); String json = profile.toJson(); FirefoxProfile rebuilt = FirefoxProfile.fromJson(json); Preferences parsedPrefs = parseUserPrefs(rebuilt); assertEquals(dir, parsedPrefs.getPreference("browser.download.dir")); }
@Test public void shouldConvertItselfIntoAMeaningfulRepresentation() throws IOException { FirefoxProfile profile = new FirefoxProfile(); profile.setPreference("i.like.cheese", true); String json = profile.toJson(); assertNotNull(json); File dir = TemporaryFilesystem.getDefaultTmpFS().createTempDir("webdriver", "duplicated"); new Zip().unzip(json, dir); File prefs = new File(dir, "user.js"); assertTrue(prefs.exists()); assertTrue(FileHandler.readAsString(prefs).contains("i.like.cheese")); }