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

<p>After hitting the button below, capture an audio 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='audio/*' 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, /^audio\//, 'The captured file should be type of audio');
    });
    done();
  });
</script>

