Exemplo n.º 1
0
        private static void AssertSortReturns(IReadOnlyList <ApplicationContext> apps, params string[] expected)
        {
            // ACT
            var sorted = AppSorter.SortByDependency(apps);

            // ASSERT
            Assert.Equal(expected, sorted.Select(a => a.Id));

            var sortedReverse = AppSorter.SortByDependency(apps.Reverse().ToArray());

            Assert.Equal(expected, sortedReverse.Select(a => a.Id));
        }
Exemplo n.º 2
0
        public void TrowsOnCycleTest()
        {
            // ARRANGE
            var apps = new List <ApplicationContext>
            {
                TestApp("a", "b"),
                TestApp("b", "a"),
            };
            // ACT
            Action act = () => AppSorter.SortByDependency(apps);

            // ASSERT
            var ex = Assert.Throws <NetDaemonException>(act);

            Assert.Contains("circular dependencies", ex.Message, StringComparison.Ordinal);
        }
Exemplo n.º 3
0
        public void TrowsOnNotFoundDependency()
        {
            // ARRANGE
            var apps = new List <ApplicationContext>
            {
                TestApp("test", "dependent_app")
            };

            // ACT
            Action act = () => AppSorter.SortByDependency(apps);

            // ASSERT
            var ex = Assert.Throws <NetDaemonException>(act);

            Assert.Contains("There is no app named dependent_app", ex.Message, StringComparison.Ordinal);
        }