@@ -2,32 +2,38 @@ var neo4j = require("../../../../lib/v1");
2
2
3
3
module . exports = function ( ) {
4
4
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 ) {
6
17
this . driver = neo4j . driver ( "bolt://localhost" ) ;
7
18
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
- }
13
19
callback ( ) ;
14
20
} ) ;
15
21
16
22
this . After ( function ( scenario , callback ) {
17
23
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 )
21
25
}
22
26
callback ( ) ;
23
27
} ) ;
24
28
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" ) ;
29
34
}
35
+ return process . exit ( 2 ) ;
30
36
}
31
- return false ;
32
- }
37
+ callback ( ) ;
38
+ } ) ;
33
39
}
0 commit comments