@@ -559,7 +559,7 @@ func TestJobRunServiceServer(t *testing.T) {
559559 })
560560
561561 t .Run ("GetWindow" , func (t * testing.T ) {
562- t .Run ("should return the correct window date range" , func (t * testing.T ) {
562+ t .Run ("should return the correct window date range for version 1 " , func (t * testing.T ) {
563563 JobRunServiceServer := v1 .NewJobRunServiceServer (
564564 log ,
565565 nil , nil , nil , nil ,
@@ -585,6 +585,57 @@ func TestJobRunServiceServer(t *testing.T) {
585585 assert .Equal (t , "2020-11-11T00:00:00Z" , resp .GetStart ().AsTime ().Format (time .RFC3339 ))
586586 assert .Equal (t , "2020-11-12T00:00:00Z" , resp .GetEnd ().AsTime ().Format (time .RFC3339 ))
587587 })
588+ t .Run ("should fetch window date range for version 2" , func (t * testing.T ) {
589+ JobRunServiceServer := v1 .NewJobRunServiceServer (
590+ log ,
591+ nil , nil , nil , nil ,
592+ nil ,
593+ nil ,
594+ nil ,
595+ monitoringService ,
596+ nil ,
597+ )
598+
599+ scheduledAt := time .Date (2020 , 11 , 11 , 0 , 0 , 0 , 0 , time .UTC )
600+ scheduledAtTimestamp := timestamppb .New (scheduledAt )
601+ req := pb.GetWindowRequest {
602+ ScheduledAt : scheduledAtTimestamp ,
603+ Version : 2 ,
604+ Size : "24h" ,
605+ Offset : "24h" ,
606+ TruncateTo : "d" ,
607+ }
608+ resp , err := JobRunServiceServer .GetWindow (ctx , & req )
609+ assert .Nil (t , err )
610+
611+ assert .Equal (t , "2020-11-11T00:00:00Z" , resp .GetStart ().AsTime ().Format (time .RFC3339 ))
612+ assert .Equal (t , "2020-11-12T00:00:00Z" , resp .GetEnd ().AsTime ().Format (time .RFC3339 ))
613+ })
614+ t .Run ("should ensure backward compatibility for previous fetch window configurations" , func (t * testing.T ) {
615+ JobRunServiceServer := v1 .NewJobRunServiceServer (
616+ log ,
617+ nil , nil , nil , nil ,
618+ nil ,
619+ nil ,
620+ nil ,
621+ monitoringService ,
622+ nil ,
623+ )
624+
625+ scheduledAt := time .Date (2020 , 11 , 11 , 0 , 0 , 0 , 0 , time .UTC )
626+ scheduledAtTimestamp := timestamppb .New (scheduledAt )
627+ req := pb.GetWindowRequest {
628+ ScheduledAt : scheduledAtTimestamp ,
629+ Size : "24h" ,
630+ Offset : "" ,
631+ TruncateTo : "m" ,
632+ }
633+ resp , err := JobRunServiceServer .GetWindow (ctx , & req )
634+ assert .Nil (t , err )
635+
636+ assert .Equal (t , "2020-11-10T00:00:00Z" , resp .GetStart ().AsTime ().Format (time .RFC3339 ))
637+ assert .Equal (t , "2020-11-11T00:00:00Z" , resp .GetEnd ().AsTime ().Format (time .RFC3339 ))
638+ })
588639 })
589640 t .Run ("JobRun" , func (t * testing.T ) {
590641 date , err := time .Parse (AirflowDateFormat , "2022-03-25T02:00:00+00:00" )
0 commit comments