зеркало из https://github.com/mozilla/treeherder.git
Коммит
fc93a34f34
|
@ -0,0 +1,22 @@
|
|||
language: node_js
|
||||
node_js:
|
||||
- 0.8
|
||||
|
||||
before_script:
|
||||
- export DISPLAY=:99.0
|
||||
- sh -e /etc/init.d/xvfb start
|
||||
- npm install --quiet -g karma
|
||||
- cd ./webapp
|
||||
- ./scripts/web-server.js > /dev/null &
|
||||
- sleep 1 # give server time to start
|
||||
|
||||
script:
|
||||
- karma start config/karma.conf.js --no-auto-watch --single-run --reporters=dots --browsers=Firefox
|
||||
|
||||
# Do not run these on the travis server at this time.
|
||||
# The end to end tests require the service to be running, but travis can't
|
||||
# start the service for us. So we would have to have the default point to
|
||||
# a dedicated dev service instance that is reach-able by travis. However, we
|
||||
# require /etc/hosts to have an entry at this point to reach our current dev
|
||||
# server. So these tests should be run only locally for now.
|
||||
# - karma start config/karma-e2e.conf.js --reporters=dots --browsers=Firefox
|
|
@ -1,22 +1,35 @@
|
|||
basePath = '../';
|
||||
module.exports = function (config) {
|
||||
config.set({
|
||||
frameworks: ['ng-scenario'],
|
||||
|
||||
files = [
|
||||
ANGULAR_SCENARIO,
|
||||
ANGULAR_SCENARIO_ADAPTER,
|
||||
'test/e2e/**/*.js'
|
||||
];
|
||||
basePath: '../',
|
||||
|
||||
autoWatch = false;
|
||||
files: [
|
||||
'test/e2e/**/*.js',
|
||||
|
||||
browsers = ['Chrome'];
|
||||
// fixtures
|
||||
{pattern: 'test/mock/*.json', watched: true, served: true, included: false}
|
||||
],
|
||||
|
||||
singleRun = true;
|
||||
autoWatch: false,
|
||||
singleRun: true,
|
||||
|
||||
proxies = {
|
||||
browsers: ['Firefox'],
|
||||
|
||||
proxies: {
|
||||
'/': 'http://localhost:8000/'
|
||||
};
|
||||
|
||||
junitReporter = {
|
||||
},
|
||||
urlRoot: '/',
|
||||
plugins : [
|
||||
'karma-junit-reporter',
|
||||
'karma-chrome-launcher',
|
||||
'karma-firefox-launcher',
|
||||
'karma-jasmine',
|
||||
'karma-ng-scenario'
|
||||
],
|
||||
junitReporter: {
|
||||
outputFile: 'test_out/e2e.xml',
|
||||
suite: 'e2e'
|
||||
}
|
||||
});
|
||||
};
|
||||
|
|
|
@ -1,10 +1,10 @@
|
|||
frameworks = ['jasmine'];
|
||||
module.exports = function (config) {
|
||||
config.set({
|
||||
frameworks: ['jasmine'],
|
||||
|
||||
basePath = '../';
|
||||
basePath: '../',
|
||||
|
||||
files = [
|
||||
JASMINE,
|
||||
JASMINE_ADAPTER,
|
||||
files: [
|
||||
'app/vendor/angular/angular.js',
|
||||
'app/vendor/angular/angular-*.js',
|
||||
'app/vendor/*.js',
|
||||
|
@ -16,15 +16,22 @@ files = [
|
|||
'test/unit/**/*.js',
|
||||
|
||||
// fixtures
|
||||
{pattern: 'app/resources/*.json', watched: true, served: true, included: false}
|
||||
];
|
||||
{pattern: 'test/mock/*.json', watched: true, served: true, included: false}
|
||||
],
|
||||
|
||||
autoWatch = false;
|
||||
singleRun = true;
|
||||
autoWatch: false,
|
||||
singleRun: true,
|
||||
|
||||
browsers = ['Firefox'];
|
||||
browsers: ['Firefox'],
|
||||
|
||||
junitReporter = {
|
||||
junitReporter: {
|
||||
outputFile: 'test_out/unit.xml',
|
||||
suite: 'unit'
|
||||
},
|
||||
|
||||
reporters: ['progress', 'coverage'],
|
||||
preprocessors: {
|
||||
'app/js/**/*.js': ['coverage']
|
||||
}
|
||||
});
|
||||
};
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
<head>
|
||||
<title>End2end Test Runner</title>
|
||||
<meta charset="utf-8">
|
||||
<script src="../lib/angular/angular-scenario.js" ng-autotest></script>
|
||||
<script src="../vendor/angular/angular-scenario.js" ng-autotest></script>
|
||||
<script src="scenarios.js"></script>
|
||||
</head>
|
||||
<body>
|
||||
|
|
|
@ -2,44 +2,29 @@
|
|||
|
||||
/* http://docs.angularjs.org/guide/dev_guide.e2e-testing */
|
||||
|
||||
describe('my app', function() {
|
||||
describe('treeherder', function() {
|
||||
|
||||
beforeEach(function() {
|
||||
browser().navigateTo('../../app/index.html');
|
||||
browser().navigateTo('app/index.html');
|
||||
});
|
||||
|
||||
|
||||
it('should automatically redirect to /view1 when location hash/fragment is empty', function() {
|
||||
expect(browser().location().url()).toBe("/view1");
|
||||
it('should automatically redirect to /jobs when location hash/fragment is empty', function() {
|
||||
expect(browser().location().url()).toBe("/jobs");
|
||||
});
|
||||
|
||||
|
||||
describe('view1', function() {
|
||||
|
||||
beforeEach(function() {
|
||||
browser().navigateTo('#/view1');
|
||||
browser().navigateTo('#/jobs');
|
||||
});
|
||||
|
||||
|
||||
it('should render view1 when user navigates to /view1', function() {
|
||||
expect(element('[ng-view] p:first').text()).
|
||||
toMatch(/partial for view 1/);
|
||||
it('should render jobs when user navigates to /jobs', function() {
|
||||
expect(repeater('.result-set').count()).toBe(10);
|
||||
});
|
||||
|
||||
});
|
||||
|
||||
|
||||
describe('view2', function() {
|
||||
|
||||
beforeEach(function() {
|
||||
browser().navigateTo('#/view2');
|
||||
});
|
||||
|
||||
|
||||
it('should render view2 when user navigates to /view2', function() {
|
||||
expect(element('[ng-view] p:first').text()).
|
||||
toMatch(/partial for view 2/);
|
||||
});
|
||||
|
||||
});
|
||||
});
|
||||
|
|
|
@ -0,0 +1,16 @@
|
|||
{
|
||||
|
||||
"name": "Unknown Builder Job Artifact",
|
||||
"active_status": "active",
|
||||
"blob": {
|
||||
"errors": [ ],
|
||||
"tinderbox_printlines": [
|
||||
"mochitest-plain<br/>895/0/128"
|
||||
],
|
||||
"logurl": "http://ftp.mozilla.org/pub/mozilla.org/mobile/tinderbox-builds/mozilla-inbound-android-armv6/1377289258/mozilla-inbound_tegra_android-armv6_test-mochitest-5-bm10-tests1-tegra-build1958.txt.gz"
|
||||
},
|
||||
"type": "json",
|
||||
"id": 519,
|
||||
"job_id": 260
|
||||
|
||||
}
|
|
@ -0,0 +1,43 @@
|
|||
{
|
||||
|
||||
"end_timestamp": 1377294159,
|
||||
"submit_timestamp": 1377292078,
|
||||
"start_timestamp": 1377318435,
|
||||
"result_set_id": 3,
|
||||
"product_id": 1,
|
||||
"machine_platform_id": 1,
|
||||
"active_status": "active",
|
||||
"artifacts": [
|
||||
{
|
||||
"resource_uri": "/api/project/mozilla-inbound/artifact/519/",
|
||||
"type": "json",
|
||||
"id": 519,
|
||||
"name": "Unknown Builder Job Artifact"
|
||||
},
|
||||
{
|
||||
"resource_uri": "/api/project/mozilla-inbound/artifact/520/",
|
||||
"type": "json",
|
||||
"id": 520,
|
||||
"name": "Structured Log"
|
||||
}
|
||||
],
|
||||
"option_collection_hash": "102210fe594ee9b33d82058545b1ed14f4c8206e",
|
||||
"machine_name": "tegra-363",
|
||||
"state": "finished",
|
||||
"who": "sendchange-unittest",
|
||||
"logs": [
|
||||
{
|
||||
"url": "http://ftp.mozilla.org/pub/mozilla.org/mobile/tinderbox-builds/mozilla-inbound-android-armv6/1377289258/mozilla-inbound_tegra_android-armv6_test-mochitest-5-bm10-tests1-tegra-build1958.txt.gz",
|
||||
"name": "unittest"
|
||||
}
|
||||
],
|
||||
"reason": "scheduler",
|
||||
"machine_id": 465,
|
||||
"result": "success",
|
||||
"build_platform_id": 1,
|
||||
"job_coalesced_to_guid": "",
|
||||
"job_guid": "19e993f5b0a717185083fb9eacb2d422b36d6bd1",
|
||||
"id": 260,
|
||||
"job_type_id": 11
|
||||
|
||||
}
|
|
@ -0,0 +1,368 @@
|
|||
{
|
||||
"build": [
|
||||
{
|
||||
"description": "",
|
||||
"jobtype__name": "asan",
|
||||
"jobtype__symbol": "A",
|
||||
"symbol": "B"
|
||||
},
|
||||
{
|
||||
"description": "",
|
||||
"jobtype__name": "asan nightly",
|
||||
"jobtype__symbol": "An",
|
||||
"symbol": "B"
|
||||
},
|
||||
{
|
||||
"description": "",
|
||||
"jobtype__name": "b2g.*_stable_dep",
|
||||
"jobtype__symbol": "BiB",
|
||||
"symbol": "B"
|
||||
},
|
||||
{
|
||||
"description": "",
|
||||
"jobtype__name": "b2g.*_stable_nightly",
|
||||
"jobtype__symbol": "NiB",
|
||||
"symbol": "B"
|
||||
},
|
||||
{
|
||||
"description": "",
|
||||
"jobtype__name": "b2g.*_dep",
|
||||
"jobtype__symbol": "Bi",
|
||||
"symbol": "B"
|
||||
},
|
||||
{
|
||||
"description": "",
|
||||
"jobtype__name": "b2g.*_nightly",
|
||||
"jobtype__symbol": "Ni",
|
||||
"symbol": "B"
|
||||
},
|
||||
{
|
||||
"description": "",
|
||||
"jobtype__name": "b2g.*gecko build",
|
||||
"jobtype__symbol": "Bg",
|
||||
"symbol": "B"
|
||||
},
|
||||
{
|
||||
"description": "",
|
||||
"jobtype__name": "b2g.*gecko-debug build",
|
||||
"jobtype__symbol": "Bg",
|
||||
"symbol": "B"
|
||||
},
|
||||
{
|
||||
"description": "",
|
||||
"jobtype__name": "b2g.*gecko_localizer nightly",
|
||||
"jobtype__symbol": "NgL",
|
||||
"symbol": "B"
|
||||
},
|
||||
{
|
||||
"description": "",
|
||||
"jobtype__name": "b2g.*gecko nightly",
|
||||
"jobtype__symbol": "Ng",
|
||||
"symbol": "B"
|
||||
},
|
||||
{
|
||||
"description": "",
|
||||
"jobtype__name": "b2g.*_eng_dep",
|
||||
"jobtype__symbol": "BiM",
|
||||
"symbol": "B"
|
||||
},
|
||||
{
|
||||
"description": "",
|
||||
"jobtype__name": "b2g.*_eng_nightly",
|
||||
"jobtype__symbol": "NiM",
|
||||
"symbol": "B"
|
||||
},
|
||||
{
|
||||
"description": "",
|
||||
"jobtype__name": "build",
|
||||
"jobtype__symbol": "B",
|
||||
"symbol": "B"
|
||||
},
|
||||
{
|
||||
"description": "",
|
||||
"jobtype__name": "nightly",
|
||||
"jobtype__symbol": "N",
|
||||
"symbol": "B"
|
||||
},
|
||||
{
|
||||
"description": "",
|
||||
"jobtype__name": "valgrind",
|
||||
"jobtype__symbol": "V",
|
||||
"symbol": "B"
|
||||
},
|
||||
{
|
||||
"description": "",
|
||||
"jobtype__name": "xulrunner",
|
||||
"jobtype__symbol": "Xr",
|
||||
"symbol": "B"
|
||||
}
|
||||
],
|
||||
"mochitest": [
|
||||
{
|
||||
"description": "",
|
||||
"jobtype__name": "mochitest",
|
||||
"jobtype__symbol": "M",
|
||||
"symbol": "M"
|
||||
},
|
||||
{
|
||||
"description": "",
|
||||
"jobtype__name": "mochitest-browser-chrome",
|
||||
"jobtype__symbol": "bc",
|
||||
"symbol": "M"
|
||||
},
|
||||
{
|
||||
"description": "",
|
||||
"jobtype__name": "mochitest-other",
|
||||
"jobtype__symbol": "oth",
|
||||
"symbol": "M"
|
||||
},
|
||||
{
|
||||
"description": "",
|
||||
"jobtype__name": "robocop",
|
||||
"jobtype__symbol": "rc",
|
||||
"symbol": "M"
|
||||
}
|
||||
],
|
||||
"reftest": [
|
||||
{
|
||||
"description": "",
|
||||
"jobtype__name": "crashtest",
|
||||
"jobtype__symbol": "C",
|
||||
"symbol": "R"
|
||||
},
|
||||
{
|
||||
"description": "",
|
||||
"jobtype__name": "crashtest-ipc",
|
||||
"jobtype__symbol": "Cipc",
|
||||
"symbol": "R"
|
||||
},
|
||||
{
|
||||
"description": "",
|
||||
"jobtype__name": "jsreftest",
|
||||
"jobtype__symbol": "J",
|
||||
"symbol": "R"
|
||||
},
|
||||
{
|
||||
"description": "",
|
||||
"jobtype__name": "reftest",
|
||||
"jobtype__symbol": "R",
|
||||
"symbol": "R"
|
||||
},
|
||||
{
|
||||
"description": "",
|
||||
"jobtype__name": "reftest-no-accel",
|
||||
"jobtype__symbol": "Ru",
|
||||
"symbol": "R"
|
||||
},
|
||||
{
|
||||
"description": "",
|
||||
"jobtype__name": "reftest-ipc",
|
||||
"jobtype__symbol": "Ripc",
|
||||
"symbol": "R"
|
||||
}
|
||||
],
|
||||
"spidermonkey": [
|
||||
{
|
||||
"description": "",
|
||||
"jobtype__name": "spidermonkey.*-rootanalysis",
|
||||
"jobtype__symbol": "r",
|
||||
"symbol": "SM"
|
||||
},
|
||||
{
|
||||
"description": "",
|
||||
"jobtype__name": "spidermonkey.*-warnaserr",
|
||||
"jobtype__symbol": "e",
|
||||
"symbol": "SM"
|
||||
},
|
||||
{
|
||||
"description": "",
|
||||
"jobtype__name": "spidermonkey.*-dtrace",
|
||||
"jobtype__symbol": "d",
|
||||
"symbol": "SM"
|
||||
},
|
||||
{
|
||||
"description": "",
|
||||
"jobtype__name": "spidermonkey.*-exactroot",
|
||||
"jobtype__symbol": "exr",
|
||||
"symbol": "SM"
|
||||
},
|
||||
{
|
||||
"description": "",
|
||||
"jobtype__name": "spidermonkey.*-generational",
|
||||
"jobtype__symbol": "ggc",
|
||||
"symbol": "SM"
|
||||
}
|
||||
],
|
||||
"talos": [
|
||||
{
|
||||
"description": "",
|
||||
"jobtype__name": "talos chrome",
|
||||
"jobtype__symbol": "c",
|
||||
"symbol": "T"
|
||||
},
|
||||
{
|
||||
"description": "",
|
||||
"jobtype__name": "talos chromez",
|
||||
"jobtype__symbol": "c",
|
||||
"symbol": "T"
|
||||
},
|
||||
{
|
||||
"description": "",
|
||||
"jobtype__name": "talos dromaeo",
|
||||
"jobtype__symbol": "dr",
|
||||
"symbol": "T"
|
||||
},
|
||||
{
|
||||
"description": "",
|
||||
"jobtype__name": "talos dromaeojs",
|
||||
"jobtype__symbol": "d",
|
||||
"symbol": "T"
|
||||
},
|
||||
{
|
||||
"description": "",
|
||||
"jobtype__name": "talos nochrome",
|
||||
"jobtype__symbol": "n",
|
||||
"symbol": "T"
|
||||
},
|
||||
{
|
||||
"description": "",
|
||||
"jobtype__name": "talos other",
|
||||
"jobtype__symbol": "o",
|
||||
"symbol": "T"
|
||||
},
|
||||
{
|
||||
"description": "",
|
||||
"jobtype__name": "talos dirtypaint",
|
||||
"jobtype__symbol": "p",
|
||||
"symbol": "T"
|
||||
},
|
||||
{
|
||||
"description": "",
|
||||
"jobtype__name": "talos remote-trobocheck",
|
||||
"jobtype__symbol": "rck",
|
||||
"symbol": "T"
|
||||
},
|
||||
{
|
||||
"description": "",
|
||||
"jobtype__name": "talos remote-trobocheck2",
|
||||
"jobtype__symbol": "rck2",
|
||||
"symbol": "T"
|
||||
},
|
||||
{
|
||||
"description": "",
|
||||
"jobtype__name": "talos remote-trobopan",
|
||||
"jobtype__symbol": "rp",
|
||||
"symbol": "T"
|
||||
},
|
||||
{
|
||||
"description": "",
|
||||
"jobtype__name": "talos remote-troboprovider",
|
||||
"jobtype__symbol": "rpr",
|
||||
"symbol": "T"
|
||||
},
|
||||
{
|
||||
"description": "",
|
||||
"jobtype__name": "talos svgr",
|
||||
"jobtype__symbol": "s",
|
||||
"symbol": "T"
|
||||
},
|
||||
{
|
||||
"description": "",
|
||||
"jobtype__name": "talos remote-tsvgr",
|
||||
"jobtype__symbol": "s",
|
||||
"symbol": "T"
|
||||
},
|
||||
{
|
||||
"description": "",
|
||||
"jobtype__name": "talos remote-tp4m",
|
||||
"jobtype__symbol": "tp",
|
||||
"symbol": "T"
|
||||
},
|
||||
{
|
||||
"description": "",
|
||||
"jobtype__name": "talos tp",
|
||||
"jobtype__symbol": "tp",
|
||||
"symbol": "T"
|
||||
},
|
||||
{
|
||||
"description": "",
|
||||
"jobtype__name": "talos remote-tp4m_nochrome",
|
||||
"jobtype__symbol": "tpn",
|
||||
"symbol": "T"
|
||||
},
|
||||
{
|
||||
"description": "",
|
||||
"jobtype__name": "talos remote-ts",
|
||||
"jobtype__symbol": "ts",
|
||||
"symbol": "T"
|
||||
},
|
||||
{
|
||||
"description": "",
|
||||
"jobtype__name": "talos xperf",
|
||||
"jobtype__symbol": "x",
|
||||
"symbol": "T"
|
||||
}
|
||||
],
|
||||
"unknown": [
|
||||
{
|
||||
"description": "",
|
||||
"jobtype__name": "dxr",
|
||||
"jobtype__symbol": "Dxr",
|
||||
"symbol": "?"
|
||||
},
|
||||
{
|
||||
"description": "",
|
||||
"jobtype__name": "gaia-ui-test",
|
||||
"jobtype__symbol": "G",
|
||||
"symbol": "?"
|
||||
},
|
||||
{
|
||||
"description": "",
|
||||
"jobtype__name": "jetpack-mozilla-aurora",
|
||||
"jobtype__symbol": "m-a",
|
||||
"symbol": "?"
|
||||
},
|
||||
{
|
||||
"description": "",
|
||||
"jobtype__name": "jetpack-mozilla-beta",
|
||||
"jobtype__symbol": "m-b",
|
||||
"symbol": "?"
|
||||
},
|
||||
{
|
||||
"description": "",
|
||||
"jobtype__name": "jetpack-mozilla-central",
|
||||
"jobtype__symbol": "m-c",
|
||||
"symbol": "?"
|
||||
},
|
||||
{
|
||||
"description": "",
|
||||
"jobtype__name": "jetpack-mozilla-release",
|
||||
"jobtype__symbol": "m-r",
|
||||
"symbol": "?"
|
||||
},
|
||||
{
|
||||
"description": "",
|
||||
"jobtype__name": "jetpack",
|
||||
"jobtype__symbol": "JP",
|
||||
"symbol": "?"
|
||||
},
|
||||
{
|
||||
"description": "",
|
||||
"jobtype__name": "marionette",
|
||||
"jobtype__symbol": "Mn",
|
||||
"symbol": "?"
|
||||
},
|
||||
{
|
||||
"description": "",
|
||||
"jobtype__name": "mozmill",
|
||||
"jobtype__symbol": "Z",
|
||||
"symbol": "?"
|
||||
},
|
||||
{
|
||||
"description": "",
|
||||
"jobtype__name": "xpcshell",
|
||||
"jobtype__symbol": "X",
|
||||
"symbol": "?"
|
||||
}
|
||||
]
|
||||
}
|
Разница между файлами не показана из-за своего большого размера
Загрузить разницу
|
@ -0,0 +1,165 @@
|
|||
{
|
||||
|
||||
"repository_id": 2,
|
||||
"revision_hash": "9dd584cca791878d8060a5f17b3fa14cd277534a",
|
||||
"author": "sendchange-unittest",
|
||||
"comments": "",
|
||||
"platforms": [
|
||||
{
|
||||
"warning_level": "green",
|
||||
"name": "Rev3 WINNT 6.1 opt",
|
||||
"groups": [
|
||||
{
|
||||
"symbol": null,
|
||||
"jobs": [
|
||||
{
|
||||
"submit_timestamp": 1377293391,
|
||||
"machine_name": "t-w732-ix-113",
|
||||
"job_type_description": "fill me",
|
||||
"result_set_id": 11,
|
||||
"result": "success",
|
||||
"machine_platform_architecture": "x86",
|
||||
"end_timestamp": 1377294171,
|
||||
"build_platform": "Rev3 WINNT 6.1",
|
||||
"machine_platform_os": "win",
|
||||
"job_id": 263,
|
||||
"job_type_name": "jetpack",
|
||||
"platform": "Rev3 WINNT 6.1",
|
||||
"state": "finished",
|
||||
"build_os": "win",
|
||||
"who": "sendchange-unittest",
|
||||
"option_collection_hash": "102210fe594ee9b33d82058545b1ed14f4c8206e",
|
||||
"job_type_symbol": "JP",
|
||||
"reason": "scheduler",
|
||||
"job_group_description": null,
|
||||
"job_guid": "2be461e3564535ed7e0766a5906f5d29ae79fcd6",
|
||||
"start_timestamp": 1377318712,
|
||||
"build_architecture": "x86",
|
||||
"build_platform_id": 5,
|
||||
"resource_uri": "/api/project/mozilla-inbound/jobs/263/"
|
||||
}
|
||||
],
|
||||
"name": null
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"warning_level": "green",
|
||||
"name": "Ubuntu 12.04 opt",
|
||||
"groups": [
|
||||
{
|
||||
"symbol": null,
|
||||
"jobs": [
|
||||
{
|
||||
"submit_timestamp": 1377293451,
|
||||
"machine_name": "tst-linux32-ec2-061",
|
||||
"job_type_description": "fill me",
|
||||
"result_set_id": 11,
|
||||
"result": "success",
|
||||
"machine_platform_architecture": "x86",
|
||||
"end_timestamp": 1377294212,
|
||||
"build_platform": "Ubuntu 12.04",
|
||||
"machine_platform_os": "linux",
|
||||
"job_id": 280,
|
||||
"job_type_name": "jetpack",
|
||||
"platform": "Ubuntu 12.04",
|
||||
"state": "finished",
|
||||
"build_os": "linux",
|
||||
"who": "sendchange-unittest",
|
||||
"option_collection_hash": "102210fe594ee9b33d82058545b1ed14f4c8206e",
|
||||
"job_type_symbol": "JP",
|
||||
"reason": "scheduler",
|
||||
"job_group_description": null,
|
||||
"job_guid": "31d4ddb9f26e9517d85c3c07c71124a068dc5f02",
|
||||
"start_timestamp": 1377318682,
|
||||
"build_architecture": "x86",
|
||||
"build_platform_id": 3,
|
||||
"resource_uri": "/api/project/mozilla-inbound/jobs/280/"
|
||||
}
|
||||
],
|
||||
"name": null
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"warning_level": "green",
|
||||
"name": "Ubuntu VM 12.04 opt",
|
||||
"groups": [
|
||||
{
|
||||
"symbol": null,
|
||||
"jobs": [
|
||||
{
|
||||
"submit_timestamp": 1377292913,
|
||||
"machine_name": "tst-linux64-ec2-068",
|
||||
"job_type_description": "fill me",
|
||||
"result_set_id": 11,
|
||||
"result": "success",
|
||||
"machine_platform_architecture": "x86_64",
|
||||
"end_timestamp": 1377293637,
|
||||
"build_platform": "Ubuntu VM 12.04",
|
||||
"machine_platform_os": "linux",
|
||||
"job_id": 95,
|
||||
"job_type_name": "jetpack",
|
||||
"platform": "Ubuntu VM 12.04",
|
||||
"state": "finished",
|
||||
"build_os": "linux",
|
||||
"who": "sendchange-unittest",
|
||||
"option_collection_hash": "102210fe594ee9b33d82058545b1ed14f4c8206e",
|
||||
"job_type_symbol": "JP",
|
||||
"reason": "scheduler",
|
||||
"job_group_description": null,
|
||||
"job_guid": "4ced0b82eefa0fcba2db23e0adb2685924b56323",
|
||||
"start_timestamp": 1377318125,
|
||||
"build_architecture": "x86_64",
|
||||
"build_platform_id": 8,
|
||||
"resource_uri": "/api/project/mozilla-inbound/jobs/95/"
|
||||
}
|
||||
],
|
||||
"name": null
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"warning_level": "green",
|
||||
"name": "WINNT 5.1 opt",
|
||||
"groups": [
|
||||
{
|
||||
"symbol": null,
|
||||
"jobs": [
|
||||
{
|
||||
"submit_timestamp": 1377293390,
|
||||
"machine_name": "t-xp32-ix-115",
|
||||
"job_type_description": "fill me",
|
||||
"result_set_id": 11,
|
||||
"result": "success",
|
||||
"machine_platform_architecture": "x86",
|
||||
"end_timestamp": 1377293871,
|
||||
"build_platform": "WINNT 5.1",
|
||||
"machine_platform_os": "win",
|
||||
"job_id": 163,
|
||||
"job_type_name": "jetpack",
|
||||
"platform": "WINNT 5.1",
|
||||
"state": "finished",
|
||||
"build_os": "win",
|
||||
"who": "sendchange-unittest",
|
||||
"option_collection_hash": "102210fe594ee9b33d82058545b1ed14f4c8206e",
|
||||
"job_type_symbol": "JP",
|
||||
"reason": "scheduler",
|
||||
"job_group_description": null,
|
||||
"job_guid": "2967fc9e8c8bae06174d29501e63fbca6856f6fb",
|
||||
"start_timestamp": 1377318663,
|
||||
"build_architecture": "x86",
|
||||
"build_platform_id": 6,
|
||||
"resource_uri": "/api/project/mozilla-inbound/jobs/163/"
|
||||
}
|
||||
],
|
||||
"name": null
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"push_timestamp": 1377292891,
|
||||
"id": 11,
|
||||
"revision": "c619171e0070"
|
||||
|
||||
}
|
|
@ -0,0 +1,89 @@
|
|||
{
|
||||
|
||||
"repository_id": 2,
|
||||
"revision_hash": "a91254227216fda2772c8d2c2cb772cbbadafc46",
|
||||
"author": "gabadie@mozilla.com",
|
||||
"comments": "bug 908662 - [WebGL 2.0] refactor WebIDL - r=jgilbert",
|
||||
"platforms": [
|
||||
{
|
||||
"warning_level": "green",
|
||||
"name": "OS X 10.6 opt",
|
||||
"groups": [
|
||||
{
|
||||
"symbol": "B",
|
||||
"jobs": [
|
||||
{
|
||||
"submit_timestamp": 1377290578,
|
||||
"machine_name": "bld-lion-r5-059",
|
||||
"job_type_description": "fill me",
|
||||
"result_set_id": 13,
|
||||
"result": "success",
|
||||
"machine_platform_architecture": "x86_64",
|
||||
"end_timestamp": 1377293713,
|
||||
"build_platform": "OS X 10.6",
|
||||
"machine_platform_os": "mac",
|
||||
"job_id": 120,
|
||||
"job_type_name": "build",
|
||||
"platform": "OS X 10.6",
|
||||
"state": "finished",
|
||||
"build_os": "mac",
|
||||
"who": "gabadie@mozilla.com",
|
||||
"option_collection_hash": "102210fe594ee9b33d82058545b1ed14f4c8206e",
|
||||
"job_type_symbol": "B",
|
||||
"reason": "scheduler",
|
||||
"job_group_description": "",
|
||||
"job_guid": "7022420dc230f3e6f2fa6c56fab30352994a30e5",
|
||||
"start_timestamp": 1377315800,
|
||||
"build_architecture": "x86_64",
|
||||
"build_platform_id": 4,
|
||||
"resource_uri": "/api/project/mozilla-inbound/jobs/120/"
|
||||
}
|
||||
],
|
||||
"name": "build"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"warning_level": "green",
|
||||
"name": "gecko opt",
|
||||
"groups": [
|
||||
{
|
||||
"symbol": "B",
|
||||
"jobs": [
|
||||
{
|
||||
"submit_timestamp": 1377290578,
|
||||
"machine_name": "bld-linux64-ec2-101",
|
||||
"job_type_description": "fill me",
|
||||
"result_set_id": 13,
|
||||
"result": "success",
|
||||
"machine_platform_architecture": "ARMv7",
|
||||
"end_timestamp": 1377294006,
|
||||
"build_platform": "gecko",
|
||||
"machine_platform_os": "linux",
|
||||
"job_id": 216,
|
||||
"job_type_name": "build",
|
||||
"platform": "gecko",
|
||||
"state": "finished",
|
||||
"build_os": "linux",
|
||||
"who": "gabadie@mozilla.com",
|
||||
"option_collection_hash": "102210fe594ee9b33d82058545b1ed14f4c8206e",
|
||||
"job_type_symbol": "B",
|
||||
"reason": "scheduler",
|
||||
"job_group_description": "",
|
||||
"job_guid": "9734a09f61320f5216f6ecc753795d95d4a5d8e6",
|
||||
"start_timestamp": 1377315799,
|
||||
"build_architecture": "ARMv7",
|
||||
"build_platform_id": 10,
|
||||
"resource_uri": "/api/project/mozilla-inbound/jobs/216/"
|
||||
}
|
||||
],
|
||||
"name": "build"
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"push_timestamp": 1377290520,
|
||||
"id": 13,
|
||||
"revision": "b44c22c84132502664dcb52e2b1a737aa09e6fd0"
|
||||
|
||||
}
|
|
@ -0,0 +1,89 @@
|
|||
{
|
||||
|
||||
"repository_id": 2,
|
||||
"revision_hash": "0e9748a6326feaa6994f80d3fd8765ef050abb43",
|
||||
"author": "sendchange-unittest",
|
||||
"comments": "Bug 908644 - Add a global result summary to cppunittest output_r=ted",
|
||||
"platforms": [
|
||||
{
|
||||
"warning_level": "green",
|
||||
"name": "OS X 10.6 debug",
|
||||
"groups": [
|
||||
{
|
||||
"symbol": null,
|
||||
"jobs": [
|
||||
{
|
||||
"submit_timestamp": 1377291600,
|
||||
"machine_name": "talos-r4-snow-068",
|
||||
"job_type_description": "fill me",
|
||||
"result_set_id": 14,
|
||||
"result": "success",
|
||||
"machine_platform_architecture": "x86_64",
|
||||
"end_timestamp": 1377293844,
|
||||
"build_platform": "OS X 10.6",
|
||||
"machine_platform_os": "mac",
|
||||
"job_id": 153,
|
||||
"job_type_name": "jetpack",
|
||||
"platform": "OS X 10.6",
|
||||
"state": "finished",
|
||||
"build_os": "mac",
|
||||
"who": "sendchange-unittest",
|
||||
"option_collection_hash": "32faaecac742100f7753f0c1d0aa0add01b4046b",
|
||||
"job_type_symbol": "JP",
|
||||
"reason": "scheduler",
|
||||
"job_group_description": null,
|
||||
"job_guid": "3f49add77813cd8e7a0d7e455197ba6d20353552",
|
||||
"start_timestamp": 1377317554,
|
||||
"build_architecture": "x86_64",
|
||||
"build_platform_id": 4,
|
||||
"resource_uri": "/api/project/mozilla-inbound/jobs/153/"
|
||||
}
|
||||
],
|
||||
"name": null
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"warning_level": "green",
|
||||
"name": "OS X 10.8 debug",
|
||||
"groups": [
|
||||
{
|
||||
"symbol": null,
|
||||
"jobs": [
|
||||
{
|
||||
"submit_timestamp": 1377291959,
|
||||
"machine_name": "talos-mtnlion-r5-020",
|
||||
"job_type_description": "fill me",
|
||||
"result_set_id": 14,
|
||||
"result": "success",
|
||||
"machine_platform_architecture": "x86_64",
|
||||
"end_timestamp": 1377294051,
|
||||
"build_platform": "OS X 10.8",
|
||||
"machine_platform_os": "mac",
|
||||
"job_id": 228,
|
||||
"job_type_name": "jetpack",
|
||||
"platform": "OS X 10.8",
|
||||
"state": "finished",
|
||||
"build_os": "mac",
|
||||
"who": "sendchange-unittest",
|
||||
"option_collection_hash": "32faaecac742100f7753f0c1d0aa0add01b4046b",
|
||||
"job_type_symbol": "JP",
|
||||
"reason": "scheduler",
|
||||
"job_group_description": null,
|
||||
"job_guid": "5da67576b5b081689383a11580e914fc277ae8d7",
|
||||
"start_timestamp": 1377317982,
|
||||
"build_architecture": "x86_64",
|
||||
"build_platform_id": 7,
|
||||
"resource_uri": "/api/project/mozilla-inbound/jobs/228/"
|
||||
}
|
||||
],
|
||||
"name": null
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"push_timestamp": 1377291560,
|
||||
"id": 14,
|
||||
"revision": "be4a241c1cf3"
|
||||
|
||||
}
|
|
@ -0,0 +1,51 @@
|
|||
{
|
||||
|
||||
"repository_id": 2,
|
||||
"revision_hash": "25b6841ee6e4223e3a32011e324e2fba2cc96ae2",
|
||||
"author": "sendchange",
|
||||
"comments": "Bug 908724 - Avoid #including nsPresContext.h in nsIScrollableFrame.h_ r=mats",
|
||||
"platforms": [
|
||||
{
|
||||
"warning_level": "green",
|
||||
"name": "2.2 opt",
|
||||
"groups": [
|
||||
{
|
||||
"symbol": "T",
|
||||
"jobs": [
|
||||
{
|
||||
"submit_timestamp": 1377293098,
|
||||
"machine_name": "tegra-089",
|
||||
"job_type_description": "fill me",
|
||||
"result_set_id": 17,
|
||||
"result": "success",
|
||||
"machine_platform_architecture": "ARMv7",
|
||||
"end_timestamp": 1377294196,
|
||||
"build_platform": "2.2",
|
||||
"machine_platform_os": "android",
|
||||
"job_id": 271,
|
||||
"job_type_name": "remote-ts",
|
||||
"platform": "2.2",
|
||||
"state": "finished",
|
||||
"build_os": "android",
|
||||
"who": "sendchange",
|
||||
"option_collection_hash": "102210fe594ee9b33d82058545b1ed14f4c8206e",
|
||||
"job_type_symbol": "ts",
|
||||
"reason": "scheduler",
|
||||
"job_group_description": "",
|
||||
"job_guid": "d67e6c7fa903dd8ccec32c8f3a9566d2cfaf7d88",
|
||||
"start_timestamp": 1377318762,
|
||||
"build_architecture": "ARMv7",
|
||||
"build_platform_id": 1,
|
||||
"resource_uri": "/api/project/mozilla-inbound/jobs/271/"
|
||||
}
|
||||
],
|
||||
"name": "talos"
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"push_timestamp": 1377293081,
|
||||
"id": 17,
|
||||
"revision": "481ba42bbc8a"
|
||||
|
||||
}
|
|
@ -0,0 +1,769 @@
|
|||
{
|
||||
|
||||
"repository_id": 2,
|
||||
"revision_hash": "13d728cc21866e4da424bd90a7ec9927f82452b5",
|
||||
"author": "sendchange",
|
||||
"comments": "Backed out changesets aed22a2d8353 and c61fe8e1f887 (bug 908006) for OSX reftest failures.",
|
||||
"platforms": [
|
||||
{
|
||||
"warning_level": "green",
|
||||
"name": "2.2 opt",
|
||||
"groups": [
|
||||
{
|
||||
"symbol": null,
|
||||
"jobs": [
|
||||
{
|
||||
"submit_timestamp": 1377291292,
|
||||
"machine_name": "tegra-216",
|
||||
"job_type_description": "fill me",
|
||||
"result_set_id": 2,
|
||||
"result": "success",
|
||||
"machine_platform_architecture": "ARMv7",
|
||||
"end_timestamp": 1377293631,
|
||||
"build_platform": "2.2",
|
||||
"machine_platform_os": "android",
|
||||
"job_id": 93,
|
||||
"job_type_name": "xpcshell",
|
||||
"platform": "2.2",
|
||||
"state": "finished",
|
||||
"build_os": "android",
|
||||
"who": "sendchange-unittest",
|
||||
"option_collection_hash": "102210fe594ee9b33d82058545b1ed14f4c8206e",
|
||||
"job_type_symbol": "X",
|
||||
"reason": "scheduler",
|
||||
"job_group_description": null,
|
||||
"job_guid": "978c970d7bc175ddfcc97b4bcee5dcd4ed239bc8",
|
||||
"start_timestamp": 1377317540,
|
||||
"build_architecture": "ARMv7",
|
||||
"build_platform_id": 1,
|
||||
"resource_uri": "/api/project/mozilla-inbound/jobs/93/"
|
||||
}
|
||||
],
|
||||
"name": null
|
||||
},
|
||||
{
|
||||
"symbol": "M",
|
||||
"jobs": [
|
||||
{
|
||||
"submit_timestamp": 1377291292,
|
||||
"machine_name": "tegra-257",
|
||||
"job_type_description": "fill me",
|
||||
"result_set_id": 2,
|
||||
"result": "success",
|
||||
"machine_platform_architecture": "ARMv7",
|
||||
"end_timestamp": 1377293464,
|
||||
"build_platform": "2.2",
|
||||
"machine_platform_os": "android",
|
||||
"job_id": 28,
|
||||
"job_type_name": "mochitest-1",
|
||||
"platform": "2.2",
|
||||
"state": "finished",
|
||||
"build_os": "android",
|
||||
"who": "sendchange-unittest",
|
||||
"option_collection_hash": "102210fe594ee9b33d82058545b1ed14f4c8206e",
|
||||
"job_type_symbol": "1",
|
||||
"reason": "scheduler",
|
||||
"job_group_description": "",
|
||||
"job_guid": "511d0743c1fbe2302562a9aed950c4b68042a0cf",
|
||||
"start_timestamp": 1377317651,
|
||||
"build_architecture": "ARMv7",
|
||||
"build_platform_id": 1,
|
||||
"resource_uri": "/api/project/mozilla-inbound/jobs/28/"
|
||||
},
|
||||
{
|
||||
"submit_timestamp": 1377292078,
|
||||
"machine_name": "tegra-255",
|
||||
"job_type_description": "fill me",
|
||||
"result_set_id": 2,
|
||||
"result": "success",
|
||||
"machine_platform_architecture": "ARMv7",
|
||||
"end_timestamp": 1377293803,
|
||||
"build_platform": "2.2",
|
||||
"machine_platform_os": "android",
|
||||
"job_id": 143,
|
||||
"job_type_name": "mochitest-1",
|
||||
"platform": "2.2",
|
||||
"state": "finished",
|
||||
"build_os": "android",
|
||||
"who": "sendchange-unittest",
|
||||
"option_collection_hash": "102210fe594ee9b33d82058545b1ed14f4c8206e",
|
||||
"job_type_symbol": "1",
|
||||
"reason": "scheduler",
|
||||
"job_group_description": "",
|
||||
"job_guid": "543e3ddd9a3d6a9df1e5aa14a9977be2d4bb6acb",
|
||||
"start_timestamp": 1377317955,
|
||||
"build_architecture": "ARMv7",
|
||||
"build_platform_id": 1,
|
||||
"resource_uri": "/api/project/mozilla-inbound/jobs/143/"
|
||||
},
|
||||
{
|
||||
"submit_timestamp": 1377291292,
|
||||
"machine_name": "tegra-277",
|
||||
"job_type_description": "fill me",
|
||||
"result_set_id": 2,
|
||||
"result": "success",
|
||||
"machine_platform_architecture": "ARMv7",
|
||||
"end_timestamp": 1377294183,
|
||||
"build_platform": "2.2",
|
||||
"machine_platform_os": "android",
|
||||
"job_id": 266,
|
||||
"job_type_name": "mochitest-2",
|
||||
"platform": "2.2",
|
||||
"state": "finished",
|
||||
"build_os": "android",
|
||||
"who": "sendchange-unittest",
|
||||
"option_collection_hash": "102210fe594ee9b33d82058545b1ed14f4c8206e",
|
||||
"job_type_symbol": "2",
|
||||
"reason": "scheduler",
|
||||
"job_group_description": "",
|
||||
"job_guid": "285a2d625835a6af244df765f3bc39249b52b010",
|
||||
"start_timestamp": 1377317554,
|
||||
"build_architecture": "ARMv7",
|
||||
"build_platform_id": 1,
|
||||
"resource_uri": "/api/project/mozilla-inbound/jobs/266/"
|
||||
},
|
||||
{
|
||||
"submit_timestamp": 1377291292,
|
||||
"machine_name": "tegra-105",
|
||||
"job_type_description": "fill me",
|
||||
"result_set_id": 2,
|
||||
"result": "success",
|
||||
"machine_platform_architecture": "ARMv7",
|
||||
"end_timestamp": 1377293512,
|
||||
"build_platform": "2.2",
|
||||
"machine_platform_os": "android",
|
||||
"job_id": 50,
|
||||
"job_type_name": "mochitest-3",
|
||||
"platform": "2.2",
|
||||
"state": "finished",
|
||||
"build_os": "android",
|
||||
"who": "sendchange-unittest",
|
||||
"option_collection_hash": "102210fe594ee9b33d82058545b1ed14f4c8206e",
|
||||
"job_type_symbol": "3",
|
||||
"reason": "scheduler",
|
||||
"job_group_description": "",
|
||||
"job_guid": "922fe6da290c650cdd05ce2baced9acb427090ca",
|
||||
"start_timestamp": 1377317543,
|
||||
"build_architecture": "ARMv7",
|
||||
"build_platform_id": 1,
|
||||
"resource_uri": "/api/project/mozilla-inbound/jobs/50/"
|
||||
},
|
||||
{
|
||||
"submit_timestamp": 1377291292,
|
||||
"machine_name": "tegra-112",
|
||||
"job_type_description": "fill me",
|
||||
"result_set_id": 2,
|
||||
"result": "success",
|
||||
"machine_platform_architecture": "ARMv7",
|
||||
"end_timestamp": 1377293441,
|
||||
"build_platform": "2.2",
|
||||
"machine_platform_os": "android",
|
||||
"job_id": 22,
|
||||
"job_type_name": "mochitest-4",
|
||||
"platform": "2.2",
|
||||
"state": "finished",
|
||||
"build_os": "android",
|
||||
"who": "sendchange-unittest",
|
||||
"option_collection_hash": "102210fe594ee9b33d82058545b1ed14f4c8206e",
|
||||
"job_type_symbol": "4",
|
||||
"reason": "scheduler",
|
||||
"job_group_description": "",
|
||||
"job_guid": "c76a56a4d39323d39cfedc2ba3a5bd2e6d3b5238",
|
||||
"start_timestamp": 1377317544,
|
||||
"build_architecture": "ARMv7",
|
||||
"build_platform_id": 1,
|
||||
"resource_uri": "/api/project/mozilla-inbound/jobs/22/"
|
||||
},
|
||||
{
|
||||
"submit_timestamp": 1377292078,
|
||||
"machine_name": "tegra-117",
|
||||
"job_type_description": "fill me",
|
||||
"result_set_id": 2,
|
||||
"result": "success",
|
||||
"machine_platform_architecture": "ARMv7",
|
||||
"end_timestamp": 1377294207,
|
||||
"build_platform": "2.2",
|
||||
"machine_platform_os": "android",
|
||||
"job_id": 275,
|
||||
"job_type_name": "mochitest-4",
|
||||
"platform": "2.2",
|
||||
"state": "finished",
|
||||
"build_os": "android",
|
||||
"who": "sendchange-unittest",
|
||||
"option_collection_hash": "102210fe594ee9b33d82058545b1ed14f4c8206e",
|
||||
"job_type_symbol": "4",
|
||||
"reason": "scheduler",
|
||||
"job_group_description": "",
|
||||
"job_guid": "533c15c161d9d4b9f129f9fcfc5282dc67755ef5",
|
||||
"start_timestamp": 1377318157,
|
||||
"build_architecture": "ARMv7",
|
||||
"build_platform_id": 1,
|
||||
"resource_uri": "/api/project/mozilla-inbound/jobs/275/"
|
||||
},
|
||||
{
|
||||
"submit_timestamp": 1377291292,
|
||||
"machine_name": "tegra-253",
|
||||
"job_type_description": "fill me",
|
||||
"result_set_id": 2,
|
||||
"result": "success",
|
||||
"machine_platform_architecture": "ARMv7",
|
||||
"end_timestamp": 1377293413,
|
||||
"build_platform": "2.2",
|
||||
"machine_platform_os": "android",
|
||||
"job_id": 15,
|
||||
"job_type_name": "mochitest-5",
|
||||
"platform": "2.2",
|
||||
"state": "finished",
|
||||
"build_os": "android",
|
||||
"who": "sendchange-unittest",
|
||||
"option_collection_hash": "102210fe594ee9b33d82058545b1ed14f4c8206e",
|
||||
"job_type_symbol": "5",
|
||||
"reason": "scheduler",
|
||||
"job_group_description": "",
|
||||
"job_guid": "930c90bd2f062a0cd07736a3583015cc5f428c79",
|
||||
"start_timestamp": 1377317676,
|
||||
"build_architecture": "ARMv7",
|
||||
"build_platform_id": 1,
|
||||
"resource_uri": "/api/project/mozilla-inbound/jobs/15/"
|
||||
},
|
||||
{
|
||||
"submit_timestamp": 1377292078,
|
||||
"machine_name": "tegra-209",
|
||||
"job_type_description": "fill me",
|
||||
"result_set_id": 2,
|
||||
"result": "success",
|
||||
"machine_platform_architecture": "ARMv7",
|
||||
"end_timestamp": 1377293931,
|
||||
"build_platform": "2.2",
|
||||
"machine_platform_os": "android",
|
||||
"job_id": 187,
|
||||
"job_type_name": "mochitest-6",
|
||||
"platform": "2.2",
|
||||
"state": "finished",
|
||||
"build_os": "android",
|
||||
"who": "sendchange-unittest",
|
||||
"option_collection_hash": "102210fe594ee9b33d82058545b1ed14f4c8206e",
|
||||
"job_type_symbol": "6",
|
||||
"reason": "scheduler",
|
||||
"job_group_description": "",
|
||||
"job_guid": "47d47766d5f448e8b69e028f55c59093663dd81a",
|
||||
"start_timestamp": 1377318138,
|
||||
"build_architecture": "ARMv7",
|
||||
"build_platform_id": 1,
|
||||
"resource_uri": "/api/project/mozilla-inbound/jobs/187/"
|
||||
},
|
||||
{
|
||||
"submit_timestamp": 1377291292,
|
||||
"machine_name": "tegra-041",
|
||||
"job_type_description": "fill me",
|
||||
"result_set_id": 2,
|
||||
"result": "success",
|
||||
"machine_platform_architecture": "ARMv7",
|
||||
"end_timestamp": 1377293613,
|
||||
"build_platform": "2.2",
|
||||
"machine_platform_os": "android",
|
||||
"job_id": 89,
|
||||
"job_type_name": "mochitest-7",
|
||||
"platform": "2.2",
|
||||
"state": "finished",
|
||||
"build_os": "android",
|
||||
"who": "sendchange-unittest",
|
||||
"option_collection_hash": "102210fe594ee9b33d82058545b1ed14f4c8206e",
|
||||
"job_type_symbol": "7",
|
||||
"reason": "scheduler",
|
||||
"job_group_description": "",
|
||||
"job_guid": "94dd53653b35f10411edc3ce3a4d7164138baf94",
|
||||
"start_timestamp": 1377317554,
|
||||
"build_architecture": "ARMv7",
|
||||
"build_platform_id": 1,
|
||||
"resource_uri": "/api/project/mozilla-inbound/jobs/89/"
|
||||
},
|
||||
{
|
||||
"submit_timestamp": 1377292078,
|
||||
"machine_name": "tegra-258",
|
||||
"job_type_description": "fill me",
|
||||
"result_set_id": 2,
|
||||
"result": "success",
|
||||
"machine_platform_architecture": "ARMv7",
|
||||
"end_timestamp": 1377293678,
|
||||
"build_platform": "2.2",
|
||||
"machine_platform_os": "android",
|
||||
"job_id": 108,
|
||||
"job_type_name": "mochitest-7",
|
||||
"platform": "2.2",
|
||||
"state": "finished",
|
||||
"build_os": "android",
|
||||
"who": "sendchange-unittest",
|
||||
"option_collection_hash": "102210fe594ee9b33d82058545b1ed14f4c8206e",
|
||||
"job_type_symbol": "7",
|
||||
"reason": "scheduler",
|
||||
"job_group_description": "",
|
||||
"job_guid": "19c8e45b31a8a0bd624f0b6e553f028e49386660",
|
||||
"start_timestamp": 1377317857,
|
||||
"build_architecture": "ARMv7",
|
||||
"build_platform_id": 1,
|
||||
"resource_uri": "/api/project/mozilla-inbound/jobs/108/"
|
||||
},
|
||||
{
|
||||
"submit_timestamp": 1377291292,
|
||||
"machine_name": "tegra-090",
|
||||
"job_type_description": "fill me",
|
||||
"result_set_id": 2,
|
||||
"result": "success",
|
||||
"machine_platform_architecture": "ARMv7",
|
||||
"end_timestamp": 1377293478,
|
||||
"build_platform": "2.2",
|
||||
"machine_platform_os": "android",
|
||||
"job_id": 34,
|
||||
"job_type_name": "mochitest-8",
|
||||
"platform": "2.2",
|
||||
"state": "finished",
|
||||
"build_os": "android",
|
||||
"who": "sendchange-unittest",
|
||||
"option_collection_hash": "102210fe594ee9b33d82058545b1ed14f4c8206e",
|
||||
"job_type_symbol": "8",
|
||||
"reason": "scheduler",
|
||||
"job_group_description": "",
|
||||
"job_guid": "d113c6cead3ca291c3c82b2f1656071b4bcd47ef",
|
||||
"start_timestamp": 1377317556,
|
||||
"build_architecture": "ARMv7",
|
||||
"build_platform_id": 1,
|
||||
"resource_uri": "/api/project/mozilla-inbound/jobs/34/"
|
||||
},
|
||||
{
|
||||
"submit_timestamp": 1377292078,
|
||||
"machine_name": "tegra-252",
|
||||
"job_type_description": "fill me",
|
||||
"result_set_id": 2,
|
||||
"result": "success",
|
||||
"machine_platform_architecture": "ARMv7",
|
||||
"end_timestamp": 1377293733,
|
||||
"build_platform": "2.2",
|
||||
"machine_platform_os": "android",
|
||||
"job_id": 126,
|
||||
"job_type_name": "mochitest-8",
|
||||
"platform": "2.2",
|
||||
"state": "finished",
|
||||
"build_os": "android",
|
||||
"who": "sendchange-unittest",
|
||||
"option_collection_hash": "102210fe594ee9b33d82058545b1ed14f4c8206e",
|
||||
"job_type_symbol": "8",
|
||||
"reason": "scheduler",
|
||||
"job_group_description": "",
|
||||
"job_guid": "5619f65b28f589d40b8b652d9509c426d75465eb",
|
||||
"start_timestamp": 1377317857,
|
||||
"build_architecture": "ARMv7",
|
||||
"build_platform_id": 1,
|
||||
"resource_uri": "/api/project/mozilla-inbound/jobs/126/"
|
||||
},
|
||||
{
|
||||
"submit_timestamp": 1377291292,
|
||||
"machine_name": "tegra-173",
|
||||
"job_type_description": "fill me",
|
||||
"result_set_id": 2,
|
||||
"result": "success",
|
||||
"machine_platform_architecture": "ARMv7",
|
||||
"end_timestamp": 1377294063,
|
||||
"build_platform": "2.2",
|
||||
"machine_platform_os": "android",
|
||||
"job_id": 234,
|
||||
"job_type_name": "robocop-1",
|
||||
"platform": "2.2",
|
||||
"state": "finished",
|
||||
"build_os": "android",
|
||||
"who": "sendchange-unittest",
|
||||
"option_collection_hash": "102210fe594ee9b33d82058545b1ed14f4c8206e",
|
||||
"job_type_symbol": "rc1",
|
||||
"reason": "scheduler",
|
||||
"job_group_description": "",
|
||||
"job_guid": "b5d9c3d83c55acbb64c31501c29d3e4280776a84",
|
||||
"start_timestamp": 1377317663,
|
||||
"build_architecture": "ARMv7",
|
||||
"build_platform_id": 1,
|
||||
"resource_uri": "/api/project/mozilla-inbound/jobs/234/"
|
||||
},
|
||||
{
|
||||
"submit_timestamp": 1377292078,
|
||||
"machine_name": "tegra-182",
|
||||
"job_type_description": "fill me",
|
||||
"result_set_id": 2,
|
||||
"result": "success",
|
||||
"machine_platform_architecture": "ARMv7",
|
||||
"end_timestamp": 1377294148,
|
||||
"build_platform": "2.2",
|
||||
"machine_platform_os": "android",
|
||||
"job_id": 255,
|
||||
"job_type_name": "robocop-1",
|
||||
"platform": "2.2",
|
||||
"state": "finished",
|
||||
"build_os": "android",
|
||||
"who": "sendchange-unittest",
|
||||
"option_collection_hash": "102210fe594ee9b33d82058545b1ed14f4c8206e",
|
||||
"job_type_symbol": "rc1",
|
||||
"reason": "scheduler",
|
||||
"job_group_description": "",
|
||||
"job_guid": "58608e67ac84252aabd70719b62bd8a2ffef89c9",
|
||||
"start_timestamp": 1377318157,
|
||||
"build_architecture": "ARMv7",
|
||||
"build_platform_id": 1,
|
||||
"resource_uri": "/api/project/mozilla-inbound/jobs/255/"
|
||||
}
|
||||
],
|
||||
"name": "mochitest"
|
||||
},
|
||||
{
|
||||
"symbol": "R",
|
||||
"jobs": [
|
||||
{
|
||||
"submit_timestamp": 1377291292,
|
||||
"machine_name": "tegra-164",
|
||||
"job_type_description": "fill me",
|
||||
"result_set_id": 2,
|
||||
"result": "success",
|
||||
"machine_platform_architecture": "ARMv7",
|
||||
"end_timestamp": 1377293501,
|
||||
"build_platform": "2.2",
|
||||
"machine_platform_os": "android",
|
||||
"job_id": 44,
|
||||
"job_type_name": "crashtest",
|
||||
"platform": "2.2",
|
||||
"state": "finished",
|
||||
"build_os": "android",
|
||||
"who": "sendchange-unittest",
|
||||
"option_collection_hash": "102210fe594ee9b33d82058545b1ed14f4c8206e",
|
||||
"job_type_symbol": "C",
|
||||
"reason": "scheduler",
|
||||
"job_group_description": "",
|
||||
"job_guid": "d63119b4305369f58a56b6d4a2df0b6a410e4a19",
|
||||
"start_timestamp": 1377317536,
|
||||
"build_architecture": "ARMv7",
|
||||
"build_platform_id": 1,
|
||||
"resource_uri": "/api/project/mozilla-inbound/jobs/44/"
|
||||
},
|
||||
{
|
||||
"submit_timestamp": 1377292078,
|
||||
"machine_name": "tegra-283",
|
||||
"job_type_description": "fill me",
|
||||
"result_set_id": 2,
|
||||
"result": "success",
|
||||
"machine_platform_architecture": "ARMv7",
|
||||
"end_timestamp": 1377293890,
|
||||
"build_platform": "2.2",
|
||||
"machine_platform_os": "android",
|
||||
"job_id": 171,
|
||||
"job_type_name": "crashtest",
|
||||
"platform": "2.2",
|
||||
"state": "finished",
|
||||
"build_os": "android",
|
||||
"who": "sendchange-unittest",
|
||||
"option_collection_hash": "102210fe594ee9b33d82058545b1ed14f4c8206e",
|
||||
"job_type_symbol": "C",
|
||||
"reason": "scheduler",
|
||||
"job_group_description": "",
|
||||
"job_guid": "01e5a23c6a71a0d0b4c0ecad318360916e3c63c0",
|
||||
"start_timestamp": 1377317953,
|
||||
"build_architecture": "ARMv7",
|
||||
"build_platform_id": 1,
|
||||
"resource_uri": "/api/project/mozilla-inbound/jobs/171/"
|
||||
},
|
||||
{
|
||||
"submit_timestamp": 1377291292,
|
||||
"machine_name": "tegra-244",
|
||||
"job_type_description": "fill me",
|
||||
"result_set_id": 2,
|
||||
"result": "success",
|
||||
"machine_platform_architecture": "ARMv7",
|
||||
"end_timestamp": 1377293969,
|
||||
"build_platform": "2.2",
|
||||
"machine_platform_os": "android",
|
||||
"job_id": 201,
|
||||
"job_type_name": "jsreftest-1",
|
||||
"platform": "2.2",
|
||||
"state": "finished",
|
||||
"build_os": "android",
|
||||
"who": "sendchange-unittest",
|
||||
"option_collection_hash": "102210fe594ee9b33d82058545b1ed14f4c8206e",
|
||||
"job_type_symbol": "J1",
|
||||
"reason": "scheduler",
|
||||
"job_group_description": "",
|
||||
"job_guid": "bc78da4666d44eac11302e21930904bf30468f58",
|
||||
"start_timestamp": 1377317540,
|
||||
"build_architecture": "ARMv7",
|
||||
"build_platform_id": 1,
|
||||
"resource_uri": "/api/project/mozilla-inbound/jobs/201/"
|
||||
},
|
||||
{
|
||||
"submit_timestamp": 1377291292,
|
||||
"machine_name": "tegra-168",
|
||||
"job_type_description": "fill me",
|
||||
"result_set_id": 2,
|
||||
"result": "success",
|
||||
"machine_platform_architecture": "ARMv7",
|
||||
"end_timestamp": 1377294008,
|
||||
"build_platform": "2.2",
|
||||
"machine_platform_os": "android",
|
||||
"job_id": 218,
|
||||
"job_type_name": "jsreftest-2",
|
||||
"platform": "2.2",
|
||||
"state": "finished",
|
||||
"build_os": "android",
|
||||
"who": "sendchange-unittest",
|
||||
"option_collection_hash": "102210fe594ee9b33d82058545b1ed14f4c8206e",
|
||||
"job_type_symbol": "J2",
|
||||
"reason": "scheduler",
|
||||
"job_group_description": "",
|
||||
"job_guid": "068d956de2111f4e1fcfd8044152da3795ebd219",
|
||||
"start_timestamp": 1377317547,
|
||||
"build_architecture": "ARMv7",
|
||||
"build_platform_id": 1,
|
||||
"resource_uri": "/api/project/mozilla-inbound/jobs/218/"
|
||||
}
|
||||
],
|
||||
"name": "reftest"
|
||||
},
|
||||
{
|
||||
"symbol": "T",
|
||||
"jobs": [
|
||||
{
|
||||
"submit_timestamp": 1377291295,
|
||||
"machine_name": "tegra-247",
|
||||
"job_type_description": "fill me",
|
||||
"result_set_id": 2,
|
||||
"result": "success",
|
||||
"machine_platform_architecture": "ARMv7",
|
||||
"end_timestamp": 1377293579,
|
||||
"build_platform": "2.2",
|
||||
"machine_platform_os": "android",
|
||||
"job_id": 76,
|
||||
"job_type_name": "remote-trobocheck2",
|
||||
"platform": "2.2",
|
||||
"state": "finished",
|
||||
"build_os": "android",
|
||||
"who": "sendchange",
|
||||
"option_collection_hash": "102210fe594ee9b33d82058545b1ed14f4c8206e",
|
||||
"job_type_symbol": "rck2",
|
||||
"reason": "scheduler",
|
||||
"job_group_description": "",
|
||||
"job_guid": "7c3015cbe5cb5f373e9fadd27fd42b1b5fb6d323",
|
||||
"start_timestamp": 1377317847,
|
||||
"build_architecture": "ARMv7",
|
||||
"build_platform_id": 1,
|
||||
"resource_uri": "/api/project/mozilla-inbound/jobs/76/"
|
||||
},
|
||||
{
|
||||
"submit_timestamp": 1377291295,
|
||||
"machine_name": "tegra-148",
|
||||
"job_type_description": "fill me",
|
||||
"result_set_id": 2,
|
||||
"result": "success",
|
||||
"machine_platform_architecture": "ARMv7",
|
||||
"end_timestamp": 1377293563,
|
||||
"build_platform": "2.2",
|
||||
"machine_platform_os": "android",
|
||||
"job_id": 67,
|
||||
"job_type_name": "remote-trobopan",
|
||||
"platform": "2.2",
|
||||
"state": "finished",
|
||||
"build_os": "android",
|
||||
"who": "sendchange",
|
||||
"option_collection_hash": "102210fe594ee9b33d82058545b1ed14f4c8206e",
|
||||
"job_type_symbol": "rp",
|
||||
"reason": "scheduler",
|
||||
"job_group_description": "",
|
||||
"job_guid": "8762bd926fdd529689f8947b5a9e7fec698e55df",
|
||||
"start_timestamp": 1377317841,
|
||||
"build_architecture": "ARMv7",
|
||||
"build_platform_id": 1,
|
||||
"resource_uri": "/api/project/mozilla-inbound/jobs/67/"
|
||||
},
|
||||
{
|
||||
"submit_timestamp": 1377291295,
|
||||
"machine_name": "tegra-066",
|
||||
"job_type_description": "fill me",
|
||||
"result_set_id": 2,
|
||||
"result": "success",
|
||||
"machine_platform_architecture": "ARMv7",
|
||||
"end_timestamp": 1377293859,
|
||||
"build_platform": "2.2",
|
||||
"machine_platform_os": "android",
|
||||
"job_id": 158,
|
||||
"job_type_name": "remote-troboprovider",
|
||||
"platform": "2.2",
|
||||
"state": "finished",
|
||||
"build_os": "android",
|
||||
"who": "sendchange",
|
||||
"option_collection_hash": "102210fe594ee9b33d82058545b1ed14f4c8206e",
|
||||
"job_type_symbol": "rpr",
|
||||
"reason": "scheduler",
|
||||
"job_group_description": "",
|
||||
"job_guid": "bed165c4407653732b81edd6c905c30878c52519",
|
||||
"start_timestamp": 1377317841,
|
||||
"build_architecture": "ARMv7",
|
||||
"build_platform_id": 1,
|
||||
"resource_uri": "/api/project/mozilla-inbound/jobs/158/"
|
||||
},
|
||||
{
|
||||
"submit_timestamp": 1377291295,
|
||||
"machine_name": "tegra-136",
|
||||
"job_type_description": "fill me",
|
||||
"result_set_id": 2,
|
||||
"result": "success",
|
||||
"machine_platform_architecture": "ARMv7",
|
||||
"end_timestamp": 1377293409,
|
||||
"build_platform": "2.2",
|
||||
"machine_platform_os": "android",
|
||||
"job_id": 12,
|
||||
"job_type_name": "remote-tsvg",
|
||||
"platform": "2.2",
|
||||
"state": "finished",
|
||||
"build_os": "android",
|
||||
"who": "sendchange",
|
||||
"option_collection_hash": "102210fe594ee9b33d82058545b1ed14f4c8206e",
|
||||
"job_type_symbol": "s",
|
||||
"reason": "scheduler",
|
||||
"job_group_description": "",
|
||||
"job_guid": "a330e4549adf8e91f393e80fbc5b7af74760862e",
|
||||
"start_timestamp": 1377317848,
|
||||
"build_architecture": "ARMv7",
|
||||
"build_platform_id": 1,
|
||||
"resource_uri": "/api/project/mozilla-inbound/jobs/12/"
|
||||
},
|
||||
{
|
||||
"submit_timestamp": 1377291295,
|
||||
"machine_name": "tegra-096",
|
||||
"job_type_description": "fill me",
|
||||
"result_set_id": 2,
|
||||
"result": "success",
|
||||
"machine_platform_architecture": "ARMv7",
|
||||
"end_timestamp": 1377293377,
|
||||
"build_platform": "2.2",
|
||||
"machine_platform_os": "android",
|
||||
"job_id": 5,
|
||||
"job_type_name": "remote-ts",
|
||||
"platform": "2.2",
|
||||
"state": "finished",
|
||||
"build_os": "android",
|
||||
"who": "sendchange",
|
||||
"option_collection_hash": "102210fe594ee9b33d82058545b1ed14f4c8206e",
|
||||
"job_type_symbol": "ts",
|
||||
"reason": "scheduler",
|
||||
"job_group_description": "",
|
||||
"job_guid": "f7f3d26cdfe8413f6a58d7ed7c668c275abf9413",
|
||||
"start_timestamp": 1377317848,
|
||||
"build_architecture": "ARMv7",
|
||||
"build_platform_id": 1,
|
||||
"resource_uri": "/api/project/mozilla-inbound/jobs/5/"
|
||||
}
|
||||
],
|
||||
"name": "talos"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"warning_level": "green",
|
||||
"name": "4.0 opt",
|
||||
"groups": [
|
||||
{
|
||||
"symbol": "T",
|
||||
"jobs": [
|
||||
{
|
||||
"submit_timestamp": 1377291295,
|
||||
"machine_name": "panda-0727",
|
||||
"job_type_description": "fill me",
|
||||
"result_set_id": 2,
|
||||
"result": "success",
|
||||
"machine_platform_architecture": "x86",
|
||||
"end_timestamp": 1377293480,
|
||||
"build_platform": "4.0",
|
||||
"machine_platform_os": "android",
|
||||
"job_id": 35,
|
||||
"job_type_name": "remote-trobocheck2",
|
||||
"platform": "4.0",
|
||||
"state": "finished",
|
||||
"build_os": "android",
|
||||
"who": "sendchange",
|
||||
"option_collection_hash": "102210fe594ee9b33d82058545b1ed14f4c8206e",
|
||||
"job_type_symbol": "rck2",
|
||||
"reason": "scheduler",
|
||||
"job_group_description": "",
|
||||
"job_guid": "164ac36f912130e662ec123585a3f25ba6642d5c",
|
||||
"start_timestamp": 1377317494,
|
||||
"build_architecture": "x86",
|
||||
"build_platform_id": 12,
|
||||
"resource_uri": "/api/project/mozilla-inbound/jobs/35/"
|
||||
},
|
||||
{
|
||||
"submit_timestamp": 1377291295,
|
||||
"machine_name": "panda-0715",
|
||||
"job_type_description": "fill me",
|
||||
"result_set_id": 2,
|
||||
"result": "success",
|
||||
"machine_platform_architecture": "x86",
|
||||
"end_timestamp": 1377293412,
|
||||
"build_platform": "4.0",
|
||||
"machine_platform_os": "android",
|
||||
"job_id": 14,
|
||||
"job_type_name": "remote-troboprovider",
|
||||
"platform": "4.0",
|
||||
"state": "finished",
|
||||
"build_os": "android",
|
||||
"who": "sendchange",
|
||||
"option_collection_hash": "102210fe594ee9b33d82058545b1ed14f4c8206e",
|
||||
"job_type_symbol": "rpr",
|
||||
"reason": "scheduler",
|
||||
"job_group_description": "",
|
||||
"job_guid": "ac2f41b1c362980cb18de4950a980b8e7f83791a",
|
||||
"start_timestamp": 1377317199,
|
||||
"build_architecture": "x86",
|
||||
"build_platform_id": 12,
|
||||
"resource_uri": "/api/project/mozilla-inbound/jobs/14/"
|
||||
}
|
||||
],
|
||||
"name": "talos"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"warning_level": "green",
|
||||
"name": "OS X 10.8 opt",
|
||||
"groups": [
|
||||
{
|
||||
"symbol": null,
|
||||
"jobs": [
|
||||
{
|
||||
"submit_timestamp": 1377292253,
|
||||
"machine_name": "talos-mtnlion-r5-066",
|
||||
"job_type_description": "fill me",
|
||||
"result_set_id": 2,
|
||||
"result": "success",
|
||||
"machine_platform_architecture": "x86_64",
|
||||
"end_timestamp": 1377293574,
|
||||
"build_platform": "OS X 10.8",
|
||||
"machine_platform_os": "mac",
|
||||
"job_id": 73,
|
||||
"job_type_name": "jetpack",
|
||||
"platform": "OS X 10.8",
|
||||
"state": "finished",
|
||||
"build_os": "mac",
|
||||
"who": "sendchange-unittest",
|
||||
"option_collection_hash": "102210fe594ee9b33d82058545b1ed14f4c8206e",
|
||||
"job_type_symbol": "JP",
|
||||
"reason": "scheduler",
|
||||
"job_group_description": null,
|
||||
"job_guid": "640ad6eb7ac856aca57f8787f64a4a5562684a07",
|
||||
"start_timestamp": 1377318279,
|
||||
"build_architecture": "x86_64",
|
||||
"build_platform_id": 7,
|
||||
"resource_uri": "/api/project/mozilla-inbound/jobs/73/"
|
||||
}
|
||||
],
|
||||
"name": null
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"push_timestamp": 1377291272,
|
||||
"id": 2,
|
||||
"revision": "4d3ad5e15b8c"
|
||||
|
||||
}
|
|
@ -0,0 +1,261 @@
|
|||
{
|
||||
|
||||
"repository_id": 2,
|
||||
"revision_hash": "f6a5bb84cf67ac35d670e90810b1306b77f4c1bf",
|
||||
"author": "sendchange-unittest",
|
||||
"comments": "Backed out changesets aed22a2d8353 and c61fe8e1f887 (bug 908006) for OSX reftest failures.",
|
||||
"platforms": [
|
||||
{
|
||||
"warning_level": "green",
|
||||
"name": "2.2 opt",
|
||||
"groups": [
|
||||
{
|
||||
"symbol": "M",
|
||||
"jobs": [
|
||||
{
|
||||
"submit_timestamp": 1377292078,
|
||||
"machine_name": "tegra-363",
|
||||
"job_type_description": "fill me",
|
||||
"result_set_id": 3,
|
||||
"result": "success",
|
||||
"machine_platform_architecture": "ARMv7",
|
||||
"end_timestamp": 1377294159,
|
||||
"build_platform": "2.2",
|
||||
"machine_platform_os": "android",
|
||||
"job_id": 260,
|
||||
"job_type_name": "mochitest-5",
|
||||
"platform": "2.2",
|
||||
"state": "finished",
|
||||
"build_os": "android",
|
||||
"who": "sendchange-unittest",
|
||||
"option_collection_hash": "102210fe594ee9b33d82058545b1ed14f4c8206e",
|
||||
"job_type_symbol": "5",
|
||||
"reason": "scheduler",
|
||||
"job_group_description": "",
|
||||
"job_guid": "19e993f5b0a717185083fb9eacb2d422b36d6bd1",
|
||||
"start_timestamp": 1377318435,
|
||||
"build_architecture": "ARMv7",
|
||||
"build_platform_id": 1,
|
||||
"resource_uri": "/api/project/mozilla-inbound/jobs/260/"
|
||||
}
|
||||
],
|
||||
"name": "mochitest"
|
||||
},
|
||||
{
|
||||
"symbol": "R",
|
||||
"jobs": [
|
||||
{
|
||||
"submit_timestamp": 1377291719,
|
||||
"machine_name": "tegra-179",
|
||||
"job_type_description": "fill me",
|
||||
"result_set_id": 3,
|
||||
"result": "success",
|
||||
"machine_platform_architecture": "ARMv7",
|
||||
"end_timestamp": 1377293860,
|
||||
"build_platform": "2.2",
|
||||
"machine_platform_os": "android",
|
||||
"job_id": 160,
|
||||
"job_type_name": "jsreftest-3",
|
||||
"platform": "2.2",
|
||||
"state": "finished",
|
||||
"build_os": "android",
|
||||
"who": "sendchange-unittest",
|
||||
"option_collection_hash": "102210fe594ee9b33d82058545b1ed14f4c8206e",
|
||||
"job_type_symbol": "J3",
|
||||
"reason": "scheduler",
|
||||
"job_group_description": "",
|
||||
"job_guid": "f0fc662d19a0fee08341e8359b5f393b622bb670",
|
||||
"start_timestamp": 1377317850,
|
||||
"build_architecture": "ARMv7",
|
||||
"build_platform_id": 1,
|
||||
"resource_uri": "/api/project/mozilla-inbound/jobs/160/"
|
||||
}
|
||||
],
|
||||
"name": "reftest"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"warning_level": "red",
|
||||
"name": "4.0 opt",
|
||||
"groups": [
|
||||
{
|
||||
"symbol": "T",
|
||||
"jobs": [
|
||||
{
|
||||
"submit_timestamp": 1377293098,
|
||||
"machine_name": "panda-0725",
|
||||
"job_type_description": "fill me",
|
||||
"result_set_id": 3,
|
||||
"result": "success",
|
||||
"machine_platform_architecture": "x86",
|
||||
"end_timestamp": 1377293925,
|
||||
"build_platform": "4.0",
|
||||
"machine_platform_os": "android",
|
||||
"job_id": 185,
|
||||
"job_type_name": "remote-tp4m_nochrome",
|
||||
"platform": "4.0",
|
||||
"state": "finished",
|
||||
"build_os": "android",
|
||||
"who": "sendchange",
|
||||
"option_collection_hash": "102210fe594ee9b33d82058545b1ed14f4c8206e",
|
||||
"job_type_symbol": "tpn",
|
||||
"reason": "scheduler",
|
||||
"job_group_description": "",
|
||||
"job_guid": "f3588fc606d8a88b1c9c8b83b539ff0665f88e63",
|
||||
"start_timestamp": 1377318300,
|
||||
"build_architecture": "x86",
|
||||
"build_platform_id": 12,
|
||||
"resource_uri": "/api/project/mozilla-inbound/jobs/185/"
|
||||
},
|
||||
{
|
||||
"submit_timestamp": 1377293098,
|
||||
"machine_name": "panda-0716",
|
||||
"job_type_description": "fill me",
|
||||
"result_set_id": 3,
|
||||
"result": "busted",
|
||||
"machine_platform_architecture": "x86",
|
||||
"end_timestamp": 1377294105,
|
||||
"build_platform": "4.0",
|
||||
"machine_platform_os": "android",
|
||||
"job_id": 246,
|
||||
"job_type_name": "remote-ts",
|
||||
"platform": "4.0",
|
||||
"state": "finished",
|
||||
"build_os": "android",
|
||||
"who": "sendchange",
|
||||
"option_collection_hash": "102210fe594ee9b33d82058545b1ed14f4c8206e",
|
||||
"job_type_symbol": "ts",
|
||||
"reason": "scheduler",
|
||||
"job_group_description": "",
|
||||
"job_guid": "22ac437a5d413772a0585ad8c14e49a7a9f46a62",
|
||||
"start_timestamp": 1377318300,
|
||||
"build_architecture": "x86",
|
||||
"build_platform_id": 12,
|
||||
"resource_uri": "/api/project/mozilla-inbound/jobs/246/"
|
||||
}
|
||||
],
|
||||
"name": "talos"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"warning_level": "green",
|
||||
"name": "Rev3 WINNT 6.1 debug",
|
||||
"groups": [
|
||||
{
|
||||
"symbol": null,
|
||||
"jobs": [
|
||||
{
|
||||
"submit_timestamp": 1377292020,
|
||||
"machine_name": "t-w732-ix-089",
|
||||
"job_type_description": "fill me",
|
||||
"result_set_id": 3,
|
||||
"result": "success",
|
||||
"machine_platform_architecture": "x86",
|
||||
"end_timestamp": 1377294053,
|
||||
"build_platform": "Rev3 WINNT 6.1",
|
||||
"machine_platform_os": "win",
|
||||
"job_id": 229,
|
||||
"job_type_name": "jetpack",
|
||||
"platform": "Rev3 WINNT 6.1",
|
||||
"state": "finished",
|
||||
"build_os": "win",
|
||||
"who": "sendchange-unittest",
|
||||
"option_collection_hash": "32faaecac742100f7753f0c1d0aa0add01b4046b",
|
||||
"job_type_symbol": "JP",
|
||||
"reason": "scheduler",
|
||||
"job_group_description": null,
|
||||
"job_guid": "6f2bb004c43032afdf7ad0a088ba8c3b8ccbb58e",
|
||||
"start_timestamp": 1377318140,
|
||||
"build_architecture": "x86",
|
||||
"build_platform_id": 5,
|
||||
"resource_uri": "/api/project/mozilla-inbound/jobs/229/"
|
||||
}
|
||||
],
|
||||
"name": null
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"warning_level": "green",
|
||||
"name": "WINNT 5.1 debug",
|
||||
"groups": [
|
||||
{
|
||||
"symbol": null,
|
||||
"jobs": [
|
||||
{
|
||||
"submit_timestamp": 1377292072,
|
||||
"machine_name": "t-xp32-ix-089",
|
||||
"job_type_description": "fill me",
|
||||
"result_set_id": 3,
|
||||
"result": "success",
|
||||
"machine_platform_architecture": "x86",
|
||||
"end_timestamp": 1377293418,
|
||||
"build_platform": "WINNT 5.1",
|
||||
"machine_platform_os": "win",
|
||||
"job_id": 19,
|
||||
"job_type_name": "jetpack",
|
||||
"platform": "WINNT 5.1",
|
||||
"state": "finished",
|
||||
"build_os": "win",
|
||||
"who": "sendchange-unittest",
|
||||
"option_collection_hash": "32faaecac742100f7753f0c1d0aa0add01b4046b",
|
||||
"job_type_symbol": "JP",
|
||||
"reason": "scheduler",
|
||||
"job_group_description": null,
|
||||
"job_guid": "c5a04c16b139cce857510f1f737ad520ec81805d",
|
||||
"start_timestamp": 1377317625,
|
||||
"build_architecture": "x86",
|
||||
"build_platform_id": 6,
|
||||
"resource_uri": "/api/project/mozilla-inbound/jobs/19/"
|
||||
}
|
||||
],
|
||||
"name": null
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"warning_level": "green",
|
||||
"name": "WINNT 6.3 debug",
|
||||
"groups": [
|
||||
{
|
||||
"symbol": null,
|
||||
"jobs": [
|
||||
{
|
||||
"submit_timestamp": 1377292071,
|
||||
"machine_name": "t-w864-ix-114",
|
||||
"job_type_description": "fill me",
|
||||
"result_set_id": 3,
|
||||
"result": "success",
|
||||
"machine_platform_architecture": "x86_64",
|
||||
"end_timestamp": 1377293668,
|
||||
"build_platform": "WINNT 6.3",
|
||||
"machine_platform_os": "win",
|
||||
"job_id": 103,
|
||||
"job_type_name": "jetpack",
|
||||
"platform": "WINNT 6.3",
|
||||
"state": "finished",
|
||||
"build_os": "win",
|
||||
"who": "sendchange-unittest",
|
||||
"option_collection_hash": "32faaecac742100f7753f0c1d0aa0add01b4046b",
|
||||
"job_type_symbol": "JP",
|
||||
"reason": "scheduler",
|
||||
"job_group_description": null,
|
||||
"job_guid": "9dbfdb3a01f77e316f9d0dd4bb9ddb579a7633ae",
|
||||
"start_timestamp": 1377317817,
|
||||
"build_architecture": "x86_64",
|
||||
"build_platform_id": 14,
|
||||
"resource_uri": "/api/project/mozilla-inbound/jobs/103/"
|
||||
}
|
||||
],
|
||||
"name": null
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"push_timestamp": 1377292017,
|
||||
"id": 3,
|
||||
"revision": "5a9fb1ce1de5"
|
||||
|
||||
}
|
|
@ -0,0 +1,51 @@
|
|||
{
|
||||
|
||||
"repository_id": 2,
|
||||
"revision_hash": "c435bd25d5eabf8b2f286384e8859a2f52b459ba",
|
||||
"author": "sendchange-unittest",
|
||||
"comments": "",
|
||||
"platforms": [
|
||||
{
|
||||
"warning_level": "green",
|
||||
"name": "Rev3 WINNT 6.1 opt",
|
||||
"groups": [
|
||||
{
|
||||
"symbol": null,
|
||||
"jobs": [
|
||||
{
|
||||
"submit_timestamp": 1377291471,
|
||||
"machine_name": "t-w732-ix-052",
|
||||
"job_type_description": "fill me",
|
||||
"result_set_id": 6,
|
||||
"result": "success",
|
||||
"machine_platform_architecture": "x86",
|
||||
"end_timestamp": 1377293471,
|
||||
"build_platform": "Rev3 WINNT 6.1",
|
||||
"machine_platform_os": "win",
|
||||
"job_id": 32,
|
||||
"job_type_name": "jetpack",
|
||||
"platform": "Rev3 WINNT 6.1",
|
||||
"state": "finished",
|
||||
"build_os": "win",
|
||||
"who": "sendchange-unittest",
|
||||
"option_collection_hash": "102210fe594ee9b33d82058545b1ed14f4c8206e",
|
||||
"job_type_symbol": "JP",
|
||||
"reason": "scheduler",
|
||||
"job_group_description": null,
|
||||
"job_guid": "9386493fbea9880712b317ddc8af80f57a9aafd0",
|
||||
"start_timestamp": 1377318048,
|
||||
"build_architecture": "x86",
|
||||
"build_platform_id": 5,
|
||||
"resource_uri": "/api/project/mozilla-inbound/jobs/32/"
|
||||
}
|
||||
],
|
||||
"name": null
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"push_timestamp": 1377291417,
|
||||
"id": 6,
|
||||
"revision": "d84b8ecb416c"
|
||||
|
||||
}
|
|
@ -0,0 +1,167 @@
|
|||
{
|
||||
|
||||
"repository_id": 2,
|
||||
"revision_hash": "84c37546999e879c8ba81184a39bd71bc2e2253e",
|
||||
"author": "tschneidereit@gmail.com",
|
||||
"comments": "Bug 905370 - Move SelfHostedClass list to JSRuntime. r=bhackett,shu",
|
||||
"platforms": [
|
||||
{
|
||||
"warning_level": "green",
|
||||
"name": "OS X 10.6 debug",
|
||||
"groups": [
|
||||
{
|
||||
"symbol": "B",
|
||||
"jobs": [
|
||||
{
|
||||
"submit_timestamp": 1377289379,
|
||||
"machine_name": "bld-lion-r5-049",
|
||||
"job_type_description": "fill me",
|
||||
"result_set_id": 7,
|
||||
"result": "success",
|
||||
"machine_platform_architecture": "x86_64",
|
||||
"end_timestamp": 1377293575,
|
||||
"build_platform": "OS X 10.6",
|
||||
"machine_platform_os": "mac",
|
||||
"job_id": 74,
|
||||
"job_type_name": "build",
|
||||
"platform": "OS X 10.6",
|
||||
"state": "finished",
|
||||
"build_os": "mac",
|
||||
"who": "tschneidereit@gmail.com",
|
||||
"option_collection_hash": "32faaecac742100f7753f0c1d0aa0add01b4046b",
|
||||
"job_type_symbol": "B",
|
||||
"reason": "scheduler",
|
||||
"job_group_description": "",
|
||||
"job_guid": "35ac41aeefe6d4c0311b13f69129aa84e1e78655",
|
||||
"start_timestamp": 1377314595,
|
||||
"build_architecture": "x86_64",
|
||||
"build_platform_id": 4,
|
||||
"resource_uri": "/api/project/mozilla-inbound/jobs/74/"
|
||||
}
|
||||
],
|
||||
"name": "build"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"warning_level": "green",
|
||||
"name": "gecko opt",
|
||||
"groups": [
|
||||
{
|
||||
"symbol": "B",
|
||||
"jobs": [
|
||||
{
|
||||
"submit_timestamp": 1377289378,
|
||||
"machine_name": "bld-linux64-ix-031",
|
||||
"job_type_description": "fill me",
|
||||
"result_set_id": 7,
|
||||
"result": "success",
|
||||
"machine_platform_architecture": "ARMv7",
|
||||
"end_timestamp": 1377293486,
|
||||
"build_platform": "gecko",
|
||||
"machine_platform_os": "linux",
|
||||
"job_id": 38,
|
||||
"job_type_name": "build",
|
||||
"platform": "gecko",
|
||||
"state": "finished",
|
||||
"build_os": "linux",
|
||||
"who": "tschneidereit@gmail.com",
|
||||
"option_collection_hash": "102210fe594ee9b33d82058545b1ed14f4c8206e",
|
||||
"job_type_symbol": "B",
|
||||
"reason": "scheduler",
|
||||
"job_group_description": "",
|
||||
"job_guid": "dc811c72ff2e2c3cce02b4e4764af5bf0bce503d",
|
||||
"start_timestamp": 1377314597,
|
||||
"build_architecture": "ARMv7",
|
||||
"build_platform_id": 10,
|
||||
"resource_uri": "/api/project/mozilla-inbound/jobs/38/"
|
||||
},
|
||||
{
|
||||
"submit_timestamp": 1377289379,
|
||||
"machine_name": "bld-linux64-ec2-448",
|
||||
"job_type_description": "fill me",
|
||||
"result_set_id": 7,
|
||||
"result": "success",
|
||||
"machine_platform_architecture": "ARMv7",
|
||||
"end_timestamp": 1377293857,
|
||||
"build_platform": "gecko",
|
||||
"machine_platform_os": "linux",
|
||||
"job_id": 157,
|
||||
"job_type_name": "build",
|
||||
"platform": "gecko",
|
||||
"state": "finished",
|
||||
"build_os": "linux",
|
||||
"who": "tschneidereit@gmail.com",
|
||||
"option_collection_hash": "102210fe594ee9b33d82058545b1ed14f4c8206e",
|
||||
"job_type_symbol": "B",
|
||||
"reason": "scheduler",
|
||||
"job_group_description": "",
|
||||
"job_guid": "ae5a7ea00255454e346b5c22ccf070a9f52937cb",
|
||||
"start_timestamp": 1377314631,
|
||||
"build_architecture": "ARMv7",
|
||||
"build_platform_id": 10,
|
||||
"resource_uri": "/api/project/mozilla-inbound/jobs/157/"
|
||||
},
|
||||
{
|
||||
"submit_timestamp": 1377289379,
|
||||
"machine_name": "bld-linux64-ec2-362",
|
||||
"job_type_description": "fill me",
|
||||
"result_set_id": 7,
|
||||
"result": "success",
|
||||
"machine_platform_architecture": "ARMv7",
|
||||
"end_timestamp": 1377294101,
|
||||
"build_platform": "gecko",
|
||||
"machine_platform_os": "linux",
|
||||
"job_id": 242,
|
||||
"job_type_name": "build",
|
||||
"platform": "gecko",
|
||||
"state": "finished",
|
||||
"build_os": "linux",
|
||||
"who": "tschneidereit@gmail.com",
|
||||
"option_collection_hash": "102210fe594ee9b33d82058545b1ed14f4c8206e",
|
||||
"job_type_symbol": "B",
|
||||
"reason": "scheduler",
|
||||
"job_group_description": "",
|
||||
"job_guid": "6a39f242f0699044bafb4c3c5fd73b143a134be1",
|
||||
"start_timestamp": 1377314775,
|
||||
"build_architecture": "ARMv7",
|
||||
"build_platform_id": 10,
|
||||
"resource_uri": "/api/project/mozilla-inbound/jobs/242/"
|
||||
},
|
||||
{
|
||||
"submit_timestamp": 1377289378,
|
||||
"machine_name": "bld-linux64-ix-033",
|
||||
"job_type_description": "fill me",
|
||||
"result_set_id": 7,
|
||||
"result": "success",
|
||||
"machine_platform_architecture": "ARMv7",
|
||||
"end_timestamp": 1377294203,
|
||||
"build_platform": "gecko",
|
||||
"machine_platform_os": "linux",
|
||||
"job_id": 274,
|
||||
"job_type_name": "build",
|
||||
"platform": "gecko",
|
||||
"state": "finished",
|
||||
"build_os": "linux",
|
||||
"who": "tschneidereit@gmail.com",
|
||||
"option_collection_hash": "102210fe594ee9b33d82058545b1ed14f4c8206e",
|
||||
"job_type_symbol": "B",
|
||||
"reason": "scheduler",
|
||||
"job_group_description": "",
|
||||
"job_guid": "f3aa423129de5d0d07a40b1a9843305980228c1a",
|
||||
"start_timestamp": 1377314617,
|
||||
"build_architecture": "ARMv7",
|
||||
"build_platform_id": 10,
|
||||
"resource_uri": "/api/project/mozilla-inbound/jobs/274/"
|
||||
}
|
||||
],
|
||||
"name": "build"
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"push_timestamp": 1377289348,
|
||||
"id": 7,
|
||||
"revision": "be4a241c1cf3ef15d54119c0a5e7824bf0997b06"
|
||||
|
||||
}
|
|
@ -0,0 +1,115 @@
|
|||
{
|
||||
|
||||
"repository_id": 2,
|
||||
"revision_hash": "a8517c8ae59f2ccc3046267c33ac678beab982a3",
|
||||
"author": "jmaher@mozilla.com",
|
||||
"comments": "Bug 908853 - update talos.json to include new TART test. r=avih",
|
||||
"platforms": [
|
||||
{
|
||||
"warning_level": "green",
|
||||
"name": "OS X 10.6 opt",
|
||||
"groups": [
|
||||
{
|
||||
"symbol": "B",
|
||||
"jobs": [
|
||||
{
|
||||
"submit_timestamp": 1377290458,
|
||||
"machine_name": "bld-lion-r5-067",
|
||||
"job_type_description": "fill me",
|
||||
"result_set_id": 9,
|
||||
"result": "success",
|
||||
"machine_platform_architecture": "x86_64",
|
||||
"end_timestamp": 1377294021,
|
||||
"build_platform": "OS X 10.6",
|
||||
"machine_platform_os": "mac",
|
||||
"job_id": 220,
|
||||
"job_type_name": "build",
|
||||
"platform": "OS X 10.6",
|
||||
"state": "finished",
|
||||
"build_os": "mac",
|
||||
"who": "jmaher@mozilla.com",
|
||||
"option_collection_hash": "102210fe594ee9b33d82058545b1ed14f4c8206e",
|
||||
"job_type_symbol": "B",
|
||||
"reason": "scheduler",
|
||||
"job_group_description": "",
|
||||
"job_guid": "69e32b68c369d8843ee22225bb925370f1a8cff2",
|
||||
"start_timestamp": 1377315674,
|
||||
"build_architecture": "x86_64",
|
||||
"build_platform_id": 4,
|
||||
"resource_uri": "/api/project/mozilla-inbound/jobs/220/"
|
||||
}
|
||||
],
|
||||
"name": "build"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"warning_level": "green",
|
||||
"name": "gecko opt",
|
||||
"groups": [
|
||||
{
|
||||
"symbol": "B",
|
||||
"jobs": [
|
||||
{
|
||||
"submit_timestamp": 1377290459,
|
||||
"machine_name": "bld-centos6-hp-007",
|
||||
"job_type_description": "fill me",
|
||||
"result_set_id": 9,
|
||||
"result": "success",
|
||||
"machine_platform_architecture": "ARMv7",
|
||||
"end_timestamp": 1377293600,
|
||||
"build_platform": "gecko",
|
||||
"machine_platform_os": "linux",
|
||||
"job_id": 82,
|
||||
"job_type_name": "build",
|
||||
"platform": "gecko",
|
||||
"state": "finished",
|
||||
"build_os": "linux",
|
||||
"who": "jmaher@mozilla.com",
|
||||
"option_collection_hash": "102210fe594ee9b33d82058545b1ed14f4c8206e",
|
||||
"job_type_symbol": "B",
|
||||
"reason": "scheduler",
|
||||
"job_group_description": "",
|
||||
"job_guid": "f27cd8290fd669313caf2d7dbec5844be14645a7",
|
||||
"start_timestamp": 1377315677,
|
||||
"build_architecture": "ARMv7",
|
||||
"build_platform_id": 10,
|
||||
"resource_uri": "/api/project/mozilla-inbound/jobs/82/"
|
||||
},
|
||||
{
|
||||
"submit_timestamp": 1377290459,
|
||||
"machine_name": "bld-linux64-ec2-126",
|
||||
"job_type_description": "fill me",
|
||||
"result_set_id": 9,
|
||||
"result": "success",
|
||||
"machine_platform_architecture": "ARMv7",
|
||||
"end_timestamp": 1377293901,
|
||||
"build_platform": "gecko",
|
||||
"machine_platform_os": "linux",
|
||||
"job_id": 177,
|
||||
"job_type_name": "build",
|
||||
"platform": "gecko",
|
||||
"state": "finished",
|
||||
"build_os": "linux",
|
||||
"who": "jmaher@mozilla.com",
|
||||
"option_collection_hash": "102210fe594ee9b33d82058545b1ed14f4c8206e",
|
||||
"job_type_symbol": "B",
|
||||
"reason": "scheduler",
|
||||
"job_group_description": "",
|
||||
"job_guid": "22aec8191ebe586d936595f3c8b958732edf5799",
|
||||
"start_timestamp": 1377315678,
|
||||
"build_architecture": "ARMv7",
|
||||
"build_platform_id": 10,
|
||||
"resource_uri": "/api/project/mozilla-inbound/jobs/177/"
|
||||
}
|
||||
],
|
||||
"name": "build"
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"push_timestamp": 1377290428,
|
||||
"id": 9,
|
||||
"revision": "481ba42bbc8a148da9adcec919fcc7560e39464e"
|
||||
|
||||
}
|
|
@ -0,0 +1,94 @@
|
|||
[
|
||||
|
||||
{
|
||||
"repository_id": 2,
|
||||
"revision_hash": "25b6841ee6e4223e3a32011e324e2fba2cc96ae2",
|
||||
"author": "sendchange",
|
||||
"comments": "Bug 908724 - Avoid #including nsPresContext.h in nsIScrollableFrame.h_ r=mats",
|
||||
"push_timestamp": 1377293081,
|
||||
"id": 17,
|
||||
"revision": "481ba42bbc8a"
|
||||
},
|
||||
{
|
||||
"repository_id": 2,
|
||||
"revision_hash": "9dd584cca791878d8060a5f17b3fa14cd277534a",
|
||||
"author": "sendchange-unittest",
|
||||
"comments": "",
|
||||
"push_timestamp": 1377292891,
|
||||
"id": 11,
|
||||
"revision": "c619171e0070"
|
||||
},
|
||||
{
|
||||
"repository_id": 2,
|
||||
"revision_hash": "f6a5bb84cf67ac35d670e90810b1306b77f4c1bf",
|
||||
"author": "sendchange-unittest",
|
||||
"comments": "Backed out changesets aed22a2d8353 and c61fe8e1f887 (bug 908006) for OSX reftest failures.",
|
||||
"push_timestamp": 1377292017,
|
||||
"id": 3,
|
||||
"revision": "5a9fb1ce1de5"
|
||||
},
|
||||
{
|
||||
"repository_id": 2,
|
||||
"revision_hash": "0e9748a6326feaa6994f80d3fd8765ef050abb43",
|
||||
"author": "sendchange-unittest",
|
||||
"comments": "Bug 908644 - Add a global result summary to cppunittest output_r=ted",
|
||||
"push_timestamp": 1377291560,
|
||||
"id": 14,
|
||||
"revision": "be4a241c1cf3"
|
||||
},
|
||||
{
|
||||
"repository_id": 2,
|
||||
"revision_hash": "ec486f38935b2c8869ce77adb90257987de6ef53",
|
||||
"author": "sendchange-unittest",
|
||||
"comments": "",
|
||||
"push_timestamp": 1377291417,
|
||||
"id": 1,
|
||||
"revision": "5af70b2d4f1d"
|
||||
},
|
||||
{
|
||||
"repository_id": 2,
|
||||
"revision_hash": "c435bd25d5eabf8b2f286384e8859a2f52b459ba",
|
||||
"author": "sendchange-unittest",
|
||||
"comments": "",
|
||||
"push_timestamp": 1377291417,
|
||||
"id": 6,
|
||||
"revision": "d84b8ecb416c"
|
||||
},
|
||||
{
|
||||
"repository_id": 2,
|
||||
"revision_hash": "13d728cc21866e4da424bd90a7ec9927f82452b5",
|
||||
"author": "sendchange",
|
||||
"comments": "Backed out changesets aed22a2d8353 and c61fe8e1f887 (bug 908006) for OSX reftest failures.",
|
||||
"push_timestamp": 1377291272,
|
||||
"id": 2,
|
||||
"revision": "4d3ad5e15b8c"
|
||||
},
|
||||
{
|
||||
"repository_id": 2,
|
||||
"revision_hash": "a91254227216fda2772c8d2c2cb772cbbadafc46",
|
||||
"author": "gabadie@mozilla.com",
|
||||
"comments": "bug 908662 - [WebGL 2.0] refactor WebIDL - r=jgilbert",
|
||||
"push_timestamp": 1377290520,
|
||||
"id": 13,
|
||||
"revision": "b44c22c84132502664dcb52e2b1a737aa09e6fd0"
|
||||
},
|
||||
{
|
||||
"repository_id": 2,
|
||||
"revision_hash": "a8517c8ae59f2ccc3046267c33ac678beab982a3",
|
||||
"author": "jmaher@mozilla.com",
|
||||
"comments": "Bug 908853 - update talos.json to include new TART test. r=avih",
|
||||
"push_timestamp": 1377290428,
|
||||
"id": 9,
|
||||
"revision": "481ba42bbc8a148da9adcec919fcc7560e39464e"
|
||||
},
|
||||
{
|
||||
"repository_id": 2,
|
||||
"revision_hash": "84c37546999e879c8ba81184a39bd71bc2e2253e",
|
||||
"author": "tschneidereit@gmail.com",
|
||||
"comments": "Bug 905370 - Move SelfHostedClass list to JSRuntime. r=bhackett,shu",
|
||||
"push_timestamp": 1377289348,
|
||||
"id": 7,
|
||||
"revision": "be4a241c1cf3ef15d54119c0a5e7824bf0997b06"
|
||||
}
|
||||
|
||||
]
|
|
@ -0,0 +1,161 @@
|
|||
'use strict';
|
||||
|
||||
/* jasmine specs for controllers go here */
|
||||
|
||||
describe('JobsCtrl', function(){
|
||||
var $httpBackend, createJobsCtrl, createPushCtrl, jobScope, pushScope;
|
||||
|
||||
beforeEach(module('treeherder'));
|
||||
|
||||
beforeEach(inject(function ($injector, $rootScope, $controller) {
|
||||
|
||||
$httpBackend = $injector.get('$httpBackend');
|
||||
jasmine.getJSONFixtures().fixturesPath='base/test/mock';
|
||||
|
||||
$httpBackend.whenGET('http://local.treeherder.mozilla.org/api/project/mozilla-inbound/resultset/').respond(
|
||||
getJSONFixture('resultset_list.json')
|
||||
);
|
||||
|
||||
[1, 2, 3, 6, 7, 9, 11, 13, 14, 17].forEach(function(i) {
|
||||
$httpBackend.whenGET('http://local.treeherder.mozilla.org/api/project/mozilla-inbound/resultset/' + i + '/').respond(
|
||||
getJSONFixture('resultset_' + i + '.json')
|
||||
);
|
||||
});
|
||||
|
||||
$httpBackend.whenGET('http://local.treeherder.mozilla.org/api/project/mozilla-inbound/jobs/260/').respond(
|
||||
getJSONFixture('job_260.json')
|
||||
);
|
||||
|
||||
$httpBackend.whenGET('http://local.treeherder.mozilla.org/api/project/mozilla-inbound/artifact/519/').respond(
|
||||
getJSONFixture('artifact_519.json')
|
||||
);
|
||||
|
||||
$httpBackend.whenGET('http://local.treeherder.mozilla.org/api/project/mozilla-inbound/artifact/519').respond(
|
||||
getJSONFixture('artifact_519.json')
|
||||
);
|
||||
|
||||
$httpBackend.whenGET('resources/job_groups.json').respond(
|
||||
getJSONFixture('job_groups.json')
|
||||
);
|
||||
|
||||
jobScope = $rootScope.$new();
|
||||
$controller('JobsCtrl', {'$scope': jobScope});
|
||||
|
||||
pushScope = jobScope.$new();
|
||||
createPushCtrl = function(push) {
|
||||
pushScope.push = push;
|
||||
var ctrl = $controller('PushCtrl', {'$scope': pushScope});
|
||||
$httpBackend.flush();
|
||||
return ctrl;
|
||||
};
|
||||
$httpBackend.flush();
|
||||
}));
|
||||
|
||||
/*
|
||||
Tests JobsCtrl
|
||||
*/
|
||||
|
||||
it('should have job_types', function() {
|
||||
expect(jobScope.job_types.length).toBe(59);
|
||||
|
||||
});
|
||||
|
||||
it('should have 10 resultsets', function() {
|
||||
expect(jobScope.result_sets.length).toBe(10);
|
||||
});
|
||||
|
||||
/*
|
||||
Tests PushCtrl
|
||||
*/
|
||||
|
||||
it('should have 5 jobs in resultset 2', function() {
|
||||
createPushCtrl(jobScope.result_sets[2]);
|
||||
expect(pushScope.job_results.length).toBe(5);
|
||||
});
|
||||
|
||||
it('should default to revisions collapsed', function() {
|
||||
createPushCtrl(jobScope.result_sets[2]);
|
||||
expect(pushScope.isCollapsedRevisions).toBe(true);
|
||||
});
|
||||
|
||||
it('should default to results collapsed for set without failure', function() {
|
||||
createPushCtrl(jobScope.result_sets[1]);
|
||||
expect(pushScope.isCollapsedResults).toBe(true);
|
||||
});
|
||||
|
||||
it('should default to results not collapsed for set with failure', function() {
|
||||
createPushCtrl(jobScope.result_sets[2]);
|
||||
expect(pushScope.isCollapsedResults).toBe(false);
|
||||
});
|
||||
|
||||
it('should default to results not collapsed for set with failure', function() {
|
||||
createPushCtrl(jobScope.result_sets[2]);
|
||||
expect(pushScope.isCollapsedResults).toBe(false);
|
||||
});
|
||||
|
||||
it('should set the selectedJob in scope when calling viewJob()', function() {
|
||||
var pushCtrl = createPushCtrl(jobScope.result_sets[2]);
|
||||
var job = pushScope.job_results[0].groups[0].jobs[0];
|
||||
pushScope.viewJob(job);
|
||||
$httpBackend.flush();
|
||||
expect(pushScope.selectedJob).toBe(job);
|
||||
});
|
||||
|
||||
it('should set the visibleFields in the job when calling viewJob()', function() {
|
||||
var pushCtrl = createPushCtrl(jobScope.result_sets[2]);
|
||||
var job = pushScope.job_results[0].groups[0].jobs[0];
|
||||
pushScope.viewJob(job);
|
||||
$httpBackend.flush();
|
||||
expect(pushScope.selectedJob.visibleFields).toEqual({
|
||||
'Reason' : 'scheduler',
|
||||
'State' : 'finished',
|
||||
'Result' : 'success',
|
||||
'Type Name' : 'mochitest-5',
|
||||
'Type Desc' : 'fill me',
|
||||
'Who' : 'sendchange-unittest',
|
||||
'Job GUID' : '19e993f5b0a717185083fb9eacb2d422b36d6bd1',
|
||||
'Machine Name' : 'tegra-363',
|
||||
'Machine Platform Arch' : 'ARMv7',
|
||||
'Machine Platform OS' : 'android',
|
||||
'Build Platform' : '2.2',
|
||||
'Build Arch' : 'ARMv7',
|
||||
'Build OS' : 'android'
|
||||
});
|
||||
});
|
||||
|
||||
it('should set jobArtifact when calling viewJob()', function() {
|
||||
var pushCtrl = createPushCtrl(jobScope.result_sets[2]);
|
||||
var job = pushScope.job_results[0].groups[0].jobs[0];
|
||||
pushScope.viewJob(job);
|
||||
$httpBackend.flush();
|
||||
// toEqual does a deep equality check, but $resource call adds a few
|
||||
// things to the object that don't show on the json stringify output.
|
||||
// so much compare each field separately.
|
||||
expect(pushScope.selectedJob.jobArtifact.name).toEqual("Unknown Builder Job Artifact");
|
||||
expect(pushScope.selectedJob.jobArtifact.active_status).toEqual("active");
|
||||
expect(pushScope.selectedJob.jobArtifact.blob).toEqual({
|
||||
"errors": [ ],
|
||||
"tinderbox_printlines": [
|
||||
"mochitest-plain<br/>895/0/128"
|
||||
],
|
||||
"logurl": "http://ftp.mozilla.org/pub/mozilla.org/mobile/tinderbox-builds/mozilla-inbound-android-armv6/1377289258/mozilla-inbound_tegra_android-armv6_test-mochitest-5-bm10-tests1-tegra-build1958.txt.gz"
|
||||
});
|
||||
expect(pushScope.selectedJob.jobArtifact.type).toEqual("json");
|
||||
expect(pushScope.selectedJob.jobArtifact.id).toEqual(519);
|
||||
expect(pushScope.selectedJob.jobArtifact.job_id).toEqual(260);
|
||||
});
|
||||
|
||||
it('should set lvArtifact when calling viewJob()', function() {
|
||||
var pushCtrl = createPushCtrl(jobScope.result_sets[2]);
|
||||
var job = pushScope.job_results[0].groups[0].jobs[0];
|
||||
pushScope.viewJob(job);
|
||||
$httpBackend.flush();
|
||||
expect(pushScope.selectedJob.lvArtifact).toEqual({
|
||||
resource_uri : '/api/project/mozilla-inbound/artifact/520/',
|
||||
type : 'json',
|
||||
id : 520,
|
||||
name : 'Structured Log'
|
||||
});
|
||||
});
|
||||
|
||||
});
|
|
@ -2,37 +2,3 @@
|
|||
|
||||
/* jasmine specs for controllers go here */
|
||||
|
||||
describe('controllers', function(){
|
||||
var $httpBackend, $rootScope, createController;
|
||||
|
||||
beforeEach(module('treeherder'));
|
||||
|
||||
beforeEach(inject(function ($injector) {
|
||||
|
||||
$httpBackend = $injector.get('$httpBackend');
|
||||
$httpBackend.whenGET('resources/job_groups.json').respond(
|
||||
jasmine.getJSONFixtures('job_groups.json')
|
||||
);
|
||||
$httpBackend.whenGET('resources/push_sample.json').respond(
|
||||
jasmine.getJSONFixtures('push_sample.json')
|
||||
);
|
||||
$rootScope = $injector.get('$rootScope');
|
||||
var $controller = $injector.get('$controller');
|
||||
|
||||
createController = function() {
|
||||
return $controller('JobsCtrl', {'$scope': $rootScope});
|
||||
};
|
||||
}));
|
||||
|
||||
it('should have job_types', function() {
|
||||
var ctrl = createController();
|
||||
$httpBackend.flush();
|
||||
expect($rootScope.job_types.length).toEqual(30);
|
||||
});
|
||||
|
||||
it('should ....', inject(function() {
|
||||
var ctrl = createController();
|
||||
|
||||
expect("me").toEqual("me");
|
||||
}));
|
||||
});
|
||||
|
|
Разница между файлами не показана из-за своего большого размера
Загрузить разницу
|
@ -18,8 +18,8 @@
|
|||
Logged in as <a href="#" class="navbar-link">Username</a>
|
||||
</p>
|
||||
<form class="navbar-search pull-right">
|
||||
<span class="label label-success">{{ repo }}</span>
|
||||
<span class="label label-success">0 unstarred</span>
|
||||
<span class="label label-info">{{ repo }}</span>
|
||||
<span class="label label-info">0 unstarred</span>
|
||||
<input type="text" ng-model="query" class="search-query" placeholder="Search">
|
||||
</form>
|
||||
<!-- nav begin -->
|
||||
|
@ -57,7 +57,10 @@
|
|||
</div>
|
||||
|
||||
<div class="jobs_list span11" ng-cloak>
|
||||
<div class="alert alert-success">{{ status }}</div>
|
||||
<div class="alert"
|
||||
ng-bind="statusMsg"
|
||||
ng-show="statusMsg"
|
||||
ng-class="{'alert-success': (statusColor=='green'), 'alert-error': (statusColor=='red')}"></div>
|
||||
<ng-view ></ng-view>
|
||||
|
||||
</div>
|
||||
|
|
|
@ -1,7 +1,8 @@
|
|||
"use strict";
|
||||
|
||||
treeherder.controller('JobsCtrl',
|
||||
function JobsCtrl($scope, $http, $rootScope, $location, $routeParams, thResultSets) {
|
||||
function JobsCtrl($scope, $http, $rootScope, $routeParams, $log,
|
||||
thUrl, thResultSets) {
|
||||
|
||||
// set the default repo to mozilla-central if not specified
|
||||
if ($routeParams.hasOwnProperty("repo") &&
|
||||
|
@ -30,14 +31,18 @@ treeherder.controller('JobsCtrl',
|
|||
|
||||
thResultSets.getResultSets().
|
||||
success(function(data) {
|
||||
$rootScope.result_sets = data;
|
||||
$scope.result_sets = data;
|
||||
}).
|
||||
error(function(data, status, header, config) {
|
||||
$scope.statusError("Error getting result sets and jobs from service");
|
||||
});
|
||||
|
||||
}
|
||||
);
|
||||
|
||||
treeherder.controller('PushCtrl',
|
||||
function PushCtrl($scope, $rootScope, $http, thResults, thUrl, thServiceDomain) {
|
||||
function PushCtrl($scope, $rootScope, $http, $resource, $log,
|
||||
thResults, thUrl, thServiceDomain) {
|
||||
// whether or not revision list for a push is collapsed
|
||||
$scope.isCollapsedRevisions = true;
|
||||
|
||||
|
@ -52,7 +57,7 @@ treeherder.controller('PushCtrl',
|
|||
$rootScope.selectedJob = job;
|
||||
|
||||
// fields that will show in the job detail panel
|
||||
$rootScope.selectedJob.visibleFields = {
|
||||
job.visibleFields = {
|
||||
"Reason": job.reason,
|
||||
"State": job.state,
|
||||
"Result": job.result,
|
||||
|
@ -69,24 +74,23 @@ treeherder.controller('PushCtrl',
|
|||
};
|
||||
$http.get(thServiceDomain + job.resource_uri).
|
||||
success(function(data) {
|
||||
$rootScope.selectedJob.logs = data.logs;
|
||||
job.logs = data.logs;
|
||||
|
||||
data.artifacts.forEach(function(artifact) {
|
||||
if (artifact.name.contains("Job Artifact")) {
|
||||
// we don't return the blobs with job, just resource_uris
|
||||
// to them. For the Job Artifact, we want that blob, so we
|
||||
// need to fetch the detail to get the blob which has the
|
||||
// we don't return the blobs with job, just
|
||||
// resource_uris to them. For the Job Artifact,
|
||||
// we want that blob, so we need to fetch the
|
||||
// detail to get the blob which has the
|
||||
// tinderbox_printlines, etc.
|
||||
$http.get(thServiceDomain + artifact.resource_uri).
|
||||
success(function(data) {
|
||||
$rootScope.selectedJob.jobArtifact = data;
|
||||
});
|
||||
job.jobArtifact = $resource(
|
||||
thServiceDomain + artifact.resource_uri).get();
|
||||
} else if (artifact.name === "Structured Log") {
|
||||
// for the structured log, we don't need the blob here, we
|
||||
// have everything we need in the artifact as is, so
|
||||
// just save it.
|
||||
$rootScope.selectedJob.lvArtifact=artifact;
|
||||
$rootScope.selectedJob.lvUrl = thUrl.getLogViewerUrl(artifact.id);
|
||||
// for the structured log, we don't need the blob
|
||||
// here, we have everything we need in the artifact
|
||||
// as is, so just save it.
|
||||
job.lvArtifact=artifact;
|
||||
job.lvUrl = thUrl.getLogViewerUrl(artifact.id);
|
||||
}
|
||||
});
|
||||
});
|
||||
|
@ -105,7 +109,7 @@ treeherder.controller('PushCtrl',
|
|||
}
|
||||
});
|
||||
} else {
|
||||
console.log("Job had no artifacts: " + job_uri);
|
||||
$log.warn("Job had no artifacts: " + job_uri);
|
||||
}
|
||||
});
|
||||
|
||||
|
|
|
@ -1,9 +1,16 @@
|
|||
"use strict";
|
||||
|
||||
treeherder.controller('MainCtrl',
|
||||
function MainController($scope) {
|
||||
function MainController($scope, $rootScope) {
|
||||
$scope.query="";
|
||||
$scope.status = "condition green";
|
||||
$scope.statusError = function(msg) {
|
||||
$rootScope.statusMsg = msg;
|
||||
$rootScope.statusColor = "red";
|
||||
};
|
||||
$scope.statusSuccess = function(msg) {
|
||||
$rootScope.statusMsg = msg;
|
||||
$rootScope.statusColor = "green";
|
||||
};
|
||||
}
|
||||
);
|
||||
|
||||
|
|
|
@ -28,7 +28,7 @@ treeherder.factory('thArtifact',
|
|||
return {
|
||||
getArtifact: function(id) {
|
||||
return $http.get(thUrl.getProjectUrl(
|
||||
"/artifact/" + id + "/?format=json"));
|
||||
"/artifact/" + id + "/"));
|
||||
}
|
||||
}
|
||||
}]);
|
||||
|
@ -37,18 +37,17 @@ treeherder.factory('thResultSets',
|
|||
['$http', 'thUrl',
|
||||
function($http, thUrl) {
|
||||
|
||||
// get the pushes for this tree
|
||||
// sample: 'resources/push_sample.json'
|
||||
// get the resultsets for this repo
|
||||
return {
|
||||
getResultSets: function() {
|
||||
return $http.get(thUrl.getProjectUrl("/resultset/?format=json"));
|
||||
return $http.get(thUrl.getProjectUrl("/resultset/"));
|
||||
}
|
||||
}
|
||||
}]);
|
||||
|
||||
treeherder.factory('thResults',
|
||||
['$http', 'thUrl', '$rootScope',
|
||||
function($http, thUrl, $rootScope) {
|
||||
['$http', 'thUrl', '$rootScope', '$log',
|
||||
function($http, thUrl, $rootScope, $log) {
|
||||
var getWarningLevel = function(results) {
|
||||
|
||||
var COLORS = {
|
||||
|
@ -74,8 +73,7 @@ treeherder.factory('thResults',
|
|||
getResults: function(result_set, $scope) {
|
||||
// store the results in scope for this push via ajax
|
||||
|
||||
var jobUrl = thUrl.getProjectUrl("/resultset/" + result_set.id + "/?format=json");
|
||||
console.log("fetching for " + result_set.id + " from: " + jobUrl);
|
||||
var jobUrl = thUrl.getProjectUrl("/resultset/" + result_set.id + "/");
|
||||
$scope.isLoadingResults = true;
|
||||
$http.get(jobUrl).
|
||||
success(
|
||||
|
@ -124,7 +122,7 @@ treeherder.factory('thRepos',
|
|||
// sample: 'resources/menu.json'
|
||||
return {
|
||||
getRepos: function($rootScope) {
|
||||
$http.get(thUrl.getRootUrl("/repository/?format=json")).
|
||||
$http.get(thUrl.getRootUrl("/repository/")).
|
||||
success(function(data) {
|
||||
$rootScope.repos = data;
|
||||
});
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
<div
|
||||
ng-repeat="push in result_sets"
|
||||
ng-controller="PushCtrl"
|
||||
class="row-fluid">
|
||||
class="result-set row-fluid">
|
||||
|
||||
<a class="btn {{ pushResultBtn }}"
|
||||
ng-click="isCollapsedResults = !isCollapsedResults">
|
||||
|
|
|
@ -0,0 +1,673 @@
|
|||
/*!
|
||||
Jasmine-jQuery: a set of jQuery helpers for Jasmine tests.
|
||||
|
||||
Version 1.5.8
|
||||
|
||||
https://github.com/velesin/jasmine-jquery
|
||||
|
||||
Copyright (c) 2010-2013 Wojciech Zawistowski, Travis Jeffery
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining
|
||||
a copy of this software and associated documentation files (the
|
||||
"Software"), to deal in the Software without restriction, including
|
||||
without limitation the rights to use, copy, modify, merge, publish,
|
||||
distribute, sublicense, and/or sell copies of the Software, and to
|
||||
permit persons to whom the Software is furnished to do so, subject to
|
||||
the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be
|
||||
included in all copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
||||
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
||||
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
||||
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
||||
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
||||
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
*/
|
||||
var readFixtures = function() {
|
||||
return jasmine.getFixtures().proxyCallTo_('read', arguments)
|
||||
}
|
||||
|
||||
var preloadFixtures = function() {
|
||||
jasmine.getFixtures().proxyCallTo_('preload', arguments)
|
||||
}
|
||||
|
||||
var loadFixtures = function() {
|
||||
jasmine.getFixtures().proxyCallTo_('load', arguments)
|
||||
}
|
||||
|
||||
var appendLoadFixtures = function() {
|
||||
jasmine.getFixtures().proxyCallTo_('appendLoad', arguments)
|
||||
}
|
||||
|
||||
var setFixtures = function(html) {
|
||||
return jasmine.getFixtures().proxyCallTo_('set', arguments)
|
||||
}
|
||||
|
||||
var appendSetFixtures = function() {
|
||||
jasmine.getFixtures().proxyCallTo_('appendSet', arguments)
|
||||
}
|
||||
|
||||
var sandbox = function(attributes) {
|
||||
return jasmine.getFixtures().sandbox(attributes)
|
||||
}
|
||||
|
||||
var spyOnEvent = function(selector, eventName) {
|
||||
return jasmine.JQuery.events.spyOn(selector, eventName)
|
||||
}
|
||||
|
||||
var preloadStyleFixtures = function() {
|
||||
jasmine.getStyleFixtures().proxyCallTo_('preload', arguments)
|
||||
}
|
||||
|
||||
var loadStyleFixtures = function() {
|
||||
jasmine.getStyleFixtures().proxyCallTo_('load', arguments)
|
||||
}
|
||||
|
||||
var appendLoadStyleFixtures = function() {
|
||||
jasmine.getStyleFixtures().proxyCallTo_('appendLoad', arguments)
|
||||
}
|
||||
|
||||
var setStyleFixtures = function(html) {
|
||||
jasmine.getStyleFixtures().proxyCallTo_('set', arguments)
|
||||
}
|
||||
|
||||
var appendSetStyleFixtures = function(html) {
|
||||
jasmine.getStyleFixtures().proxyCallTo_('appendSet', arguments)
|
||||
}
|
||||
|
||||
var loadJSONFixtures = function() {
|
||||
return jasmine.getJSONFixtures().proxyCallTo_('load', arguments)
|
||||
}
|
||||
|
||||
var getJSONFixture = function(url) {
|
||||
return jasmine.getJSONFixtures().proxyCallTo_('read', arguments)[url]
|
||||
}
|
||||
|
||||
jasmine.spiedEventsKey = function (selector, eventName) {
|
||||
return [$(selector).selector, eventName].toString()
|
||||
}
|
||||
|
||||
jasmine.getFixtures = function() {
|
||||
return jasmine.currentFixtures_ = jasmine.currentFixtures_ || new jasmine.Fixtures()
|
||||
}
|
||||
|
||||
jasmine.getStyleFixtures = function() {
|
||||
return jasmine.currentStyleFixtures_ = jasmine.currentStyleFixtures_ || new jasmine.StyleFixtures()
|
||||
}
|
||||
|
||||
jasmine.Fixtures = function() {
|
||||
this.containerId = 'jasmine-fixtures'
|
||||
this.fixturesCache_ = {}
|
||||
this.fixturesPath = 'spec/javascripts/fixtures'
|
||||
}
|
||||
|
||||
jasmine.Fixtures.prototype.set = function(html) {
|
||||
this.cleanUp()
|
||||
return this.createContainer_(html)
|
||||
}
|
||||
|
||||
jasmine.Fixtures.prototype.appendSet= function(html) {
|
||||
this.addToContainer_(html)
|
||||
}
|
||||
|
||||
jasmine.Fixtures.prototype.preload = function() {
|
||||
this.read.apply(this, arguments)
|
||||
}
|
||||
|
||||
jasmine.Fixtures.prototype.load = function() {
|
||||
this.cleanUp()
|
||||
this.createContainer_(this.read.apply(this, arguments))
|
||||
}
|
||||
|
||||
jasmine.Fixtures.prototype.appendLoad = function() {
|
||||
this.addToContainer_(this.read.apply(this, arguments))
|
||||
}
|
||||
|
||||
jasmine.Fixtures.prototype.read = function() {
|
||||
var htmlChunks = []
|
||||
|
||||
var fixtureUrls = arguments
|
||||
for(var urlCount = fixtureUrls.length, urlIndex = 0; urlIndex < urlCount; urlIndex++) {
|
||||
htmlChunks.push(this.getFixtureHtml_(fixtureUrls[urlIndex]))
|
||||
}
|
||||
|
||||
return htmlChunks.join('')
|
||||
}
|
||||
|
||||
jasmine.Fixtures.prototype.clearCache = function() {
|
||||
this.fixturesCache_ = {}
|
||||
}
|
||||
|
||||
jasmine.Fixtures.prototype.cleanUp = function() {
|
||||
$('#' + this.containerId).remove()
|
||||
}
|
||||
|
||||
jasmine.Fixtures.prototype.sandbox = function(attributes) {
|
||||
var attributesToSet = attributes || {}
|
||||
return $('<div id="sandbox" />').attr(attributesToSet)
|
||||
}
|
||||
|
||||
jasmine.Fixtures.prototype.createContainer_ = function(html) {
|
||||
var container = $('<div>')
|
||||
.attr('id', this.containerId)
|
||||
.html(html)
|
||||
$(document.body).append(container)
|
||||
return container
|
||||
}
|
||||
|
||||
jasmine.Fixtures.prototype.addToContainer_ = function(html){
|
||||
var container = $(document.body).find('#'+this.containerId).append(html)
|
||||
if(!container.length){
|
||||
this.createContainer_(html)
|
||||
}
|
||||
}
|
||||
|
||||
jasmine.Fixtures.prototype.getFixtureHtml_ = function(url) {
|
||||
if (typeof this.fixturesCache_[url] === 'undefined') {
|
||||
this.loadFixtureIntoCache_(url)
|
||||
}
|
||||
return this.fixturesCache_[url]
|
||||
}
|
||||
|
||||
jasmine.Fixtures.prototype.loadFixtureIntoCache_ = function(relativeUrl) {
|
||||
var url = this.makeFixtureUrl_(relativeUrl)
|
||||
var request = $.ajax({
|
||||
type: "GET",
|
||||
url: url + "?" + new Date().getTime(),
|
||||
async: false
|
||||
})
|
||||
this.fixturesCache_[relativeUrl] = request.responseText
|
||||
}
|
||||
|
||||
jasmine.Fixtures.prototype.makeFixtureUrl_ = function(relativeUrl){
|
||||
return this.fixturesPath.match('/$') ? this.fixturesPath + relativeUrl : this.fixturesPath + '/' + relativeUrl
|
||||
}
|
||||
|
||||
jasmine.Fixtures.prototype.proxyCallTo_ = function(methodName, passedArguments) {
|
||||
return this[methodName].apply(this, passedArguments)
|
||||
}
|
||||
|
||||
|
||||
jasmine.StyleFixtures = function() {
|
||||
this.fixturesCache_ = {}
|
||||
this.fixturesNodes_ = []
|
||||
this.fixturesPath = 'spec/javascripts/fixtures'
|
||||
}
|
||||
|
||||
jasmine.StyleFixtures.prototype.set = function(css) {
|
||||
this.cleanUp()
|
||||
this.createStyle_(css)
|
||||
}
|
||||
|
||||
jasmine.StyleFixtures.prototype.appendSet = function(css) {
|
||||
this.createStyle_(css)
|
||||
}
|
||||
|
||||
jasmine.StyleFixtures.prototype.preload = function() {
|
||||
this.read_.apply(this, arguments)
|
||||
}
|
||||
|
||||
jasmine.StyleFixtures.prototype.load = function() {
|
||||
this.cleanUp()
|
||||
this.createStyle_(this.read_.apply(this, arguments))
|
||||
}
|
||||
|
||||
jasmine.StyleFixtures.prototype.appendLoad = function() {
|
||||
this.createStyle_(this.read_.apply(this, arguments))
|
||||
}
|
||||
|
||||
jasmine.StyleFixtures.prototype.cleanUp = function() {
|
||||
while(this.fixturesNodes_.length) {
|
||||
this.fixturesNodes_.pop().remove()
|
||||
}
|
||||
}
|
||||
|
||||
jasmine.StyleFixtures.prototype.createStyle_ = function(html) {
|
||||
var styleText = $('<div></div>').html(html).text(),
|
||||
style = $('<style>' + styleText + '</style>')
|
||||
|
||||
this.fixturesNodes_.push(style)
|
||||
|
||||
$('head').append(style)
|
||||
}
|
||||
|
||||
jasmine.StyleFixtures.prototype.clearCache = jasmine.Fixtures.prototype.clearCache
|
||||
|
||||
jasmine.StyleFixtures.prototype.read_ = jasmine.Fixtures.prototype.read
|
||||
|
||||
jasmine.StyleFixtures.prototype.getFixtureHtml_ = jasmine.Fixtures.prototype.getFixtureHtml_
|
||||
|
||||
jasmine.StyleFixtures.prototype.loadFixtureIntoCache_ = jasmine.Fixtures.prototype.loadFixtureIntoCache_
|
||||
|
||||
jasmine.StyleFixtures.prototype.makeFixtureUrl_ = jasmine.Fixtures.prototype.makeFixtureUrl_
|
||||
|
||||
jasmine.StyleFixtures.prototype.proxyCallTo_ = jasmine.Fixtures.prototype.proxyCallTo_
|
||||
|
||||
jasmine.getJSONFixtures = function() {
|
||||
return jasmine.currentJSONFixtures_ = jasmine.currentJSONFixtures_ || new jasmine.JSONFixtures()
|
||||
}
|
||||
|
||||
jasmine.JSONFixtures = function() {
|
||||
this.fixturesCache_ = {}
|
||||
this.fixturesPath = 'spec/javascripts/fixtures/json'
|
||||
}
|
||||
|
||||
jasmine.JSONFixtures.prototype.load = function() {
|
||||
this.read.apply(this, arguments)
|
||||
return this.fixturesCache_
|
||||
}
|
||||
|
||||
jasmine.JSONFixtures.prototype.read = function() {
|
||||
var fixtureUrls = arguments
|
||||
for(var urlCount = fixtureUrls.length, urlIndex = 0; urlIndex < urlCount; urlIndex++) {
|
||||
this.getFixtureData_(fixtureUrls[urlIndex])
|
||||
}
|
||||
return this.fixturesCache_
|
||||
}
|
||||
|
||||
jasmine.JSONFixtures.prototype.clearCache = function() {
|
||||
this.fixturesCache_ = {}
|
||||
}
|
||||
|
||||
jasmine.JSONFixtures.prototype.getFixtureData_ = function(url) {
|
||||
this.loadFixtureIntoCache_(url)
|
||||
return this.fixturesCache_[url]
|
||||
}
|
||||
|
||||
jasmine.JSONFixtures.prototype.loadFixtureIntoCache_ = function(relativeUrl) {
|
||||
var self = this
|
||||
var url = this.fixturesPath.match('/$') ? this.fixturesPath + relativeUrl : this.fixturesPath + '/' + relativeUrl
|
||||
$.ajax({
|
||||
async: false, // must be synchronous to guarantee that no tests are run before fixture is loaded
|
||||
cache: false,
|
||||
dataType: 'json',
|
||||
url: url,
|
||||
success: function(data) {
|
||||
self.fixturesCache_[relativeUrl] = data
|
||||
},
|
||||
error: function(jqXHR, status, errorThrown) {
|
||||
throw Error('JSONFixture could not be loaded: ' + url + ' (status: ' + status + ', message: ' + errorThrown.message + ')')
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
jasmine.JSONFixtures.prototype.proxyCallTo_ = function(methodName, passedArguments) {
|
||||
return this[methodName].apply(this, passedArguments)
|
||||
}
|
||||
|
||||
jasmine.JQuery = function() {}
|
||||
|
||||
jasmine.JQuery.browserTagCaseIndependentHtml = function(html) {
|
||||
return $('<div/>').append(html).html()
|
||||
}
|
||||
|
||||
jasmine.JQuery.elementToString = function(element) {
|
||||
var domEl = $(element).get(0)
|
||||
if (domEl == undefined || domEl.cloneNode)
|
||||
return $('<div />').append($(element).clone()).html()
|
||||
else
|
||||
return element.toString()
|
||||
}
|
||||
|
||||
jasmine.JQuery.matchersClass = {}
|
||||
|
||||
!function(namespace) {
|
||||
var data = {
|
||||
spiedEvents: {},
|
||||
handlers: []
|
||||
}
|
||||
|
||||
namespace.events = {
|
||||
spyOn: function(selector, eventName) {
|
||||
var handler = function(e) {
|
||||
data.spiedEvents[jasmine.spiedEventsKey(selector, eventName)] = jasmine.util.argsToArray(arguments)
|
||||
}
|
||||
$(selector).on(eventName, handler)
|
||||
data.handlers.push(handler)
|
||||
return {
|
||||
selector: selector,
|
||||
eventName: eventName,
|
||||
handler: handler,
|
||||
reset: function(){
|
||||
delete data.spiedEvents[jasmine.spiedEventsKey(selector, eventName)]
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
args: function(selector, eventName) {
|
||||
var actualArgs = data.spiedEvents[jasmine.spiedEventsKey(selector, eventName)]
|
||||
|
||||
if (!actualArgs) {
|
||||
throw "There is no spy for " + eventName + " on " + selector.toString() + ". Make sure to create a spy using spyOnEvent."
|
||||
}
|
||||
|
||||
return actualArgs
|
||||
},
|
||||
|
||||
wasTriggered: function(selector, eventName) {
|
||||
return !!(data.spiedEvents[jasmine.spiedEventsKey(selector, eventName)])
|
||||
},
|
||||
|
||||
wasTriggeredWith: function(selector, eventName, expectedArgs, env) {
|
||||
var actualArgs = jasmine.JQuery.events.args(selector, eventName).slice(1)
|
||||
if (Object.prototype.toString.call(expectedArgs) !== '[object Array]') {
|
||||
actualArgs = actualArgs[0]
|
||||
}
|
||||
return env.equals_(expectedArgs, actualArgs)
|
||||
},
|
||||
|
||||
wasPrevented: function(selector, eventName) {
|
||||
var args = data.spiedEvents[jasmine.spiedEventsKey(selector, eventName)],
|
||||
e = args ? args[0] : undefined
|
||||
return e && e.isDefaultPrevented()
|
||||
},
|
||||
|
||||
wasStopped: function(selector, eventName) {
|
||||
var args = data.spiedEvents[jasmine.spiedEventsKey(selector, eventName)],
|
||||
e = args ? args[0] : undefined
|
||||
return e && e.isPropagationStopped()
|
||||
},
|
||||
|
||||
cleanUp: function() {
|
||||
data.spiedEvents = {}
|
||||
data.handlers = []
|
||||
}
|
||||
}
|
||||
}(jasmine.JQuery);
|
||||
|
||||
!function(){
|
||||
var jQueryMatchers = {
|
||||
toHaveClass: function(className) {
|
||||
return this.actual.hasClass(className)
|
||||
},
|
||||
|
||||
toHaveCss: function(css){
|
||||
for (var prop in css){
|
||||
if (this.actual.css(prop) !== css[prop]) return false
|
||||
}
|
||||
return true
|
||||
},
|
||||
|
||||
toBeVisible: function() {
|
||||
return this.actual.is(':visible')
|
||||
},
|
||||
|
||||
toBeHidden: function() {
|
||||
return this.actual.is(':hidden')
|
||||
},
|
||||
|
||||
toBeSelected: function() {
|
||||
return this.actual.is(':selected')
|
||||
},
|
||||
|
||||
toBeChecked: function() {
|
||||
return this.actual.is(':checked')
|
||||
},
|
||||
|
||||
toBeEmpty: function() {
|
||||
return this.actual.is(':empty')
|
||||
},
|
||||
|
||||
toExist: function() {
|
||||
return $(document).find(this.actual).length
|
||||
},
|
||||
|
||||
toHaveLength: function(length) {
|
||||
return this.actual.length === length
|
||||
},
|
||||
|
||||
toHaveAttr: function(attributeName, expectedAttributeValue) {
|
||||
return hasProperty(this.actual.attr(attributeName), expectedAttributeValue)
|
||||
},
|
||||
|
||||
toHaveProp: function(propertyName, expectedPropertyValue) {
|
||||
return hasProperty(this.actual.prop(propertyName), expectedPropertyValue)
|
||||
},
|
||||
|
||||
toHaveId: function(id) {
|
||||
return this.actual.attr('id') == id
|
||||
},
|
||||
|
||||
toHaveHtml: function(html) {
|
||||
return this.actual.html() == jasmine.JQuery.browserTagCaseIndependentHtml(html)
|
||||
},
|
||||
|
||||
toContainHtml: function(html){
|
||||
var actualHtml = this.actual.html()
|
||||
var expectedHtml = jasmine.JQuery.browserTagCaseIndependentHtml(html)
|
||||
return (actualHtml.indexOf(expectedHtml) >= 0)
|
||||
},
|
||||
|
||||
toHaveText: function(text) {
|
||||
var trimmedText = $.trim(this.actual.text())
|
||||
if (text && $.isFunction(text.test)) {
|
||||
return text.test(trimmedText)
|
||||
} else {
|
||||
return trimmedText == text
|
||||
}
|
||||
},
|
||||
|
||||
toContainText: function(text) {
|
||||
var trimmedText = $.trim(this.actual.text())
|
||||
if (text && $.isFunction(text.test)) {
|
||||
return text.test(trimmedText)
|
||||
} else {
|
||||
return trimmedText.indexOf(text) != -1
|
||||
}
|
||||
},
|
||||
|
||||
toHaveValue: function(value) {
|
||||
return this.actual.val() === value
|
||||
},
|
||||
|
||||
toHaveData: function(key, expectedValue) {
|
||||
return hasProperty(this.actual.data(key), expectedValue)
|
||||
},
|
||||
|
||||
toBe: function(selector) {
|
||||
return this.actual.is(selector)
|
||||
},
|
||||
|
||||
toContain: function(selector) {
|
||||
return this.actual.find(selector).length
|
||||
},
|
||||
|
||||
toBeMatchedBy: function(selector) {
|
||||
return this.actual.filter(selector).length
|
||||
},
|
||||
|
||||
toBeDisabled: function(selector){
|
||||
return this.actual.is(':disabled')
|
||||
},
|
||||
|
||||
toBeFocused: function(selector) {
|
||||
return this.actual[0] === this.actual[0].ownerDocument.activeElement
|
||||
},
|
||||
|
||||
toHandle: function(event) {
|
||||
|
||||
var events = $._data(this.actual.get(0), "events")
|
||||
|
||||
if(!events || !event || typeof event !== "string") {
|
||||
return false
|
||||
}
|
||||
|
||||
var namespaces = event.split(".")
|
||||
var eventType = namespaces.shift()
|
||||
var sortedNamespaces = namespaces.slice(0).sort()
|
||||
var namespaceRegExp = new RegExp("(^|\\.)" + sortedNamespaces.join("\\.(?:.*\\.)?") + "(\\.|$)")
|
||||
|
||||
if(events[eventType] && namespaces.length) {
|
||||
for(var i = 0; i < events[eventType].length; i++) {
|
||||
var namespace = events[eventType][i].namespace
|
||||
if(namespaceRegExp.test(namespace)) {
|
||||
return true
|
||||
}
|
||||
}
|
||||
} else {
|
||||
return events[eventType] && events[eventType].length > 0
|
||||
}
|
||||
},
|
||||
|
||||
// tests the existence of a specific event binding + handler
|
||||
toHandleWith: function(eventName, eventHandler) {
|
||||
var normalizedEventName = eventName.split('.')[0]
|
||||
var stack = $._data(this.actual.get(0), "events")[normalizedEventName]
|
||||
for (var i = 0; i < stack.length; i++) {
|
||||
if (stack[i].handler == eventHandler) return true
|
||||
}
|
||||
return false
|
||||
}
|
||||
}
|
||||
|
||||
var hasProperty = function(actualValue, expectedValue) {
|
||||
if (expectedValue === undefined) return actualValue !== undefined
|
||||
return actualValue == expectedValue
|
||||
}
|
||||
|
||||
var bindMatcher = function(methodName) {
|
||||
var builtInMatcher = jasmine.Matchers.prototype[methodName]
|
||||
|
||||
jasmine.JQuery.matchersClass[methodName] = function() {
|
||||
if (this.actual
|
||||
&& (this.actual instanceof $
|
||||
|| jasmine.isDomNode(this.actual))) {
|
||||
this.actual = $(this.actual)
|
||||
var result = jQueryMatchers[methodName].apply(this, arguments)
|
||||
var element
|
||||
if (this.actual.get && (element = this.actual.get()[0]) && !$.isWindow(element) && element.tagName !== "HTML")
|
||||
this.actual = jasmine.JQuery.elementToString(this.actual)
|
||||
return result
|
||||
}
|
||||
|
||||
if (builtInMatcher) {
|
||||
return builtInMatcher.apply(this, arguments)
|
||||
}
|
||||
|
||||
return false
|
||||
}
|
||||
}
|
||||
|
||||
for(var methodName in jQueryMatchers) {
|
||||
bindMatcher(methodName)
|
||||
}
|
||||
}()
|
||||
|
||||
beforeEach(function() {
|
||||
this.addMatchers(jasmine.JQuery.matchersClass)
|
||||
this.addMatchers({
|
||||
toHaveBeenTriggeredOn: function(selector) {
|
||||
this.message = function() {
|
||||
return [
|
||||
"Expected event " + this.actual + " to have been triggered on " + selector,
|
||||
"Expected event " + this.actual + " not to have been triggered on " + selector
|
||||
]
|
||||
}
|
||||
return jasmine.JQuery.events.wasTriggered(selector, this.actual)
|
||||
}
|
||||
})
|
||||
this.addMatchers({
|
||||
toHaveBeenTriggered: function(){
|
||||
var eventName = this.actual.eventName,
|
||||
selector = this.actual.selector
|
||||
this.message = function() {
|
||||
return [
|
||||
"Expected event " + eventName + " to have been triggered on " + selector,
|
||||
"Expected event " + eventName + " not to have been triggered on " + selector
|
||||
]
|
||||
}
|
||||
return jasmine.JQuery.events.wasTriggered(selector, eventName)
|
||||
}
|
||||
})
|
||||
this.addMatchers({
|
||||
toHaveBeenTriggeredOnAndWith: function() {
|
||||
var selector = arguments[0],
|
||||
expectedArgs = arguments[1],
|
||||
wasTriggered = jasmine.JQuery.events.wasTriggered(selector, this.actual)
|
||||
this.message = function() {
|
||||
if (wasTriggered) {
|
||||
var actualArgs = jasmine.JQuery.events.args(selector, this.actual, expectedArgs)[1]
|
||||
return [
|
||||
"Expected event " + this.actual + " to have been triggered with " + jasmine.pp(expectedArgs) + " but it was triggered with " + jasmine.pp(actualArgs),
|
||||
"Expected event " + this.actual + " not to have been triggered with " + jasmine.pp(expectedArgs) + " but it was triggered with " + jasmine.pp(actualArgs)
|
||||
]
|
||||
} else {
|
||||
return [
|
||||
"Expected event " + this.actual + " to have been triggered on " + selector,
|
||||
"Expected event " + this.actual + " not to have been triggered on " + selector
|
||||
]
|
||||
}
|
||||
}
|
||||
return wasTriggered && jasmine.JQuery.events.wasTriggeredWith(selector, this.actual, expectedArgs, this.env)
|
||||
}
|
||||
})
|
||||
this.addMatchers({
|
||||
toHaveBeenPreventedOn: function(selector) {
|
||||
this.message = function() {
|
||||
return [
|
||||
"Expected event " + this.actual + " to have been prevented on " + selector,
|
||||
"Expected event " + this.actual + " not to have been prevented on " + selector
|
||||
]
|
||||
}
|
||||
return jasmine.JQuery.events.wasPrevented(selector, this.actual)
|
||||
}
|
||||
})
|
||||
this.addMatchers({
|
||||
toHaveBeenPrevented: function() {
|
||||
var eventName = this.actual.eventName,
|
||||
selector = this.actual.selector
|
||||
this.message = function() {
|
||||
return [
|
||||
"Expected event " + eventName + " to have been prevented on " + selector,
|
||||
"Expected event " + eventName + " not to have been prevented on " + selector
|
||||
]
|
||||
}
|
||||
return jasmine.JQuery.events.wasPrevented(selector, eventName)
|
||||
}
|
||||
})
|
||||
this.addMatchers({
|
||||
toHaveBeenStoppedOn: function(selector) {
|
||||
this.message = function() {
|
||||
return [
|
||||
"Expected event " + this.actual + " to have been stopped on " + selector,
|
||||
"Expected event " + this.actual + " not to have been stopped on " + selector
|
||||
]
|
||||
}
|
||||
return jasmine.JQuery.events.wasStopped(selector, this.actual)
|
||||
}
|
||||
})
|
||||
this.addMatchers({
|
||||
toHaveBeenStopped: function() {
|
||||
var eventName = this.actual.eventName,
|
||||
selector = this.actual.selector
|
||||
this.message = function() {
|
||||
return [
|
||||
"Expected event " + eventName + " to have been stopped on " + selector,
|
||||
"Expected event " + eventName + " not to have been stopped on " + selector
|
||||
]
|
||||
}
|
||||
return jasmine.JQuery.events.wasStopped(selector, eventName)
|
||||
}
|
||||
})
|
||||
jasmine.getEnv().addEqualityTester(function(a, b) {
|
||||
if(a instanceof jQuery && b instanceof jQuery) {
|
||||
if(a.size() != b.size()) {
|
||||
return jasmine.undefined
|
||||
}
|
||||
else if(a.is(b)) {
|
||||
return true
|
||||
}
|
||||
}
|
||||
return jasmine.undefined
|
||||
|
||||
})
|
||||
});
|
||||
|
||||
afterEach(function() {
|
||||
jasmine.getFixtures().cleanUp()
|
||||
jasmine.getStyleFixtures().cleanUp()
|
||||
jasmine.JQuery.events.cleanUp()
|
||||
});
|
|
@ -1,2 +1,4 @@
|
|||
node_modules/*
|
||||
coverage/*
|
||||
logs/*
|
||||
!.gitkeep
|
||||
|
|
|
@ -1,14 +0,0 @@
|
|||
language: node_js
|
||||
node_js:
|
||||
- 0.8
|
||||
|
||||
before_script:
|
||||
- export DISPLAY=:99.0
|
||||
- sh -e /etc/init.d/xvfb start
|
||||
- npm install --quiet -g karma
|
||||
- ./scripts/web-server.js > /dev/null &
|
||||
- sleep 1 # give server time to start
|
||||
|
||||
script:
|
||||
- karma start config/karma.conf.js --no-auto-watch --single-run --reporters=dots --browsers=Firefox
|
||||
- karma start config/karma-e2e.conf.js --reporters=dots --browsers=Firefox
|
|
@ -0,0 +1,12 @@
|
|||
{
|
||||
"name": "treeherder-ui",
|
||||
"description": "The UI portion of Mozilla Treeherder",
|
||||
"devDependencies": {
|
||||
"phantomjs" : "*",
|
||||
"karma" : "*",
|
||||
"karma-junit-reporter" : "*",
|
||||
"karma-coverage" : "*",
|
||||
"karma-jasmine" : "*",
|
||||
"karma-ng-scenario" : "*"
|
||||
}
|
||||
}
|
Загрузка…
Ссылка в новой задаче