@@ -2,10 +2,10 @@ function Library(supportCodeDefinition) {
2
2
var Cucumber = require ( '../../cucumber' ) ;
3
3
4
4
var listeners = [ ] ;
5
- var stepDefinitions = Cucumber . Type . Collection ( ) ;
6
- var aroundHooks = Cucumber . Type . Collection ( ) ;
7
- var beforeHooks = Cucumber . Type . Collection ( ) ;
8
- var afterHooks = Cucumber . Type . Collection ( ) ;
5
+ var stepDefinitions = [ ] ;
6
+ var aroundHooks = [ ] ;
7
+ var beforeHooks = [ ] ;
8
+ var afterHooks = [ ] ;
9
9
var World = function World ( ) { } ;
10
10
var defaultTimeout = 5 * 1000 ;
11
11
@@ -41,13 +41,9 @@ function Library(supportCodeDefinition) {
41
41
} ,
42
42
43
43
lookupHooksByScenario : function lookupHooksByScenario ( hooks , scenario ) {
44
- var matchingHooks = Cucumber . Type . Collection ( ) ;
45
- hooks . forEach ( function ( hook ) {
46
- if ( hook . appliesToScenario ( scenario ) ) {
47
- matchingHooks . add ( hook ) ;
48
- }
44
+ return hooks . filter ( function ( hook ) {
45
+ return hook . appliesToScenario ( scenario ) ;
49
46
} ) ;
50
- return matchingHooks ;
51
47
} ,
52
48
53
49
lookupStepDefinitionByName : function lookupStepDefinitionByName ( name ) {
@@ -70,21 +66,21 @@ function Library(supportCodeDefinition) {
70
66
var tagGroupStrings = Cucumber . Util . Arguments ( arguments ) ;
71
67
var code = tagGroupStrings . pop ( ) ;
72
68
var hook = Cucumber . SupportCode . AroundHook ( code , { tags : tagGroupStrings } ) ;
73
- aroundHooks . add ( hook ) ;
69
+ aroundHooks . push ( hook ) ;
74
70
} ,
75
71
76
72
defineBeforeHook : function defineBeforeHook ( ) {
77
73
var tagGroupStrings = Cucumber . Util . Arguments ( arguments ) ;
78
74
var code = tagGroupStrings . pop ( ) ;
79
75
var hook = Cucumber . SupportCode . Hook ( code , { tags : tagGroupStrings } ) ;
80
- beforeHooks . add ( hook ) ;
76
+ beforeHooks . push ( hook ) ;
81
77
} ,
82
78
83
79
defineAfterHook : function defineAfterHook ( ) {
84
80
var tagGroupStrings = Cucumber . Util . Arguments ( arguments ) ;
85
81
var code = tagGroupStrings . pop ( ) ;
86
82
var hook = Cucumber . SupportCode . Hook ( code , { tags : tagGroupStrings } ) ;
87
- afterHooks . add ( hook ) ;
83
+ afterHooks . push ( hook ) ;
88
84
} ,
89
85
90
86
defineStep : function defineStep ( name , options , code ) {
@@ -93,7 +89,7 @@ function Library(supportCodeDefinition) {
93
89
options = { } ;
94
90
}
95
91
var stepDefinition = Cucumber . SupportCode . StepDefinition ( name , options , code ) ;
96
- stepDefinitions . add ( stepDefinition ) ;
92
+ stepDefinitions . push ( stepDefinition ) ;
97
93
} ,
98
94
99
95
registerListener : function registerListener ( listener ) {
0 commit comments