@@ -30,11 +30,11 @@ describe('Snowplow Micro integration', () => {
30
30
name ?: string ;
31
31
} ;
32
32
33
- const makeEvent = ( button : Button , method : string ) => {
33
+ const makeEvent = ( button : Button , method : string , suffix : string = '' ) => {
34
34
return {
35
35
event : {
36
36
event : 'unstruct' ,
37
- app_id : 'button-click-tracking-' + testIdentifier ,
37
+ app_id : 'button-click-tracking-' + testIdentifier + suffix ,
38
38
page_url : `http://snowplow-js-tracker.local:8080/button-click-tracking.html?eventMethod=${ method } ` ,
39
39
unstruct_event : {
40
40
data : {
@@ -81,6 +81,11 @@ describe('Snowplow Micro integration', () => {
81
81
await ( await $ ( '#disabled-click' ) ) . click ( ) ;
82
82
await browser . pause ( 500 ) ;
83
83
84
+ await ( await $ ( '#selective' ) ) . click ( ) ;
85
+ await browser . pause ( 500 ) ;
86
+ await ( await $ ( '#selective-click' ) ) . click ( ) ;
87
+ await browser . pause ( 500 ) ;
88
+
84
89
await ( await $ ( '#enable' ) ) . click ( ) ;
85
90
await browser . pause ( 500 ) ;
86
91
await ( await $ ( '#enabled-click' ) ) . click ( ) ;
@@ -155,14 +160,29 @@ describe('Snowplow Micro integration', () => {
155
160
expect ( logContains ( ev ) ) . toBe ( false ) ;
156
161
} ) ;
157
162
163
+ it ( 'should get one selective-click' , ( ) => {
164
+ const ev1 = makeEvent ( { id : 'selective-click' , label : 'SelectiveEnabledClick' } , method ) ;
165
+ expect ( logContains ( ev1 ) ) . toBe ( false ) ;
166
+
167
+ const ev2 = makeEvent ( { id : 'selective-click' , label : 'SelectiveEnabledClick' } , method , '-second' ) ;
168
+ logContainsButtonClick ( ev2 ) ;
169
+ } ) ;
170
+
158
171
it ( 'should get enabled-click' , ( ) => {
159
172
const ev = makeEvent ( { id : 'enabled-click' , label : 'EnabledClick' } , method ) ;
160
173
logContainsButtonClick ( ev ) ;
161
174
} ) ;
162
175
163
176
it ( 'should get `final-config` as it is the last config set' , ( ) => {
164
- const ev = makeEvent ( { id : 'final-config' , classes : [ 'final-config' ] , label : 'Final Config' } , method ) ;
165
- logContainsButtonClick ( ev ) ;
177
+ const ev1 = makeEvent ( { id : 'final-config' , classes : [ 'final-config' ] , label : 'Final Config' } , method ) ;
178
+ logContainsButtonClick ( ev1 ) ;
179
+
180
+ const ev2 = makeEvent (
181
+ { id : 'final-config' , classes : [ 'final-config' ] , label : 'Final Config' } ,
182
+ method ,
183
+ '-second'
184
+ ) ;
185
+ expect ( logContains ( ev2 ) ) . toBe ( false ) ;
166
186
} ) ;
167
187
} ) ;
168
188
} ) ;
0 commit comments