-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathAssert.js
More file actions
81 lines (72 loc) · 2.75 KB
/
Copy pathAssert.js
File metadata and controls
81 lines (72 loc) · 2.75 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
class Assert {
static function AreEqual(expected, actual, testDetails, message) {
var testIdentifier = CreateTestIdentifier(message);
var result = AreEqualCheck(testIdentifier, expected, actual);
if(result.success == false) {
testDetails.Summary.FailedAsserts += 1;
}
testDetails.Summary.TotalAsserts += 1;
LogTest(result, testDetails.Context.Component, testDetails.Context.Log);
return [result];
}
private static function CreateTestIdentifier(message) {
var caller = new System.Diagnostics.StackFrame(2).GetMethod().Name;
var testIdentifier = caller + " : ";
if(message != null) {
testIdentifier += message + " : ";
}
return testIdentifier;
}
private static function AreEqualCheck(testIdentifier, expected, actual) {
if(expected === actual) {
return AssertIsTrue(testIdentifier);
}
else {
return AssertIsFalse(testIdentifier, expected, actual);
}
}
private static function AssertIsTrue(testIdentifier) {
var result = {};
var htmlMmessage = CreateHtmlSuccessMessage(testIdentifier);
var plainTextMmessage = CreatePlainTextSuccessMessage(testIdentifier);
result.success = true;
result.htmlMessage = htmlMmessage;
result.plainTextMessage = plainTextMmessage;
return result;
}
private static function AssertIsFalse(testIdentifier, expected, actual) {
var result = {};
var htmlMessage = CreateHtmlFailedMessage(testIdentifier, expected, actual);
var plainTextMmessage = CreatePlainTextFailedMessage(testIdentifier, expected, actual);
result.success = false;
result.htmlMessage = htmlMessage;
result.plainTextMessage = plainTextMmessage;
return result;
}
private static function CreateHtmlSuccessMessage(testIdentifier) {
return testIdentifier + "<span style='color:#009100;font-weight:bold'>Success</span><br>";
}
private static function CreateHtmlFailedMessage(testIdentifier, expected, actual) {
var htmlMessage = testIdentifier + "<span style='color:#ff0000;font-weight:bold'>Failed</span><br>";
htmlMessage += "Expected: " + expected + "<br>";
htmlMessage += "Actual: " + actual+ "<br>";
return htmlMessage;
}
private static function CreatePlainTextSuccessMessage(testIdentifier) {
return testIdentifier + "Success";
}
private static function CreatePlainTextFailedMessage(testIdentifier, expected, actual) {
var plainTextMmessage = testIdentifier + "Failed\n";
plainTextMmessage += "Expected: " + expected + "\n";
plainTextMmessage += "Actual: " + actual + "\n";
return plainTextMmessage;
}
private static function LogTest(result, text, log) {
if(Tests_Config.WriteToText) {
text.Output.Append(result.htmlMessage);
}
if(Tests_Config.WriteToLog) {
log.LogDebug(result.plainTextMessage);
}
}
}