public void Spec03()
            {
                using (var testable = new LoadSettingsTestable())
                {
                    testable.Instance.LoadSettings(testable.ProjectMock.Object);

                    testable.Verify <ICacheProvider>(x => x.Contains(It.IsAny <string>()));
                }
            }
            public void Spec02()
            {
                using (var testable = new LoadSettingsTestable())
                {
                    testable.Instance.LoadSettings(testable.ProjectMock.Object);

                    testable.Verify <ISettingsRepository>(x => x.Load(It.Is <string>(y => y.EndsWith(JSLintNetSettings.FileName)), testable.ConfigurationName));
                }
            }
            public void Spec04()
            {
                using (var testable = new LoadSettingsTestable())
                {
                    testable.CacheContains = true;
                    testable.Instance.LoadSettings(testable.ProjectMock.Object);

                    testable.Verify <ICacheProvider>(x => x.Get <JSLintNetSettings>(It.IsAny <string>()));
                }
            }
            public void Spec05()
            {
                using (var testable = new LoadSettingsTestable())
                {
                    testable.CacheContains = false;
                    testable.Instance.LoadSettings(testable.ProjectMock.Object);

                    testable.Verify <ICacheProvider>(x => x.Set(It.IsAny <string>(), testable.Settings, It.IsAny <int>(), It.IsAny <string[]>()));
                    testable.Verify <ICacheProvider>(x => x.Get <JSLintNetSettings>(It.IsAny <string>()), Times.Never());
                }
            }
            public void Spec07()
            {
                using (var testable = new LoadSettingsTestable())
                {
                    testable.ConfigurationName = "Release";

                    testable.Instance.LoadSettings(testable.ProjectMock.Object, false);

                    testable.Verify <ISettingsRepository>(x => x.Load(It.IsAny <string>(), null));
                }
            }
            public void Spec01()
            {
                using (var testable = new LoadSettingsTestable())
                {
                    var settingsPath = Path.Combine(@"some\path", JSLintNetSettings.FileName);
                    testable.ProjectItemsFake.AddProjectItem(settingsPath, true);

                    testable.Instance.LoadSettings(testable.ProjectMock.Object);

                    testable.Verify <ISettingsRepository>(x => x.Load(settingsPath, testable.ConfigurationName));
                }
            }
            public void Spec06()
            {
                using (var testable = new LoadSettingsTestable())
                {
                    testable.Initialize();

                    testable.ProjectMock
                    .SetupGet(x => x.FullName)
                    .Returns((string)null);

                    testable.ProjectPropertiesFake.Items.Remove("FullPath");

                    I.Expect(() =>
                    {
                        testable.Instance.LoadSettings(testable.ProjectMock.Object);
                    }).Not.ToThrow();
                }
            }