808
}
809
810
>
func (s *visibilitySuite) TestSelect_MinStartTime_MaxStartTime_WorkflowTypeName_StatusClose_Single() {
visibility.go
811
>
pageSize := 1
812
>
813
>
namespaceID := primitives.NewUUID()
814
>
runID := primitives.NewUUID()
815
>
workflowTypeName := shuffle.String(testVisibilityWorkflowTypeName)
816
>
workflowID := shuffle.String(testVisibilityWorkflowID)
817
>
startTime := s.now()
818
>
executionTime := startTime.Add(time.Second)
819
>
status := int32(enumspb.WORKFLOW_EXECUTION_STATUS_COMPLETED)
820
>
closeTime := executionTime.Add(time.Second)
821
>
historyLength := rand.Int63()
822
>
823
>
visibility := s.newRandomVisibilityRow(
824
>
namespaceID,
825
>
runID,
826
>
workflowTypeName,
827
>
workflowID,
828
>
startTime,
829
>
executionTime,
830
>
status,
831
>
new(closeTime),
832
>
new(historyLength),
833
>
)
834
>
result, err := s.store.ReplaceIntoVisibility(newVisibilityContext(), &visibility)
835
>
s.NoError(err)
836
>
rowsAffected, err := result.RowsAffected()
837
>
s.NoError(err)
838
>
s.Equal(1, int(rowsAffected))
839
>
840
>
minStartTime := closeTime
841
>
maxStartTime := closeTime
842
>
selectFilter := sqlplugin.VisibilitySelectFilter{
843
>
NamespaceID: namespaceID.String(),
844
>
WorkflowID: nil,
845
>
RunID: new(""),
846
>
WorkflowTypeName: new(workflowTypeName),
847
>
MinTime: new(minStartTime),
848
>
MaxTime: new(maxStartTime),
849
>
Status: int32(enumspb.WORKFLOW_EXECUTION_STATUS_UNSPECIFIED),
850
>
PageSize: new(pageSize),
851
>
}
852
>
rows, err := s.store.SelectFromVisibility(newVisibilityContext(), selectFilter)
853
>
s.NoError(err)
854
>
for index := range rows {
855
>
rows[index].NamespaceID = namespaceID.String()
856
>
}
857
>
s.Equal([]sqlplugin.VisibilityRow{visibility}, rows)
858
}
859