| Index: LayoutTests/http/tests/serviceworker/controller-on-reload.html
 | 
| diff --git a/LayoutTests/http/tests/serviceworker/controller-on-reload.html b/LayoutTests/http/tests/serviceworker/controller-on-reload.html
 | 
| index a91ea6db3df036309907a966ad9cbb91450d86cd..068a3b64f523da9702f3641edf6ea526eadf7dd1 100644
 | 
| --- a/LayoutTests/http/tests/serviceworker/controller-on-reload.html
 | 
| +++ b/LayoutTests/http/tests/serviceworker/controller-on-reload.html
 | 
| @@ -20,21 +20,6 @@ t.step(function() {
 | 
|  
 | 
|      function onIframeLoad(frame) {
 | 
|          var w = frame.contentWindow;
 | 
| -
 | 
| -        function onActive(event) {
 | 
| -           assert_equals(w.navigator.serviceWorker.controller, null,
 | 
| -                         'controller should be null until the document is reloaded');
 | 
| -           reloaded = true;
 | 
| -           w.location.reload();
 | 
| -        }
 | 
| -
 | 
| -        function onRegister(worker) {
 | 
| -            worker.addEventListener('statechange', t.step_func(function(event) {
 | 
| -                if (event.target.state == 'activated')
 | 
| -                    onActive();
 | 
| -            }));
 | 
| -        }
 | 
| -
 | 
|          if (reloaded) {
 | 
|              assert_true(w.navigator.serviceWorker.controller instanceof w.ServiceWorker,
 | 
|                          'controller should be a ServiceWorker object upon reload');
 | 
| @@ -42,12 +27,21 @@ t.step(function() {
 | 
|              return;
 | 
|          }
 | 
|  
 | 
| -        w.navigator.serviceWorker.register(
 | 
| -            'worker-no-op.js', {scope: 'blank.html'}
 | 
| -        ).then(
 | 
| -            t.step_func(onRegister),
 | 
| -            unreached_rejection(t, 'Registration should succeed, but failed')
 | 
| -        );
 | 
| +        w.navigator.serviceWorker.register('worker-no-op.js',
 | 
| +                                           {scope: 'blank.html'})
 | 
| +        .then(function(registration) {
 | 
| +            return wait_for_update(t, registration);
 | 
| +          })
 | 
| +        .then(function(worker) {
 | 
| +            return wait_for_state(t, worker, 'activated');
 | 
| +          })
 | 
| +        .then(function() {
 | 
| +            assert_equals(w.navigator.serviceWorker.controller, null,
 | 
| +                          'controller should be null until the document is reloaded');
 | 
| +            reloaded = true;
 | 
| +            w.location.reload();
 | 
| +          })
 | 
| +        .catch(unreached_rejection(t));
 | 
|      }
 | 
|  });
 | 
|  </script>
 | 
| 
 |