public void FilesNumber_SetSameValue_DoesNotFirePropertyChangedValue()
        {
            FilesAndFoldersLimitSettings sut = new FilesAndFoldersLimitSettings();
            sut.FilesNumber = 1;

            sut.ShouldNotNotifyOn(s => s.FilesNumber).When(s => s.FilesNumber = 1);
        }
        public void FilesNumber_SetValueInRange_ReturnsExpectedValue()
        {
            FilesAndFoldersLimitSettings sut = new FilesAndFoldersLimitSettings();
            sut.FilesNumber = 55;

            Assert.AreEqual(55, sut.FilesNumber);
        }
        public void FilesNumber_SetValueMoreThanMaximum_ReturnsMaximumValue()
        {
            FilesAndFoldersLimitSettings sut = new FilesAndFoldersLimitSettings();
            sut.FilesNumber = 1000;

            Assert.AreEqual(sut.FilesNumberMaximum, sut.FilesNumber);
        }
        public void FilesNumber_SetValueLessThanMinimum_ReturnsMinimumValue()
        {
            FilesAndFoldersLimitSettings sut = new FilesAndFoldersLimitSettings();
            sut.FilesNumber = -1;

            Assert.AreEqual(sut.FilesNumberMinimum, sut.FilesNumber);
        }
        public void Constructor_SupplyOrganizeFilesParameter_OrganizeFilesReturnsExpectedValue()
        {
            FilesAndFoldersLimitSettings sut = new FilesAndFoldersLimitSettings(It.IsAny<int?>(), It.IsAny<int?>(), true);

            Assert.IsTrue(sut.OrganizeFiles);
        }
        public void Constructor_SupplyValueForFoldersNumberParameter_FoldersNumberReturnsExpectedValue()
        {
            FilesAndFoldersLimitSettings sut = new FilesAndFoldersLimitSettings(44, It.IsAny<int?>(), It.IsAny<bool>());

            Assert.AreEqual(sut.FoldersNumber, sut.FoldersNumber);
        }
        public void Constructor_SupplyNullForFoldersNumberParameter_FoldersNumberReturnsMinimumValue()
        {
            FilesAndFoldersLimitSettings sut = new FilesAndFoldersLimitSettings(null, It.IsAny<int?>(), It.IsAny<bool>());

            Assert.AreEqual(sut.FoldersNumberMinimum, sut.FoldersNumber);
        }
        public void Constructor_Parameterless_FoldersNumberMustReturnMinimumValue()
        {
            FilesAndFoldersLimitSettings sut = new FilesAndFoldersLimitSettings();

            Assert.AreEqual(sut.FoldersNumberMinimum, sut.FoldersNumber);
        }
        public void OrganizeFiles_SetValue_FiresPropertyChangedValue()
        {
            FilesAndFoldersLimitSettings sut = new FilesAndFoldersLimitSettings();

            sut.ShouldNotifyOn(s => s.OrganizeFiles).When(s => s.OrganizeFiles = true);
        }
        public void OrganizeFiles_SetSameValue_DoesNotFirePropertyChangedValue()
        {
            FilesAndFoldersLimitSettings sut = new FilesAndFoldersLimitSettings();
            sut.OrganizeFiles = false;

            sut.ShouldNotNotifyOn(s => s.OrganizeFiles).When(s => s.OrganizeFiles = false);
        }
        public void FoldersNumber_SetValue_FiresPropertyChangedValue()
        {
            FilesAndFoldersLimitSettings sut = new FilesAndFoldersLimitSettings();

            sut.ShouldNotifyOn(s => s.FoldersNumber).When(s => s.FoldersNumber = 2);
        }