<!DOCTYPE html>
<html>
<title>Test that calling cancelWatchAvailability() when disableRemotePlayback attribute is set throws an exception</title>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/common/media.js"></script>
<script>
async_test(t => {
  var v = document.createElement('video');
  v.src = getVideoURI('movie_5');

  v.remote.watchAvailability(function() {})
    .then(id => {
      v.disableRemotePlayback = true;
      v.remote.cancelWatchAvailability(id).then(
        t.unreached_func(),
        t.step_func(e => {
          assert_equals(e.name, 'InvalidStateError');
          v.remote.cancelWatchAvailability().then(
            t.unreached_func(),
            t.step_func_done(e => {
              assert_equals(e.name, 'InvalidStateError');
            })
          );
        }));
    }, t.unreached_func());
}, 'Test that calling cancelWatchAvailability() when disableRemotePlayback attribute is set throws an exception.');
</script>
</html>
