@Iristyle although the top-level describe in watcher_spec.rb uses a top-level exclude filter, the [require statement on line 6](https://github.com/ferventcoder/puppetlabs-reboot/blob/f443ff1322b6e0e8432bfe8e105beeaeb8a96d03/spec/unit/provider/reboot/windows/watcher_spec.rb#L6)  is still executed.

We could change the require statement to only execute when `Puppet.features.microsoft_windows?` and then remove the protection from `watcher.rb`.

About `ALT_SEPARATOR`, the constant is only defined on Windows, and is a short way to test for DOSISH or CYGWIN: <https://github.com/ruby/ruby/blob/trunk/file.c#L2726-L2730>