[ 
https://issues.apache.org/jira/browse/BEAM-14499?focusedWorklogId=773587&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-773587
 ]

ASF GitHub Bot logged work on BEAM-14499:
-----------------------------------------

                Author: ASF GitHub Bot
            Created on: 23/May/22 16:46
            Start Date: 23/May/22 16:46
    Worklog Time Spent: 10m 
      Work Description: jrmccluskey commented on code in PR #17733:
URL: https://github.com/apache/beam/pull/17733#discussion_r879678155


##########
sdks/go/pkg/beam/testing/passert/equals.go:
##########
@@ -53,13 +54,37 @@ func EqualsList(s beam.Scope, col beam.PCollection, list 
interface{}) beam.PColl
        return equals(subScope, col, listCollection)
 }
 
+// WindowedEqualsList verifies that the given collection has the same values 
as a
+// given list, under coder equality. The values must be provided as an array 
or a slice.
+// This function also takes a window function to window the list into for 
cases where
+// the PCollections cannot be globally windowed (e.g. tests in unbounded 
pipelines.)
+// This windowing function is applied to both the PCollection created from the 
list
+// and the impulse used to trigger the Diff function.
+func WindowedEqualsList(s beam.Scope, wfn *window.Fn, col beam.PCollection, 
list interface{}) beam.PCollection {

Review Comment:
   I looked at that a little bit and the issue we hit is that in the PAssert 
package level we actually don't have any insight into the windowing of the 
input PCollections. If we could simply pull the windowing information from the 
primary PCollection out, we'd be able to abstract away all of the extra calls 
here. I suppose making global windowing the default would work and we just 
change the underlying equals() function to be what windowedEquals() is now, 
that may work. Let me iterate on it and make sure that approach isn't breaking. 
Either way, the teststream tests needed windowing on the PCollections. 
   
   I'm also alright with making this routing standalone because we will 
eventually want to have robust, streaming-ready passert functions that will 
need to be windowing aware. 





Issue Time Tracking
-------------------

    Worklog Id:     (was: 773587)
    Time Spent: 2h 10m  (was: 2h)

> TestStream tests are broken after new construction check was added
> ------------------------------------------------------------------
>
>                 Key: BEAM-14499
>                 URL: https://issues.apache.org/jira/browse/BEAM-14499
>             Project: Beam
>          Issue Type: Improvement
>          Components: sdk-go
>            Reporter: Jack McCluskey
>            Assignee: Jack McCluskey
>            Priority: P2
>          Time Spent: 2h 10m
>  Remaining Estimate: 0h
>
> The Go SDK's TestStream integration tests are currently failing as a result 
> of the restrictions on creating unwindowed, unbounded side inputs being added 
> for BEAM-14473. These should be fixed so the Flink PostCommit tests give 
> signal again. 



--
This message was sent by Atlassian Jira
(v8.20.7#820007)

Reply via email to