@@ -57,12 +57,12 @@ type (
57
57
suite.Suite
58
58
// override suite.Suite.Assertions with require.Assertions; this means that s.NotNil(nil) will stop the test, not merely log an error
59
59
* require.Assertions
60
- controller * gomock.Controller
61
- visibilityStore * visibilityStore
62
- mockESClient * client.MockClient
63
- mockProcessor * MockProcessor
64
- mockMetricsHandler * metrics.MockHandler
65
- mockSearchAttributesMapper * searchattribute.MockMapper
60
+ controller * gomock.Controller
61
+ visibilityStore * visibilityStore
62
+ mockESClient * client.MockClient
63
+ mockProcessor * MockProcessor
64
+ mockMetricsHandler * metrics.MockHandler
65
+ mockSearchAttributesMapperProvider * searchattribute.MockMapperProvider
66
66
}
67
67
)
68
68
@@ -126,12 +126,12 @@ func (s *ESVisibilitySuite) SetupTest() {
126
126
s .mockMetricsHandler .EXPECT ().WithTags (metrics .OperationTag (metrics .ElasticsearchVisibility )).Return (s .mockMetricsHandler ).AnyTimes ()
127
127
s .mockProcessor = NewMockProcessor (s .controller )
128
128
s .mockESClient = client .NewMockClient (s .controller )
129
- s .mockSearchAttributesMapper = searchattribute .NewMockMapper (s .controller )
129
+ s .mockSearchAttributesMapperProvider = searchattribute .NewMockMapperProvider (s .controller )
130
130
s .visibilityStore = NewVisibilityStore (
131
131
s .mockESClient ,
132
132
testIndex ,
133
133
searchattribute .NewTestProvider (),
134
- nil ,
134
+ searchattribute . NewTestMapperProvider ( nil ) ,
135
135
s .mockProcessor ,
136
136
esProcessorAckTimeout ,
137
137
visibilityDisableOrderByClause ,
@@ -649,15 +649,10 @@ func (s *ESVisibilitySuite) Test_convertQuery() {
649
649
}
650
650
651
651
func (s * ESVisibilitySuite ) Test_convertQuery_Mapper () {
652
- s .mockSearchAttributesMapper .EXPECT ().GetFieldName (gomock .Any (), testNamespace .String ()).DoAndReturn (
653
- func (alias string , namespace string ) (string , error ) {
654
- if strings .HasPrefix (alias , "AliasFor" ) {
655
- return strings .TrimPrefix (alias , "AliasFor" ), nil
656
- }
657
- return "" , serviceerror .NewInvalidArgument ("mapper error" )
658
- }).AnyTimes ()
652
+ s .mockSearchAttributesMapperProvider .EXPECT ().GetMapper (testNamespace ).
653
+ Return (& searchattribute.TestMapper {}, nil ).AnyTimes ()
659
654
660
- s .visibilityStore .searchAttributesMapper = s .mockSearchAttributesMapper
655
+ s .visibilityStore .searchAttributesMapperProvider = s .mockSearchAttributesMapperProvider
661
656
662
657
query := `WorkflowId = 'wid'`
663
658
qry , srt , err := s .visibilityStore .convertQuery (testNamespace , testNamespaceID , query )
@@ -707,16 +702,14 @@ func (s *ESVisibilitySuite) Test_convertQuery_Mapper() {
707
702
s .Error (err )
708
703
s .ErrorAs (err , & invalidArgumentErr )
709
704
s .EqualError (err , "invalid query: unable to convert 'order by' column name: invalid search attribute: AliasForUnknownField" )
710
- s .visibilityStore .searchAttributesMapper = nil
705
+ s .visibilityStore .searchAttributesMapperProvider = nil
711
706
}
712
707
713
708
func (s * ESVisibilitySuite ) Test_convertQuery_Mapper_Error () {
714
- s .mockSearchAttributesMapper .EXPECT ().GetFieldName (gomock .Any (), testNamespace .String ()).DoAndReturn (
715
- func (fieldName string , namespace string ) (string , error ) {
716
- return "" , serviceerror .NewInvalidArgument ("mapper error" )
717
- }).AnyTimes ()
709
+ s .mockSearchAttributesMapperProvider .EXPECT ().GetMapper (testNamespace ).
710
+ Return (& searchattribute.TestMapper {}, nil ).AnyTimes ()
718
711
719
- s .visibilityStore .searchAttributesMapper = s .mockSearchAttributesMapper
712
+ s .visibilityStore .searchAttributesMapperProvider = s .mockSearchAttributesMapperProvider
720
713
721
714
query := `WorkflowId = 'wid'`
722
715
qry , srt , err := s .visibilityStore .convertQuery (testNamespace , testNamespaceID , query )
@@ -743,7 +736,7 @@ func (s *ESVisibilitySuite) Test_convertQuery_Mapper_Error() {
743
736
s .ErrorAs (err , & invalidArgumentErr )
744
737
s .EqualError (err , "mapper error" )
745
738
746
- s .visibilityStore .searchAttributesMapper = nil
739
+ s .visibilityStore .searchAttributesMapperProvider = nil
747
740
}
748
741
749
742
func (s * ESVisibilitySuite ) TestGetListWorkflowExecutionsResponse () {
@@ -966,37 +959,27 @@ func (s *ESVisibilitySuite) TestParseESDoc_SearchAttributes_WithMapper() {
966
959
"CustomIntField": [111,222],
967
960
"CustomBoolField": true,
968
961
"UnknownField": "random"}` )
969
- s .visibilityStore .searchAttributesMapper = s .mockSearchAttributesMapper
962
+ s .visibilityStore .searchAttributesMapperProvider = s .mockSearchAttributesMapperProvider
970
963
971
- s .mockSearchAttributesMapper .EXPECT ().GetAlias (gomock .Any (), testNamespace .String ()).DoAndReturn (
972
- func (fieldName string , namespace string ) (string , error ) {
973
- return "AliasOf" + fieldName , nil
974
- }).Times (6 )
964
+ s .mockSearchAttributesMapperProvider .EXPECT ().GetMapper (testNamespace ).
965
+ Return (& searchattribute.TestMapper {}, nil ).AnyTimes ()
975
966
976
967
info , err := s .visibilityStore .parseESDoc ("" , docSource , searchattribute .TestNameTypeMap , testNamespace )
977
968
s .NoError (err )
978
969
s .NotNil (info )
979
970
980
971
s .Len (info .SearchAttributes .GetIndexedFields (), 7 )
981
972
s .Contains (info .SearchAttributes .GetIndexedFields (), "TemporalChangeVersion" )
982
- s .Contains (info .SearchAttributes .GetIndexedFields (), "AliasOfCustomKeywordField " )
983
- s .Contains (info .SearchAttributes .GetIndexedFields (), "AliasOfCustomTextField " )
984
- s .Contains (info .SearchAttributes .GetIndexedFields (), "AliasOfCustomDatetimeField " )
985
- s .Contains (info .SearchAttributes .GetIndexedFields (), "AliasOfCustomDoubleField " )
986
- s .Contains (info .SearchAttributes .GetIndexedFields (), "AliasOfCustomBoolField " )
987
- s .Contains (info .SearchAttributes .GetIndexedFields (), "AliasOfCustomIntField " )
973
+ s .Contains (info .SearchAttributes .GetIndexedFields (), "AliasForCustomKeywordField " )
974
+ s .Contains (info .SearchAttributes .GetIndexedFields (), "AliasForCustomTextField " )
975
+ s .Contains (info .SearchAttributes .GetIndexedFields (), "AliasForCustomDatetimeField " )
976
+ s .Contains (info .SearchAttributes .GetIndexedFields (), "AliasForCustomDoubleField " )
977
+ s .Contains (info .SearchAttributes .GetIndexedFields (), "AliasForCustomBoolField " )
978
+ s .Contains (info .SearchAttributes .GetIndexedFields (), "AliasForCustomIntField " )
988
979
s .NotContains (info .SearchAttributes .GetIndexedFields (), "UnknownField" )
989
980
s .Equal (enumspb .WORKFLOW_EXECUTION_STATUS_COMPLETED , info .Status )
990
981
991
- s .mockSearchAttributesMapper .EXPECT ().GetAlias (gomock .Any (), testNamespace .String ()).DoAndReturn (
992
- func (fieldName string , namespace string ) (string , error ) {
993
- return "" , serviceerror .NewUnavailable ("error" )
994
- })
995
- info , err = s .visibilityStore .parseESDoc ("" , docSource , searchattribute .TestNameTypeMap , testNamespace )
996
- s .Error (err )
997
- s .Nil (info )
998
-
999
- s .visibilityStore .searchAttributesMapper = nil
982
+ s .visibilityStore .searchAttributesMapperProvider = nil
1000
983
}
1001
984
1002
985
func (s * ESVisibilitySuite ) TestListWorkflowExecutions () {
0 commit comments