blob: 759c633910139f6c38b8d4f565906c28e3146f34 [file] [log] [blame]
<html>
<head>
<title>taskspec-popup-sk demo</title>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, minimum-scale=1.0, initial-scale=1, user-scalable=yes">
<script src="/res/common/js/common.js"></script>
<script src="/res/imp/bower_components/webcomponentsjs/webcomponents-lite.js"></script>
<script src="/res/imp/sinon-1.17.2.js"></script>
<script type="text/javascript">
var server = sinon.fakeServer.create();
server.autoRespond = true;
var comments = [{
flaky: false,
id: "0",
ignoreFailure: true,
message: "Example Comment",
time: "Mon Sep 25 2017 07:50:06 GMT-0400 (EDT)",
user: "you@google.com",
}];
var repo = "skia";
var swarming_url = "https://chromium-swarm.appspot.com";
var taskSpecName = "Build-Mac-Clang-x86_64-Debug";
function update(request, newComments) {
var popup = document.getElementById("popup");
popup.set("task_spec.comments", newComments);
comments = newComments;
return request.respond(200, {});
}
server.respondWith("POST", "/json/"+repo+"/taskSpecs/"+taskSpecName+"/comments", function(request) {
var comment = JSON.parse(request.requestBody);
comment.id = "" + comments.length;
comment.message = comment.comment;
comment.time = new Date().toString();
comment.user = "you@google.com";
comments.push(comment);
var newComments = [];
for (var i = 0; i < comments.length; i++) {
newComments.push(comments[i]);
}
return update(request, newComments);
});
var deleteCommentUrl = new RegExp("\/json\/" + repo + "\/taskSpecs\/" + taskSpecName + "\/comments\/\\d+");
server.respondWith("DELETE", deleteCommentUrl, function(request) {
var split = request.url.split("/");
var commentId = parseInt(split[split.length-1]);
var newComments = [];
for (var i = 0; i < comments.length; i++) {
if (comments[i].id != commentId) {
newComments.push(comments[i]);
}
}
return update(request, newComments);
});
// Mock out login to fake that a user is logged in
sk.Login = {
then: function(f){
f({
"Email":"test@google.com",
});
}
};
</script>
<link rel=import href="taskspec-popup-sk.html">
</head>
<body>
<h1>taskspec-popup-sk demo</h1>
<taskspec-popup-sk id="popup"></taskspec-popup-sk>
<script type="text/javascript">
var popup = document.getElementById("popup");
popup.addEventListener("reload", function() {
popup.show();
});
popup.repo = repo;
popup.swarming_url = swarming_url;
popup.set("task_spec", {
name: taskSpecName,
comments: comments,
});
popup.show();
</script>
</body>
</html>