private RaspberryIRDotNet.TX.PulseSpaceTransmitter_ManualOpenClose MakeSubject(FileSystem.IFileSystem fileSystem)
        {
            var subject = new RaspberryIRDotNet.TX.PulseSpaceTransmitter_ManualOpenClose()
            {
                TransmissionDevice = LircPath
            };

            subject.SetFileSystem(fileSystem);
            return(subject);
        }
        public void NoDeviceSet()
        {
            // ARRANGE
            var fileSystem = new Mock <FileSystem.IFileSystem>(MockBehavior.Strict);
            var subject    = new RaspberryIRDotNet.TX.PulseSpaceTransmitter_ManualOpenClose();

            subject.SetFileSystem(fileSystem.Object);

            // ACT, ASSERT
            Assert.That(() => subject.Open(), Throws.ArgumentNullException.With.Property("ParamName").EqualTo("TransmissionDevice"));
            Assert.That(subject.IsOpen, Is.False);
            Assert.That(subject.Disposed, Is.False);
        }