~rpadovani/oxide/type-info

« back to all changes in this revision

Viewing changes to qt/tests/qmltests/core/tst_UserAgentOverrideSetCaching.qml

  • Committer: Riccardo Padovani
  • Date: 2015-10-19 07:56:29 UTC
  • mfrom: (1088.1.131 oxide)
  • Revision ID: riccardo@rpadovani.com-20151019075629-z0mlhwlb9xflkovw
MergeĀ fromĀ trunk

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
import QtQuick 2.0
 
2
import QtTest 1.0
 
3
import com.canonical.Oxide 1.9
 
4
import com.canonical.Oxide.Testing 1.0
 
5
 
 
6
TestWebView {
 
7
  id: webView
 
8
  width: 200
 
9
  height: 200
 
10
 
 
11
  context.userAgent: "Default user agent"
 
12
 
 
13
  property variant qtest_overrides: [
 
14
    [ /^http:\/\/testsuite\/empty\.html\?1$/, "Override 1" ],
 
15
    [ /^http:\/\/testsuite\/empty\.html\?2$/, "Override 2" ],
 
16
    [ /^http:\/\/testsuite\/empty\.html\?3$/, "Override 3" ],
 
17
    [ /^http:\/\/testsuite\/empty\.html\?4$/, "Override 4" ],
 
18
    [ /^http:\/\/testsuite\/empty\.html\?5$/, "Override 5" ],
 
19
    [ /^http:\/\/testsuite\/empty\.html\?6$/, "Override 6" ],
 
20
    [ /^http:\/\/testsuite\/empty\.html\?7$/, "Override 7" ],
 
21
    [ /^http:\/\/testsuite\/empty\.html\?8$/, "Override 8" ],
 
22
    [ /^http:\/\/testsuite\/empty\.html\?9$/, "Override 9" ],
 
23
    [ /^http:\/\/testsuite\/empty\.html\?10$/, "Override 10" ],
 
24
    [ /^http:\/\/testsuite\/empty\.html\?11$/, "Override 11" ],
 
25
    [ /^http:\/\/testsuite\/empty\.html\?12$/, "Override 12" ],
 
26
    [ /^http:\/\/testsuite\/empty\.html\?13$/, "Override 13" ],
 
27
    [ /^http:\/\/testsuite\/empty\.html\?14$/, "Override 14" ],
 
28
    [ /^http:\/\/testsuite\/empty\.html\?15$/, "Override 15" ],
 
29
  ]
 
30
 
 
31
  property variant qtest_data: [
 
32
    { url: "http://testsuite/empty.html?1", expected: "Override 1" },
 
33
    { url: "http://testsuite/empty.html?2", expected: "Override 2" },
 
34
    { url: "http://testsuite/empty.html?3", expected: "Override 3" },
 
35
    { url: "http://testsuite/empty.html?4", expected: "Override 4" },
 
36
    { url: "http://testsuite/empty.html?5", expected: "Override 5" },
 
37
    { url: "http://testsuite/empty.html?6", expected: "Override 6" },
 
38
    { url: "http://testsuite/empty.html?7", expected: "Override 7" },
 
39
    { url: "http://testsuite/empty.html?8", expected: "Override 8" },
 
40
    { url: "http://testsuite/empty.html?9", expected: "Override 9" },
 
41
    { url: "http://testsuite/empty.html?10", expected: "Override 10" },
 
42
    { url: "http://testsuite/empty.html?11", expected: "Override 11" },
 
43
    { url: "http://testsuite/empty.html?12", expected: "Override 12" },
 
44
    { url: "http://testsuite/empty.html?13", expected: "Override 13" },
 
45
    { url: "http://testsuite/empty.html?14", expected: "Override 14" },
 
46
    { url: "http://testsuite/empty.html?15", expected: "Override 15" },
 
47
    { url: "http://testsuite/empty.html", expected: "Default user agent" },
 
48
  ]
 
49
 
 
50
  Component.onCompleted: {
 
51
    context.userAgentOverrides = qtest_overrides;
 
52
  }
 
53
 
 
54
  TestCase {
 
55
    id: test
 
56
    name: "UserAgentOverrideSetCaching"
 
57
    when: windowShown
 
58
 
 
59
    function test_UserAgentOverrideSetCaching_data() {
 
60
      var data = [];
 
61
      for (var i = 0; i < 500; i++) {
 
62
        var j = Math.floor(Math.random() * qtest_data.length);
 
63
        data.push({ url: qtest_data[j].url, expected: qtest_data[j].expected });
 
64
      }
 
65
      return data;
 
66
    }
 
67
 
 
68
    // This test exists to stress-test the caching mechanism in
 
69
    // UserAgentOverrideSet
 
70
    function test_UserAgentOverrideSetCaching(data) {
 
71
      webView.url = data.url;
 
72
      verify(webView.waitForLoadSucceeded());
 
73
 
 
74
      compare(webView.getTestApi().evaluateCode("return navigator.userAgent", true),
 
75
              data.expected);
 
76
    }
 
77
  }
 
78
}