Add Unit Test for WindowDataLayer

This PR provides a unit test for WindowDataLayer.

The purpose of this unit test is to protect against issues while the data layer design is improved (such as #1089 and #1125).
you have both `sample_window.txt` and `sample_window.txt.in` -- is this intentional?