<!DOCTYPE html>
<meta charset='utf-8'>
<title>HTML Media Capture Test: capture video with implementation-specific default facing mode(missing value default) to produce one video file</title>
<link rel='author' title='Intel' href='http://www.intel.com'>
<link rel='help' href='https://w3c.github.io/html-media-capture'>
<link rel='help' href='https://www.w3.org/TR/html5/forms.html#attr-input-accept'>
<meta name='flags' content='interact'>
<meta name="timeout" content="long">
<script src='/resources/testharness.js'></script>
<script src='/resources/testharnessreport.js'></script>

<p>Clear all camera/microphone permissions before running this test. If prompted for permission, please allow.</p>

<p>After hitting the button below, the camera must be launched with the default facing mode.</p>

<p>Capture an video and then confirm the capturing.</p>

<p>Note: All the actions need to be done in 60 seconds, otherwise it will get TIMEOUT.</p>

<input type='file' accept='video/*' capture>

<div id='log'></div>

<script>
  var input;

  setup(function() {
    input = document.querySelector('input[type=file]');
  }, {explicit_done: true});

  async_test(function(t) {
    input.onchange = t.step_func_done(function() {
      assert_equals(input.files.length, 1, 'Should capture one file');
      assert_regexp_match(input.files[0].type, /^video\//, 'The captured file should be type of video');
    });
    done();
  });
</script>

