Changeset 206465 in webkit


Ignore:
Timestamp:
Sep 27, 2016 2:54:38 PM (8 years ago)
Author:
Dewei Zhu
Message:

Extend perf dashboard to support multiple summary pages.
https://bugs.webkit.org/show_bug.cgi?id=162594

Reviewed by Ryosuke Niwa.

Start support multiple summary pages instead of one.
Specify 'summaryPages' as key that map to a list of summaries which follows
current 'summary' format in 'config.json' but with 2 more properties:

'name': specifying the name shows on perf dashboard,
'route': specifying the path to this page.

  • public/include/manifest.php:
  • public/v3/main.js:

(main):
(main.): Deleted.

  • public/v3/models/manifest.js:

(Manifest._didFetchManifest):
(Manifest):

  • public/v3/pages/summary-page.js:

(SummaryPage):
(SummaryPage.prototype.routeName):

Location:
trunk/Websites/perf.webkit.org
Files:
5 edited

Legend:

Unmodified
Added
Removed
  • trunk/Websites/perf.webkit.org/ChangeLog

    r204313 r206465  
     12016-09-27  Dewei Zhu  <dewei_zhu@apple.com>
     2
     3        Extend perf dashboard to support multiple summary pages.
     4        https://bugs.webkit.org/show_bug.cgi?id=162594
     5
     6        Reviewed by Ryosuke Niwa.
     7
     8        Start support multiple summary pages instead of one.
     9        Specify 'summaryPages' as key that map to a list of summaries which follows
     10        current 'summary' format in 'config.json' but with 2 more properties:
     11           'name': specifying the name shows on perf dashboard,
     12           'route': specifying the path to this page.
     13
     14        * public/include/manifest.php:
     15        * public/v3/main.js:
     16        (main):
     17        (main.): Deleted.
     18        * public/v3/models/manifest.js:
     19        (Manifest._didFetchManifest):
     20        (Manifest):
     21        * public/v3/pages/summary-page.js:
     22        (SummaryPage):
     23        (SummaryPage.prototype.routeName):
     24
    1252016-08-09  Ryosuke Niwa  <rniwa@webkit.org>
    226
  • trunk/Websites/perf.webkit.org/public/include/manifest.php

    r203486 r206465  
    4242            'bugTrackers' => (object)$this->bug_trackers($repositories_table),
    4343            'dashboards' => (object)config('dashboards'),
    44             'summary' => (object)config('summary'),
     44            'summaryPages' => (object)config('summaryPages'),
    4545        );
    4646
  • trunk/Websites/perf.webkit.org/public/v3/main.js

    r203709 r206465  
    2121        var chartsToolbar = new ChartsToolbar;
    2222
    23         var summaryPage = manifest.summary ? new SummaryPage(manifest.summary) : null;
     23        var summaryPages = [];
     24        if (manifest.summaryPages) {
     25            for (var summaryPage of manifest.summaryPages)
     26                summaryPages.push(new SummaryPage(summaryPage));
     27        }
     28
    2429        var chartsPage = new ChartsPage(chartsToolbar);
    2530        var analysisCategoryPage = new AnalysisCategoryPage();
     
    3540
    3641        var heading = new Heading(manifest.siteTitle);
    37         heading.addPageGroup([summaryPage, chartsPage, analysisCategoryPage].filter(function (page) { return page; }));
     42        heading.addPageGroup(summaryPages.concat([chartsPage, analysisCategoryPage]));
    3843
    3944        heading.setTitle(manifest.siteTitle);
     
    4146
    4247        var router = new PageRouter();
    43         if(summaryPage)
     48        for (var summaryPage of summaryPages)
    4449            router.addPage(summaryPage);
    4550        router.addPage(chartsPage);
     
    5156            router.addPage(page);
    5257
    53         if (summaryPage)
    54             router.setDefaultPage(summaryPage);
    55         else if (dashboardPages)
     58        if (summaryPages.length)
     59            router.setDefaultPage(summaryPages[0]);
     60        else if (dashboardPages.length)
    5661            router.setDefaultPage(dashboardPages[0]);
    5762        else
  • trunk/Websites/perf.webkit.org/public/v3/models/manifest.js

    r199444 r206465  
    4949            siteTitle: rawResponse.siteTitle,
    5050            dashboards: rawResponse.dashboards, // FIXME: Add an abstraction around dashboards.
    51             summary: rawResponse.summary,
     51            summaryPages: rawResponse.summaryPages,
    5252        }
    5353    }
  • trunk/Websites/perf.webkit.org/public/v3/pages/summary-page.js

    r203709 r206465  
    44    constructor(summarySettings)
    55    {
    6         super('Summary', null);
    7 
     6        super(summarySettings.name, null);
     7
     8        this._route = summarySettings.route;
    89        this._table = {
    910            heading: summarySettings.platformGroups,
     
    2728    }
    2829
    29     routeName() { return 'summary'; }
     30    routeName() { return `summary/${this._route}`; }
    3031
    3132    open(state)
     
    3839            group.fetchAndComputeSummary(timeRange).then(this.render.bind(this));
    3940    }
    40    
     41
    4142    render()
    4243    {
Note: See TracChangeset for help on using the changeset viewer.