Exemple #1
0
        public void GetScmTypesReturnsHashSet()
        {
            // TODO: use different ScmTypes when more are supported
            var repos = new List <HosterRepository>();

            repos.Add(new HosterRepository("testrepo", "testrepo", "http://clone.url", ScmType.Git));
            repos.Add(new HosterRepository("testrepo2", "testrepo2", "http://clone2.url", ScmType.Git));

            var source1 = new ConfigSource();

            source1.Title = "testsource";
            var source2 = new ConfigSource();

            source2.Title = "testsource2";

            var sut = new ApiRepositories();

            sut.AddItem(source1, repos);
            sut.AddItem(source2, repos);

            var result = sut.GetScmTypes();

            Assert.Single(result);
            Assert.Equal(ScmType.Git, result.First());
        }
Exemple #2
0
        public void AddAddsItem()
        {
            var source = new ConfigSource();

            source.Title = "title";

            var list = new List <HosterRepository>();

            var sut = new ApiRepositories();

            sut.AddItem(source, list);

            Assert.Single(sut.Dic);
        }
Exemple #3
0
        public void GetReposForSourceReturnsList()
        {
            var source = new ConfigSource();

            source.Title = "title";

            var list = new List <HosterRepository>();

            list.Add(new HosterRepository("bar", "bar", "http://bar", ScmType.Git));
            list.Add(new HosterRepository("foo", "foo", "http://foo", ScmType.Git));

            var sut = new ApiRepositories();

            sut.AddItem(source, list);

            var result = sut.GetReposForSource(source);

            Assert.Equal(2, result.Count());
            Assert.Equal("bar", result.First().FullName);
        }
Exemple #4
0
        public void GetReposForSourceReturnsAlphabeticallySorted()
        {
            var source = new ConfigSource();

            source.Title = "title";

            var list = new List <HosterRepository>();

            list.Add(new HosterRepository("ccc", "ccc", "http://ccc", ScmType.Git));
            list.Add(new HosterRepository("aaa", "aaa", "http://aaa", ScmType.Git));
            list.Add(new HosterRepository("bbb", "bbb", "http://bbb", ScmType.Git));

            var sut = new ApiRepositories();

            sut.AddItem(source, list);

            var result = sut.GetReposForSource(source).ToList();

            Assert.Equal("aaa", result[0].FullName);
            Assert.Equal("bbb", result[1].FullName);
            Assert.Equal("ccc", result[2].FullName);
        }
Exemple #5
0
        public void GetSourcesReturnsSources()
        {
            var source1 = new ConfigSource();

            source1.Title = "testsource";
            var source2 = new ConfigSource();

            source2.Title = "testsource2";

            var list = new List <HosterRepository>();

            list.Add(new HosterRepository("foo", "foo", "http://foo", ScmType.Git));

            var sut = new ApiRepositories();

            sut.AddItem(source1, list);
            sut.AddItem(source2, list);

            var result = sut.GetSources();

            Assert.Equal(2, result.Count());
            Assert.Contains(source1, result);
            Assert.Contains(source2, result);
        }
Exemple #6
0
        public void GetScmTypesThrowsWhenEmpty()
        {
            var sut = new ApiRepositories();

            Assert.Throws <InvalidOperationException>(() => sut.GetScmTypes());
        }