I'm not sure if it's required, but I recommend you to separate the tests and implementations in two commits. So you would write a commit writting the tests to make sure they fail in wine and pass in windows (remember to mark the failing tests with todo_wine), and then fix them with another commit, removing the todo_wine marks. This way it's more clear what is broken and what you are fixing, and also makes it easier for you to make sure that your tests work fine.
You can check other tests to see how the todo_wine macro is used.