[ 
https://issues.apache.org/jira/browse/SAMZA-2037?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16821405#comment-16821405
 ] 

Bharath Kumarasubramanian commented on SAMZA-2037:
--------------------------------------------------

With this PR - [https://github.com/apache/samza/pull/905], the tests no longer 
uses reflection to inspect the fields. However, the fact that integration test 
inspects internals for verification still applies. It is still a challenge 
especially in case of extensions to tasks (custom wrappers around tasks) since 
this test assumes certain types of tasks.

 

> WatermarkIntegrationTest should not use internal fields for verification
> ------------------------------------------------------------------------
>
>                 Key: SAMZA-2037
>                 URL: https://issues.apache.org/jira/browse/SAMZA-2037
>             Project: Samza
>          Issue Type: Improvement
>            Reporter: Cameron Lee
>            Priority: Major
>
> WatermarkIntegrationTest uses reflection to extract StreamOperatorTasks in 
> order to directly check watermarks. In addition, it assumes certain class 
> types for tasks.
> Ideally, we would not need any reflection in tests. Integration tests 
> especially should not need to use reflection, since they should be testing 
> end-to-end functionality and not inspecting data that is not accessible 
> through public APIs.
> One main challenge that this causes is that this test is more sensitive to 
> implementation changes, since it needs to access specific fields and classes 
> which are not part of the API.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to