Hi! I want to bring up the discussion again about writing Unit Tests, rather than many ITCases. I looked a bit through the Table API and it looks like there is virtually no unit test, but everything has an ITCase.
I would really encourage to write more unit tests. The DataStream API is actually a good example: It does not have an ITCase for every operator - operators are all unit tested with a test harness (mock contexts and environments). There are a few end-to-end ITCases for certain functionalities, like Checkpointing, State Backends, or Timestamp Handling. I think it would be great to adopt a similar model for the TableAPI. So far, the Table API follows the DataSet API model, where every single operator has one or more ITCases - that makes build times very long. Also, in my experience, ITCases are actually not even as precise in the tests as a good series of unit tests. Given that the library is still being created, now is a good time to look into this. Once it is established, chances of that getting reworked will be slim. Greetings, Stephan