<!DOCTYPE html>
<html>
  <head>
    <title>EventSource: addEventListener()</title>
    <script src="/resources/testharness.js"></script>
    <script src="/resources/testharnessreport.js"></script>
  </head>
  <body>
    <div id="log"></div>
    <script>
      var test = async_test()
      test.step(function() {
        var source = new EventSource("resources/message.py")
        source.addEventListener("message", listener, false)
      })
      function listener(e) {
        test.step(function() {
          assert_equals("data", e.data)
          this.close()
        }, this)
        test.done()
      }
    </script>
  </body>
</html>

