Ejemplo n.º 1
0
        public void SoutherosHasASpaceRulerTest()
        {
            List <Kingdom> kingdoms = new List <Kingdom>();
            Kingdom        space    = new SpaceKingdom();

            kingdoms.Add(space);
            kingdoms.Add(new LandKingdom());
            kingdoms.Add(new WaterKingdom());
            kingdoms.Add(new IceKingdom());
            kingdoms.Add(new AirKingdom());
            kingdoms.Add(new FireKingdom());

            List <string> messages = new List <string>();

            messages.Add("oaaawaala");
            messages.Add("a1d22n333a4444p");
            messages.Add("zmzmzmzaztzozh");

            Southeros universe = new Southeros(kingdoms);

            space.InvokeAllegiance(messages);

            Assert.IsNotNull(universe.GetRulingKingdom());
            Assert.IsNotNull(universe.GetRulingKingdom().GetAllies());
            Assert.AreSame("Space", universe.GetRulingKingdom().GetName());
            Assert.AreSame("Shan", universe.GetRulingKingdom().GetRuler());
        }
Ejemplo n.º 2
0
        static void Main(string[] args)
        {
            if (args.Length == 0)
            {
                Console.WriteLine("Please provide the path to the messages");
                return;
            }

            Southeros southeros = new Southeros(args[0]);

            southeros.GetRulerAndAllies();
        }
Ejemplo n.º 3
0
        public void SoutherosHasNoRulerTest()
        {
            List <Kingdom> kingdoms = new List <Kingdom>();
            Kingdom        space    = new SpaceKingdom();

            kingdoms.Add(space);
            kingdoms.Add(new LandKingdom());
            kingdoms.Add(new WaterKingdom());
            kingdoms.Add(new IceKingdom());
            kingdoms.Add(new AirKingdom());
            kingdoms.Add(new FireKingdom());

            List <string> messages = new List <string>();

            messages.Add("111111");
            messages.Add("2222222");
            messages.Add("33333333");

            Southeros universe = new Southeros(kingdoms);

            space.InvokeAllegiance(messages);

            Assert.IsNull(universe.GetRulingKingdom());
        }
Ejemplo n.º 4
0
 public SoutherosTests()
 {
     _southeros = new Southeros();
 }
Ejemplo n.º 5
0
        private static void Crown()
        {
            Southeros southeros = new Southeros("Southeros");

            Console.WriteLine(southeros.Ruler.Name);
            Console.WriteLine(string.Join(",", southeros.Ruler.GetAllies()));

            IKingdom           contendingKingdom = new Kingdom("Space", "gorilla");
            HashSet <IMessage> messages          = new HashSet <IMessage>();

            //while (true)
            //{
            //    var input = Console.ReadLine();
            //    if (string.IsNullOrWhiteSpace(input))
            //    {
            //        break;
            //    }

            //    int separator = input.IndexOf(",");
            //    string reciever = input.Substring(0, separator);
            //    string content = input.Substring(separator + 1);

            //    try
            //    {
            //        messages.Add(new Message(contendingKingdom, southeros[reciever], content));
            //    }
            //    catch (Exception ex)
            //    {
            //        Console.WriteLine("\n" + ex.Message + "\nIgnoring the line :" + input + "\n");
            //    }
            //}

            messages.Add(new Message(contendingKingdom, southeros["Air"], "oaaawaala"));
            messages.Add(new Message(contendingKingdom, southeros["Land"], "a1d22n333a4444p"));
            messages.Add(new Message(contendingKingdom, southeros["Ice"], "zmzmzmzaztzozh"));

            IBallot ballot = new Ballot(contendingKingdom, messages);

            try
            {
                southeros.ClaimTheThrone(ballot);
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex);
            }

            Console.WriteLine(southeros.Ruler.Name);
            Console.WriteLine(string.Join(",", southeros.Ruler.GetAllies()));

            try
            {
                HashSet <IKingdom> kingdoms = new HashSet <IKingdom>();
                kingdoms.Add(southeros["Land"]);
                kingdoms.Add(southeros["Ice"]);
                southeros.ElectARuler(kingdoms);
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex);
            }

            Console.WriteLine(southeros.Ruler.Name);
            Console.WriteLine(string.Join(",", southeros.Ruler.GetAllies()));

            Console.ReadLine();
        }