@@ -685,6 +685,69 @@ func (s *contextTestSuite) TestConflictResolveWorkflowExecution() {
685
685
}
686
686
}
687
687
688
+ func (s * contextTestSuite ) TestAppendHistoryV2Events () {
689
+ cases := []struct {
690
+ name string
691
+ err error
692
+ domainLookupErr error
693
+ response * persistence.AppendHistoryNodesResponse
694
+ setup func ()
695
+ asserts func (* persistence.AppendHistoryNodesResponse , error )
696
+ }{
697
+ {
698
+ name : "Success" ,
699
+ response : & persistence.AppendHistoryNodesResponse {},
700
+ asserts : func (response * persistence.AppendHistoryNodesResponse , err error ) {
701
+ s .NoError (err )
702
+ s .NotNil (response )
703
+ },
704
+ },
705
+ {
706
+ name : "Domain lookup failed" ,
707
+ domainLookupErr : assert .AnError ,
708
+ asserts : func (resp * persistence.AppendHistoryNodesResponse , err error ) {
709
+ s .ErrorIs (err , assert .AnError )
710
+ },
711
+ },
712
+ {
713
+ name : "History too big" ,
714
+ response : & persistence.AppendHistoryNodesResponse {
715
+ DataBlob : persistence.DataBlob {
716
+ Data : make ([]byte , historySizeLogThreshold + 1 ),
717
+ },
718
+ },
719
+ asserts : func (resp * persistence.AppendHistoryNodesResponse , err error ) {
720
+ // We do not err on history too big here, we just log it
721
+ s .NoError (err )
722
+ s .NotNil (resp )
723
+ },
724
+ },
725
+ }
726
+
727
+ for _ , tc := range cases {
728
+ s .Run (tc .name , func () {
729
+ // Need setup the suite manually, since we are in a subtest
730
+ s .SetupTest ()
731
+ ctx := context .Background ()
732
+ request := & persistence.AppendHistoryNodesRequest {}
733
+ workflowExecution := types.WorkflowExecution {
734
+ WorkflowID : testWorkflowID ,
735
+ RunID : testWorkflowID ,
736
+ }
737
+
738
+ s .mockResource .DomainCache .EXPECT ().GetDomainName (testDomainID ).Return (testDomain , tc .domainLookupErr )
739
+ if tc .setup != nil {
740
+ tc .setup ()
741
+ }
742
+
743
+ s .mockResource .HistoryMgr .On ("AppendHistoryNodes" , ctx , mock .Anything ).Once ().Return (tc .response , tc .err )
744
+
745
+ resp , err := s .context .AppendHistoryV2Events (ctx , request , testDomainID , workflowExecution )
746
+ tc .asserts (resp , err )
747
+ })
748
+ }
749
+ }
750
+
688
751
func (s * contextTestSuite ) TestValidateAndUpdateFailoverMarkers () {
689
752
domainFailoverVersion := 100
690
753
domainCacheEntryInactiveCluster := cache .NewGlobalDomainCacheEntryForTest (
0 commit comments