Example #1
0
        public ApiCallerTests()
        {
            var reader = new FakeConfigReader();

            reader.SetDefaultFakeConfig();
            source1 = reader.FakeConfig.Sources.First();

            source2        = new ConfigSource();
            source2.Title  = "title2";
            source2.Hoster = "fake";
            reader.FakeConfig.Sources.Add(source2);

            this.context        = new FakeContext();
            this.context.Config = reader.ReadConfig();

            list1 = new List <HosterRepository>();
            list1.Add(new HosterRepository("foo1", "foo1", "http://foo1", ScmType.Git));

            list2 = new List <HosterRepository>();
            list2.Add(new HosterRepository("foo2", "foo2", "http://foo2", ScmType.Git));

            hac = new FakeHosterApiCaller();
            hac.Lists.Add(source1, list1);
            hac.Lists.Add(source2, list2);
        }
Example #2
0
        public ValidatingConfigReaderTests()
        {
            reader = new FakeConfigReader();
            reader.SetDefaultFakeConfig();
            logger    = new FakeLogger();
            validator = new FakeHosterValidator();

            sut = new ValidatingConfigReader(reader, logger, validator);
        }
Example #3
0
        public FakeContext()
        {
            this.VersionNumber       = new Version(0, 0, 0);
            this.VersionNumberString = this.VersionNumber.ToString();
            this.AppTitle            = "SCM Backup";
            this.UserAgent           = "SCM-Backup";

            var reader = new FakeConfigReader();

            reader.SetDefaultFakeConfig();
            this.Config = reader.ReadConfig();
        }
Example #4
0
        public void UsesConfigFromReader()
        {
            var reader = new FakeConfigReader();

            reader.SetDefaultFakeConfig();
            var sut = new Context(reader);

            Assert.NotNull(sut.Config);

            // This checks reference equality (not content), but in this case it's good enough.
            // We just want to know whether the context returns the config that came from the IConfigReader.
            Assert.Equal(reader.FakeConfig, sut.Config);
        }
Example #5
0
        public void DoesNotThrowExceptions()
        {
            // most of the Context class is .NET Framework functionality (which we don't want to test again),
            // but at least we want to be noticed when anything throws an exception

            var reader = new FakeConfigReader();

            reader.SetDefaultFakeConfig();
            var sut = new Context(reader);

            var    version       = sut.VersionNumber;
            string versionString = sut.VersionNumberString;
            string appTitle      = sut.AppTitle;
        }
Example #6
0
        static (FakeLogger FakeLogger, ErrorHandlingScmBackup ErrorHandlingScmBackup) BuildFakeScmBackup()
        {
            var ex        = new Exception("!!!");
            var subBackup = new FakeScmBackup();

            subBackup.ToThrow = ex;

            var conf = new FakeConfigReader();

            conf.SetDefaultFakeConfig();

            var context = new FakeContext();

            var logger = new FakeLogger();

            var backup = new ErrorHandlingScmBackup(subBackup, logger, context);

            return(logger, backup);
        }
Example #7
0
        public void LogsErrorWhenConfigSourceTitlesContainDuplicates()
        {
            reader = new FakeConfigReader();
            reader.SetDefaultFakeConfig();
            var source = new ConfigSource();

            source.Title = "title";
            source.Type  = "fake";

            reader.FakeConfig.Sources.Add(source);

            logger    = new FakeLogger();
            validator = new FakeHosterValidator();

            sut = new ValidatingConfigReader(reader, logger, validator);
            var result = sut.ReadConfig();

            Assert.True(logger.LoggedSomething);
            Assert.Equal(ErrorLevel.Error, logger.LastErrorLevel);
            Assert.Null(result);
        }
        public void LogsWhenExceptionIsThrown()
        {
            var ex        = new Exception("!!!");
            var subBackup = new FakeScmBackup();

            subBackup.ToThrow = ex;

            var conf = new FakeConfigReader();

            conf.SetDefaultFakeConfig();

            var context = new FakeContext();

            var logger = new FakeLogger();

            var backup = new ErrorHandlingScmBackup(subBackup, logger, context);

            backup.Run();

            Assert.True(logger.LoggedSomething);
            Assert.Equal(ErrorLevel.Error, logger.LastErrorLevel);
            // we can't check whether the last exception is the exception from above,
            // because there are more logging outputs after the exception.
        }