@@ -26,6 +26,8 @@ var firefox = require('../../firefox'),
2626 Context = require ( '../../firefox' ) . Context ,
2727 error = require ( '../..' ) . error ;
2828
29+ var { consume} = require ( '../../lib/promise' ) ;
30+
2931
3032var JETPACK_EXTENSION = path . join ( __dirname ,
3133 '../../lib/test/data/firefox/jetpack-sample.xpi' ) ;
@@ -67,21 +69,33 @@ test.suite(function(env) {
6769 } ) ;
6870 }
6971
70- test . it ( 'can start Firefox with custom preferences' , function * ( ) {
71- var profile = new firefox . Profile ( ) ;
72- profile . setPreference ( 'general.useragent.override' , 'foo;bar' ) ;
72+ describe ( 'can start Firefox with custom preferences' , function ( ) {
73+ function runTest ( opt_dir ) {
74+ return consume ( function * ( ) {
75+ let profile = new firefox . Profile ( opt_dir ) ;
76+ profile . setPreference ( 'general.useragent.override' , 'foo;bar' ) ;
77+
78+ let options = new firefox . Options ( ) . setProfile ( profile ) ;
79+
80+ driver = env . builder ( ) .
81+ setFirefoxOptions ( options ) .
82+ build ( ) ;
7383
74- var options = new firefox . Options ( ) . setProfile ( profile ) ;
84+ yield driver . get ( 'data:text/html,<html><div>content</div></html>' ) ;
7585
76- driver = env . builder ( ) .
77- setFirefoxOptions ( options ) .
78- build ( ) ;
86+ var userAgent = yield driver . executeScript (
87+ 'return window.navigator.userAgent' ) ;
88+ assert ( userAgent ) . equalTo ( 'foo;bar' ) ;
89+ } ) ;
90+ }
7991
80- yield driver . get ( 'data:text/html,<html><div>content</div></html>' ) ;
92+ test . it ( 'profile created from scratch' , function ( ) {
93+ return runTest ( ) ;
94+ } ) ;
8195
82- var userAgent = yield driver . executeScript (
83- ' return window.navigator.userAgent' ) ;
84- assert ( userAgent ) . equalTo ( 'foo;bar' ) ;
96+ test . it ( 'profile created from template' , function ( ) {
97+ return io . tmpDir ( ) . then ( runTest ) ;
98+ } ) ;
8599 } ) ;
86100
87101 test . it ( 'can start Firefox with a jetpack extension' , function ( ) {
0 commit comments