summaryrefslogtreecommitdiffstats
path: root/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-charset-02.html
blob: 63cbe838e017fa0133d2fe66bcb2ec4002d7d43d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
<!DOCTYPE html>
<head>
  <title>Script encoding for document encoding windows-1250</title>
  <link rel="author" title="askalski" href="github.com/askalski">
  <link rel="author" title="Aaqa Ishtyaq" href="github.com/aaqaishtyaq">
  <link rel="help" href="https://html.spec.whatwg.org/multipage/webappapis.html#fetch-a-classic-script">
  <script src="/resources/testharness.js"></script>
  <script src="/resources/testharnessreport.js"></script>
  <div id="log"></div>
  <!-- to avoid conflating tests for script encoding declaring the encoding at the top of file. i.e, windows-1250-->
  <meta charset="windows-1250">
  <script>
  test(function() {
    assert_equals(document.characterSet, "windows-1250")
  }, "assumption: document encoding is windows-1250");
  </script>

  <!-- in this case, neither response's Content Type nor charset attribute bring correct charset information.
  -->
  <script type="text/javascript"
    src="serve-with-content-type.py?fn=external-script-windows1250.js&ct=text/javascript">
  </script>

  <script>
  test(function() {
    //these string should match since, windows-1250 is the fallback encoding.
    assert_equals(window.getSomeString(), "\u015b\u0107\u0105\u017c\u017a");
  }, "windows-1250 script decoded using document encoding (also windows-1250)");
  </script>

  <script type="text/javascript"
    src="serve-with-content-type.py?fn=external-script-utf8.js&ct=text/javascript">
  </script>
  <script>
  //these strings should match, since this string is the result of decoding the utf-8 text as windows-1250.
  test(function() {
    assert_equals(window.getSomeString(), "\u0139\u203a\xc4\u2021\xc4\u2026\u0139\u013d\u0139\u015f");
  }, "UTF-8 script decoded using document encoding (windows-1250)");
  </script>

</head>