<!DOCTYPE html>
<meta charset='utf-8'>
<title>HTML Media Capture Test: capture image with 'user' facing mode to produce one image 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 permissions before running this test. If prompted for permission, please allow.</p>

<p>After hitting the button below, the camera must be launched with self-view mode.</p>

<p>(Note: If the user agent is unable to support the preferred facing mode, it can fall back to the implementation-specific default facing mode.)</p>

<p>Capture an image 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='image/*' capture='user'>

<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, /^image\//, 'The captured file should be type of image');
    });
    done();
  });
</script>

