-cases.js 2.9 KB
Newer Older
S
sushuang 已提交
1 2 3 4 5
(function () {

    var testHelper = window.testHelper;
    var encodeHTML = testHelper.encodeHTML;

S
sushuang 已提交
6
    var caseFrame = window.caseFrame;
S
sushuang 已提交
7

S
sushuang 已提交
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
    var filters = [{
        name: 'primary-cases',
        whiteList: [
            'ut/ut.html',
            'ie8.html',
            'touch-slide.html',
            'touch-test.html',
            'touch-candlestick.html',
            'tooltip-touch.html',
            'bar.html',
            'line.html',
            'geoLine.html',
            'graph.html',
            'graph-grid.html',
            'map.html',
            'media-finance.html',
            'axes.html',
            'dataZoom-axes.html',
            'dataZoom-axis-type.html',
            'dataZoom-dynamic.html',
            'visualMap-continuous.html',
            'visualMap-opacity.html',
            'brush.html',
            'brush2.html'
        ]
    }, {
        name: 'stream-cases',
        whiteList: [
            'lines-ny-appendData.html',
37 38
            'scatter-stream-large.html',
            'scatter-stream-not-large.html',
S
sushuang 已提交
39 40 41 42
            'scatter-random-stream.html',
            'scatter-random-stream-fix-axis.html',
            'scatter-gps.html',
            'scatter-weibo.html',
43
            'bar-stream-large.html',
S
sushuang 已提交
44
            'bar-stream-large1.html',
45
            'candlestick-large1.html',
S
sushuang 已提交
46
            'lines-flight.html',
47
            'lines-stream-large.html',
48
            'lines-stream-not-large.html',
S
sushuang 已提交
49 50 51 52 53 54
            'stream-filter.html',
            'scatter-stream-visual.html'
        ]
    }];


S
sushuang 已提交
55
    function run() {
S
sushuang 已提交
56

S
sushuang 已提交
57
        // Init list
S
sushuang 已提交
58
        var url = testHelper.dir() + '/';
S
sushuang 已提交
59
        $.ajax({
S
sushuang 已提交
60
            url: url
S
sushuang 已提交
61 62
        }).then(
            function (content) {
S
sushuang 已提交
63
                var pagePaths = fetchPagePaths(content);
S
sushuang 已提交
64
                if (pagePaths.length) {
S
sushuang 已提交
65 66
                    caseFrame.init({
                        dom: document.getElementById('main'),
S
sushuang 已提交
67 68
                        pagePaths: pagePaths,
                        filters: filters
S
sushuang 已提交
69
                    });
S
sushuang 已提交
70 71 72 73
                }
                else {
                    renderFailInfo(url);
                }
S
sushuang 已提交
74 75 76 77 78
            },
            function () {
                renderFailInfo(url);
            }
        );
S
sushuang 已提交
79 80
    }

S
sushuang 已提交
81 82 83 84 85 86
    function renderFailInfo(url) {
        url = encodeHTML(url);
        document.body.innerHTML = 'Error: This page requires a server that is able to list files when visiting'
            + ' <a target="_blank" href="' + url + '">' + url + '</a>.';
    }

S
sushuang 已提交
87 88 89
    function fetchPagePaths(content) {
        var pageList = [];

S
tweak  
sushuang 已提交
90 91
        singleFetch(/"([^"/]*\/)*([^"/]+\.html)\s*"/g);
        singleFetch(/'([^'/]*\/)*([^'/]+\.html)\s*'/g);
S
sushuang 已提交
92 93 94 95

        function singleFetch(pattern) {
            var result;
            while ((result = pattern.exec(content)) != null) {
S
tweak  
sushuang 已提交
96
                pageList.push(result[result.length - 1]);
S
sushuang 已提交
97 98 99 100 101 102
            }
        }

        return pageList;
    }

S
sushuang 已提交
103
    run();
S
sushuang 已提交
104 105

})();