Skip to content

Commit b763ca9

Browse files
committed
Fixed proper callback after all features
1 parent 96c34f5 commit b763ca9

File tree

1 file changed

+21
-15
lines changed

1 file changed

+21
-15
lines changed

test/v1/tck/steps/environment.js

+21-15
Original file line numberDiff line numberDiff line change
@@ -2,32 +2,38 @@ var neo4j = require("../../../../lib/v1");
22

33
module.exports = function () {
44

5-
this.Before(function( scenario, callback ) {
5+
var failedScenarios = []
6+
7+
this.Before("@reset_database", function( scenario, callback ) {
8+
this.driver = neo4j.driver("bolt://localhost");
9+
this.session = this.driver.session();
10+
this.session.run("MATCH (n) DETACH DELETE n").then( function( ) {
11+
callback();
12+
});
13+
callback();
14+
});
15+
16+
this.Before("~@reset_database", function( scenario, callback ) {
617
this.driver = neo4j.driver("bolt://localhost");
718
this.session = this.driver.session();
8-
if (findTag(scenario, '@reset_database')) {
9-
this.session.run("MATCH (n) DETACH DELETE n").then( function( ) {
10-
callback();
11-
});
12-
}
1319
callback();
1420
});
1521

1622
this.After(function (scenario, callback) {
1723
if (!scenario.isSuccessful()) {
18-
console.log("FAILED! Scenario: " + scenario.getName());
19-
console.log("With Exception: " + scenario.getException());
20-
return process.exit(2);
24+
failedScenarios.push(scenario)
2125
}
2226
callback();
2327
});
2428

25-
function findTag(scenario, tag) {
26-
for (var i in scenario.getTags()) {
27-
if (scenario.getTags()[i].getName() == tag) {
28-
return true
29+
this.registerHandler('AfterFeatures', function (event, callback) {
30+
if (failedScenarios.length) {
31+
for ( var i = 0; i < failedScenarios.length; i++) {
32+
console.log("FAILED! Scenario: " + failedScenarios[i].getName());
33+
console.log("With Exception: " + failedScenarios[i].getException() + "\n");
2934
}
35+
return process.exit(2);
3036
}
31-
return false;
32-
}
37+
callback();
38+
});
3339
}

0 commit comments

Comments
 (0)