コード例 #1
0
        static void Main(string[] args)
        {
            var cards = new List <MindboxTestProject.Card>()
            {
                new MindboxTestProject.Card()
                {
                    CityDeparture = "Москва", CityArrival = "Париж"
                },
                new MindboxTestProject.Card()
                {
                    CityDeparture = "Париж", CityArrival = "Токио"
                },
                new MindboxTestProject.Card()
                {
                    CityDeparture = "Токио", CityArrival = "Реймс"
                },
                new MindboxTestProject.Card()
                {
                    CityDeparture = "Реймс", CityArrival = "Берлин"
                },
                new MindboxTestProject.Card()
                {
                    CityDeparture = "Берлин", CityArrival = "Лондон"
                },
                new MindboxTestProject.Card()
                {
                    CityDeparture = "Лондон", CityArrival = "Вена"
                },
                new MindboxTestProject.Card()
                {
                    CityDeparture = "Вена", CityArrival = "Прага"
                },
                new MindboxTestProject.Card()
                {
                    CityDeparture = "Прага", CityArrival = "Рим"
                },
                new MindboxTestProject.Card()
                {
                    CityDeparture = "Рим", CityArrival = "Петербург"
                },
            };

            var rnd         = new Random((int)DateTime.Now.Ticks);
            var randomCards = cards.OrderBy(item => rnd.Next()); //shuffle...

            Console.WriteLine("Unordered list:");
            foreach (var c in randomCards)
            {
                Console.WriteLine(c);
            }

            Console.WriteLine("\nOrdered list:");
            foreach (var c in MindboxTestProject.CardsSort(randomCards))
            {
                Console.WriteLine(c);
            }
            Console.ReadKey();
        }
コード例 #2
0
        public void Test_CardsSort()
        {
            var cards = new List <MindboxTestProject.Card>()
            {
                new MindboxTestProject.Card()
                {
                    CityDeparture = "Москва", CityArrival = "Париж"
                },
                new MindboxTestProject.Card()
                {
                    CityDeparture = "Париж", CityArrival = "Токио"
                },
                new MindboxTestProject.Card()
                {
                    CityDeparture = "Токио", CityArrival = "Реймс"
                },
                new MindboxTestProject.Card()
                {
                    CityDeparture = "Реймс", CityArrival = "Берлин"
                },
                new MindboxTestProject.Card()
                {
                    CityDeparture = "Берлин", CityArrival = "Лондон"
                },
                new MindboxTestProject.Card()
                {
                    CityDeparture = "Лондон", CityArrival = "Вена"
                },
                new MindboxTestProject.Card()
                {
                    CityDeparture = "Вена", CityArrival = "Прага"
                },
                new MindboxTestProject.Card()
                {
                    CityDeparture = "Прага", CityArrival = "Рим"
                },
                new MindboxTestProject.Card()
                {
                    CityDeparture = "Рим", CityArrival = "Петербург"
                },
            };

            var rnd         = new Random((int)DateTime.Now.Ticks);
            var randomCards = cards.OrderBy(item => rnd.Next()); //shuffle...

            var result = new List <MindboxTestProject.Card>(MindboxTestProject.CardsSort(randomCards));

            Assert.IsNotNull(result);
            Assert.AreEqual(cards.Count, result.Count);
            for (int i = 1; i < result.Count; i++)
            {
                Assert.AreEqual(result[i].CityDeparture, result[i - 1].CityArrival);
            }
        }