11package converters
22
33import (
4- "fmt"
54 "sort"
6- "time"
75
86 "github.com/gooddata/gooddata-neobackstop/browser"
97 "github.com/gooddata/gooddata-neobackstop/internals"
108 "github.com/gooddata/gooddata-neobackstop/scenario"
119 "github.com/gooddata/gooddata-neobackstop/viewport"
1210)
1311
14- func convertSelectorOrDelay (value interface {}) * internals.SelectorThenDelay {
15- if value == nil {
16- return nil
17- }
18-
19- var sod internals.SelectorThenDelay
20- // check type
21- switch piw := value .(type ) {
22- case string :
23- // legacy format: selector
24- sod = internals.SelectorThenDelay {
25- Selector : & piw ,
26- }
27- case float64 :
28- // legacy format: timeout
29- d := time .Duration (piw ) * time .Millisecond
30- sod = internals.SelectorThenDelay {
31- Delay : & d ,
32- }
33- case map [string ]interface {}:
34- // new format: object with selector, delay
35- if v , ok := piw ["selector" ].(string ); ok {
36- sod .Selector = & v
37- }
38- if v , ok := piw ["delay" ].(float64 ); ok {
39- d := time .Duration (v ) * time .Millisecond
40- sod .Delay = & d
41- }
42- default :
43- fmt .Println (piw )
44- panic ("Unknown PostInteractionWait type" )
45- }
46-
47- return & sod
48- }
49-
5012func scenarioToInternal (b browser.Browser , v viewport.Viewport , s scenario.Scenario ) internals.Scenario {
5113 return internals.Scenario {
5214 Browser : b ,
@@ -62,7 +24,7 @@ func scenarioToInternal(b browser.Browser, v viewport.Viewport, s scenario.Scena
6224 HoverSelectors : s .HoverSelectors ,
6325 ClickSelector : s .ClickSelector ,
6426 ClickSelectors : s .ClickSelectors ,
65- PostInteractionWait : convertSelectorOrDelay ( s .PostInteractionWait ) ,
27+ PostInteractionWait : s .PostInteractionWait ,
6628 ScrollToSelector : s .ScrollToSelector ,
6729 MisMatchThreshold : s .MisMatchThreshold ,
6830 }
0 commit comments