bitbake: toastergui: Add missing files from 1c2f6b9b7b9e700146944b9d6d2114e0d014ee81
(Bitbake rev: cf2b6b621cb483aa1a1a66c09fc431efc207c91e) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
parent
c1df471fea
commit
1e9ac4c5cc
|
@ -0,0 +1,175 @@
|
|||
"use strict";
|
||||
/* Unit tests for Toaster's JS */
|
||||
|
||||
/* libtoaster tests */
|
||||
|
||||
QUnit.test("Layer alert notification", function(assert) {
|
||||
var layer = {
|
||||
"layerdetailurl":"/toastergui/project/1/layer/22",
|
||||
"vcs_url":"git://example.com/example.git",
|
||||
"detail":"[ git://example.com/example.git | master ]",
|
||||
"vcs_reference":"master",
|
||||
"id": 22,
|
||||
"name":"meta-example"
|
||||
};
|
||||
|
||||
var correctResponse = "You have added <strong>3</strong> layers to your project: <a id=\"layer-affected-name\" href=\"/toastergui/project/1/layer/22\">meta-example</a> and its dependencies <a href=\"/toastergui/project/1/layer/9\" data-original-title=\"\" title=\"\">meta-example-two</a>, <a href=\"/toastergui/project/1/layer/9\" data-original-title=\"\" title=\"\">meta-example-three</a>";
|
||||
|
||||
var layerDepsList = [
|
||||
{
|
||||
"layerdetailurl":"/toastergui/project/1/layer/9",
|
||||
"vcs_url":"git://example.com/example.git",
|
||||
"detail":"[ git://example.com/example.git | master ]",
|
||||
"vcs_reference":"master",
|
||||
"id": 9,
|
||||
"name":"meta-example-two"
|
||||
},
|
||||
{
|
||||
"layerdetailurl":"/toastergui/project/1/layer/9",
|
||||
"vcs_url":"git://example.com/example.git",
|
||||
"detail":"[ git://example.com/example.git | master ]",
|
||||
"vcs_reference":"master",
|
||||
"id": 10,
|
||||
"name":"meta-example-three"
|
||||
},
|
||||
];
|
||||
|
||||
var msg = libtoaster.makeLayerAddRmAlertMsg(layer, layerDepsList, true);
|
||||
var test = $("<div></div>");
|
||||
|
||||
test.html(msg);
|
||||
|
||||
assert.equal(test.children("strong").text(), "3");
|
||||
assert.equal(test.children("a").length, 3);
|
||||
});
|
||||
|
||||
QUnit.test("Project info", function(assert){
|
||||
var done = assert.async();
|
||||
libtoaster.getProjectInfo(libtoaster.ctx.projectPageUrl, function(prjInfo){
|
||||
assert.ok(prjInfo.machine.name);
|
||||
assert.ok(prjInfo.releases.length > 0);
|
||||
assert.ok(prjInfo.layers.length > 0);
|
||||
assert.ok(prjInfo.freqtargets);
|
||||
assert.ok(prjInfo.release);
|
||||
done();
|
||||
});
|
||||
});
|
||||
|
||||
QUnit.test("Show notification", function(assert){
|
||||
var msg = "Testing";
|
||||
var element = $("#change-notification-msg");
|
||||
|
||||
libtoaster.showChangeNotification(msg);
|
||||
|
||||
assert.equal(element.text(), msg);
|
||||
assert.ok(element.is(":visible"));
|
||||
|
||||
$("#change-notification").hide();
|
||||
});
|
||||
|
||||
var layer = {
|
||||
"id": 91,
|
||||
"name": "meta-crystalforest",
|
||||
"layerdetailurl": "/toastergui/project/4/layer/91"
|
||||
};
|
||||
|
||||
QUnit.test("Add layer", function(assert){
|
||||
var done = assert.async();
|
||||
|
||||
/* Wait for the modal to be added to the dom */
|
||||
var checkModal = setInterval(function(){
|
||||
if ($("#dependencies-modal").length > 0) {
|
||||
$("#dependencies-modal .btn-primary").click();
|
||||
clearInterval(checkModal);
|
||||
}
|
||||
}, 200);
|
||||
|
||||
libtoaster.addRmLayer(layer, true, function(deps){
|
||||
assert.equal(deps.length, 1);
|
||||
done();
|
||||
});
|
||||
|
||||
});
|
||||
|
||||
QUnit.test("Rm layer", function(assert){
|
||||
var done = assert.async();
|
||||
|
||||
libtoaster.addRmLayer(layer, false, function(deps){
|
||||
assert.equal(deps.length, 0);
|
||||
done();
|
||||
});
|
||||
|
||||
});
|
||||
|
||||
QUnit.test("Parse url params", function(assert){
|
||||
var params = libtoaster.parseUrlParams();
|
||||
assert.ok(params);
|
||||
});
|
||||
|
||||
QUnit.test("Dump url params", function(assert){
|
||||
var params = libtoaster.dumpsUrlParams();
|
||||
assert.ok(params);
|
||||
});
|
||||
|
||||
QUnit.test("Make typeaheads", function(assert){
|
||||
var layersT = $("#layers");
|
||||
var machinesT = $("#machines");
|
||||
var projectsT = $("#projects");
|
||||
var recipesT = $("#recipes");
|
||||
|
||||
libtoaster.makeTypeahead(layersT,
|
||||
libtoaster.ctx.layersTypeAheadUrl, {}, function(){});
|
||||
|
||||
libtoaster.makeTypeahead(machinesT,
|
||||
libtoaster.ctx.machinesTypeAheadUrl, {}, function(){});
|
||||
|
||||
libtoaster.makeTypeahead(projectsT,
|
||||
libtoaster.ctx.projectsTypeAheadUrl, {}, function(){});
|
||||
|
||||
libtoaster.makeTypeahead(recipesT,
|
||||
libtoaster.ctx.recipesTypeAheadUrl, {}, function(){});
|
||||
|
||||
assert.ok(recipesT.data('typeahead'));
|
||||
assert.ok(layersT.data('typeahead'));
|
||||
assert.ok(projectsT.data('typeahead'));
|
||||
assert.ok(recipesT.data('typeahead'));
|
||||
});
|
||||
|
||||
|
||||
|
||||
/* Page init functions */
|
||||
|
||||
QUnit.test("Import layer page init", function(assert){
|
||||
assert.throws(importLayerPageInit());
|
||||
});
|
||||
|
||||
QUnit.test("Project page init", function(assert){
|
||||
assert.throws(projectPageInit());
|
||||
});
|
||||
|
||||
QUnit.test("Layer details page init", function(assert){
|
||||
assert.throws(layerDetailsPageInit());
|
||||
});
|
||||
|
||||
QUnit.test("Layer btns init", function(assert){
|
||||
assert.throws(layerBtnsInit({ projectLayers : [] }));
|
||||
});
|
||||
|
||||
QUnit.test("Table init", function(assert){
|
||||
assert.throws(tableInit({ url : tableUrl }));
|
||||
});
|
||||
|
||||
$(document).ajaxError(function(event, jqxhr, settings, errMsg){
|
||||
if (errMsg === 'abort')
|
||||
return;
|
||||
|
||||
QUnit.test("Ajax error", function(assert){
|
||||
assert.notOk(jqxhr.responseText);
|
||||
});
|
||||
});
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
|
@ -0,0 +1,39 @@
|
|||
{% extends "base.html" %}
|
||||
{% load projecttags %}
|
||||
{% load humanize %}
|
||||
{% load static %}
|
||||
{% block pagecontent %}
|
||||
|
||||
<link rel="stylesheet" href="//code.jquery.com/qunit/qunit-1.18.0.css" />
|
||||
|
||||
<script src="//code.jquery.com/qunit/qunit-1.18.0.js"></script>
|
||||
|
||||
<script src="{% static 'js/layerDepsModal.js' %}"></script>
|
||||
<script src="{% static 'js/projectpage.js' %}"></script>
|
||||
|
||||
<script src="{% static 'js/bootstrap.min.js' %}"></script>
|
||||
<script src="{% static 'js/filtersnippet.js' %}"></script>
|
||||
<script src="{% static 'js/importlayer.js' %}"></script>
|
||||
<script src="{% static 'js/prettify.js' %}"></script>
|
||||
<script src="{% static 'js/layerBtn.js' %}"></script>
|
||||
<script src="{% static 'js/layerDepsModal.js' %}"></script>
|
||||
<script src="{% static 'js/projectpage.js' %}"></script>
|
||||
<script src="{% static 'js/layerdetails.js' %}"></script>
|
||||
<script src="{% static 'js/table.js' %}"></script>
|
||||
|
||||
<script>
|
||||
var tableUrl = '{% url 'projectlayers' project.pk %}';
|
||||
</script>
|
||||
|
||||
<script src="{% static 'js/tests/test.js' %}"></script>
|
||||
|
||||
<div id="qunit"></div>
|
||||
|
||||
<input type="text" id="layers" placeholder="layers" ></input>
|
||||
<input type="text" id="recipes" placeholder="recipes"></input>
|
||||
<input type="text" id="projects" placeholder="projects"></input>
|
||||
<input type="text" id="machines" placeholder="machines"></input>
|
||||
|
||||
{% endblock %}
|
||||
|
||||
|
Loading…
Reference in New Issue