Skip to content

Y20230509-1000

@HeikoKlare HeikoKlare tagged this 08 May 07:14
The IResource tests, which use the TestPerformer to execute
parameterized delete, copy and move operations, were not implemented
properly. The workspace was set up before executing the first
parameterization and was then never reset. Thus, all subsequent test
iterations worked on the workspace left by the previous iteration. In
addition, the out-of-sync resources were synchronized by workspace
updates performed at different places in the test code. This includes
the background refresh job, which updated the out-of-sync resources at
an arbitrary point in time. In case this happened between the shouldFail
evaluation of a test iteration and the actual invokeMethod execution,
the test could fail randomly.

The changes eliminate these shortcomings:
* Whenever one of those tests modifies the workspace, it is restored for
the next iteration
* An unexpected background refresh is avoided by explicitly triggering
and joining refresh operations
* The out-of-sync resources are restored whenever a test iteration
affects them
* The validations have been adapted, as they have fit to the unexpected
workspace states influenced by previous test iterations instead of the
proper ones; this particularly includes the proper validation for
out-of-sync resources
* Error messages for iterations that were supposed to fail but do not
were improved to ease future debugging in case of regressions
Assets 2
Loading