<!DOCTYPE html>
<body>
  <script src=/resources/testharness.js></script>
  <script src=/resources/testharnessreport.js></script>
  <script src=/feature-policy/resources/featurepolicy.js></script>
  <script>
  'use strict';
  var same_origin_src = '/feature-policy/resources/feature-policy-payment.html';
  var cross_origin_src = 'https://{{domains[www]}}:{{ports[https][0]}}' +
    same_origin_src;
  var feature_name = 'Feature policy "payment"';
  var header = 'allow="payment" attribute';

  async_test(t => {
    test_feature_availability(
        'PaymentRequest()', t, same_origin_src,
        expect_feature_available_default, 'payment');
  }, feature_name + ' can be enabled in same-origin iframe using ' + header);

  async_test(t => {
    test_feature_availability(
        'PaymentRequest()', t, cross_origin_src,
        expect_feature_available_default, 'payment');
  }, feature_name + ' can be enabled in cross-origin iframe using ' + header);
  </script>
</body>
