public void IsRunningTest()
        {
            BatchStatus shouldberunning    = BatchStatus.Started;
            BatchStatus shouldnotberunning = BatchStatus.Stopped;

            Assert.IsTrue(shouldberunning.IsRunning());
            Assert.IsFalse(shouldnotberunning.IsRunning());
        }
        public void UpgradeToTest()
        {
            BatchStatus started = BatchStatus.Started;

            // ! reentrant
            started = started.UpgradeTo(BatchStatus.Stopped);
            //should not be running, as upgraded to stopped
            Assert.IsFalse(started.IsRunning());
        }