Show tests on html view
This commit is contained in:
@ -59,11 +59,14 @@ editor.on("change", function () {
|
|||||||
});
|
});
|
||||||
var nodeEnv = prodOrDev === 'production' ? 'http://www.freecodecamp.com' : 'http://localhost:3001';
|
var nodeEnv = prodOrDev === 'production' ? 'http://www.freecodecamp.com' : 'http://localhost:3001';
|
||||||
function updatePreview() {
|
function updatePreview() {
|
||||||
|
goodTests = 0;
|
||||||
var previewFrame = document.getElementById('preview');
|
var previewFrame = document.getElementById('preview');
|
||||||
var preview = previewFrame.contentDocument || previewFrame.contentWindow.document;
|
var preview = previewFrame.contentDocument || previewFrame.contentWindow.document;
|
||||||
preview.open();
|
preview.open();
|
||||||
|
$('#testSuite').empty();
|
||||||
preview.write(libraryIncludes + editor.getValue() + otherTestsForNow);
|
preview.write(libraryIncludes + editor.getValue() + otherTestsForNow);
|
||||||
preview.close();
|
preview.close();
|
||||||
|
|
||||||
}
|
}
|
||||||
setTimeout(updatePreview, 300);
|
setTimeout(updatePreview, 300);
|
||||||
|
|
||||||
@ -71,17 +74,27 @@ setTimeout(updatePreview, 300);
|
|||||||
* "post" methods
|
* "post" methods
|
||||||
*/
|
*/
|
||||||
|
|
||||||
var postSuccess = function() {
|
var postSuccess = function(data) {
|
||||||
showCompletion();
|
var testDoc = document.createElement("div");
|
||||||
|
$(testDoc)
|
||||||
|
.html("<div class='row'><div class='col-xs-2 text-center'><i class='ion-checkmark-circled big-success-icon'></i></div><div class='col-xs-10 test-output test-vertical-center wrappable'>" + JSON.parse(data) + "</div></div><div class='ten-pixel-break'/>")
|
||||||
|
.appendTo($('#testSuite'));
|
||||||
|
testSuccess();
|
||||||
};
|
};
|
||||||
|
|
||||||
var postError = function(data) {
|
var postError = function(data) {
|
||||||
console.log(Object.keys(data));
|
|
||||||
var testDoc = document.createElement("div");
|
var testDoc = document.createElement("div");
|
||||||
$(testDoc)
|
$(testDoc)
|
||||||
.html("<div class='row'><div class='col-xs-1 text-center'><i class='ion-close-circled big-error-icon'></i></div><div class='col-xs-11 test-output wrappable'>" + data + "</div></div><div class='ten-pixel-break'/>")
|
.html("<div class='row'><div class='col-xs-2 text-center'><i class='ion-close-circled big-error-icon'></i></div><div class='col-xs-10 test-output wrappable'>" + JSON.parse(data) + "</div></div><div class='ten-pixel-break'/>")
|
||||||
.prependTo($('#testSuite'))
|
.prependTo($('#testSuite'))
|
||||||
};
|
};
|
||||||
|
var goodTests = 0;
|
||||||
|
var testSuccess = function() {
|
||||||
|
goodTests++;
|
||||||
|
if (goodTests === tests.length) {
|
||||||
|
showCompletion();
|
||||||
|
}
|
||||||
|
};
|
||||||
var challengeSeed = challengeSeed || null;
|
var challengeSeed = challengeSeed || null;
|
||||||
var tests = tests || [];
|
var tests = tests || [];
|
||||||
var allSeeds = '';
|
var allSeeds = '';
|
||||||
@ -116,7 +129,7 @@ function doLinting () {
|
|||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
|
//$('#testSuite').empty();
|
||||||
function showCompletion() {
|
function showCompletion() {
|
||||||
var time = Math.floor(Date.now() / 1000) - started;
|
var time = Math.floor(Date.now() / 1000) - started;
|
||||||
ga('send', 'event', 'Challenge', 'solved', challengeName + ', Time: ' + time);
|
ga('send', 'event', 'Challenge', 'solved', challengeName + ', Time: ' + time);
|
||||||
|
@ -1,21 +1,18 @@
|
|||||||
(function() {
|
(function() {
|
||||||
var allTestsGood = true;
|
|
||||||
var expect = chai.expect;
|
var expect = chai.expect;
|
||||||
var tests = parent.tests;
|
var tests = parent.tests;
|
||||||
|
|
||||||
for (var i = 0; i < tests.length; i++) {
|
for (var i = 0; i < tests.length; i++) {
|
||||||
|
var thisTest = true;
|
||||||
try {
|
try {
|
||||||
eval(tests[i]);
|
eval(parent.tests[i]);
|
||||||
} catch (err) {
|
} catch (err) {
|
||||||
allTestsGood = false;
|
allTestsGood = false;
|
||||||
console.log('All tests are good?', allTestsGood);
|
thisTest = false;
|
||||||
parent.postError(err);
|
parent.postError(JSON.stringify(tests[i]));
|
||||||
|
|
||||||
} finally {
|
} finally {
|
||||||
if (allTestsGood) {
|
if (thisTest) {
|
||||||
console.log('You should not be able to see me if there are errors on teh screen!', allTestsGood);
|
parent.postSuccess(JSON.stringify(tests[i]));
|
||||||
parent.postSuccess();
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -40,9 +40,7 @@ block content
|
|||||||
span.ion-help-circled
|
span.ion-help-circled
|
||||||
| Less information
|
| Less information
|
||||||
br
|
br
|
||||||
ul#testSuite.list-group
|
|
||||||
br
|
|
||||||
script(src='/js/lib/coursewares/coursewaresHCJQFramework_v0.1.1.js')
|
|
||||||
- if (cc)
|
- if (cc)
|
||||||
a.btn.btn-primary.btn-lg.btn-block#next-courseware-button
|
a.btn.btn-primary.btn-lg.btn-block#next-courseware-button
|
||||||
| Go to my next challenge
|
| Go to my next challenge
|
||||||
@ -55,7 +53,8 @@ block content
|
|||||||
a.btn.btn-lg.signup-btn.btn-block(href='/login') Sign in so you can save your progress
|
a.btn.btn-lg.signup-btn.btn-block(href='/login') Sign in so you can save your progress
|
||||||
script.
|
script.
|
||||||
var userLoggedIn = false;
|
var userLoggedIn = false;
|
||||||
div.hidden
|
br
|
||||||
|
ul#testSuite.list-group
|
||||||
|
|
||||||
br
|
br
|
||||||
script(type="text/javascript").
|
script(type="text/javascript").
|
||||||
@ -88,7 +87,4 @@ block content
|
|||||||
.animated.zoomInDown.delay-half
|
.animated.zoomInDown.delay-half
|
||||||
span.completion-icon.ion-checkmark-circled.text-primary
|
span.completion-icon.ion-checkmark-circled.text-primary
|
||||||
a.animated.fadeIn.btn.btn-lg.signup-btn.btn-block(href='/login') Sign in so you can save your progress
|
a.animated.fadeIn.btn.btn-lg.signup-btn.btn-block(href='/login') Sign in so you can save your progress
|
||||||
script.
|
script(src="/js/lib/coursewares/coursewaresHCJQFramework_v0.1.1.js")
|
||||||
$(document).ready(function() {
|
|
||||||
script(src='/js/lib/coursewares/coursewaresHCJQFramework_v0.1.1.js')
|
|
||||||
});
|
|
||||||
|
Reference in New Issue
Block a user