Example #1
0
        public void Write_Can_Set_File_Name()
        {
            Mock<IFileWriter> fileWriter = new Mock<IFileWriter>();
            OrderWriter writer = new OrderWriter(fileWriter.Object);
            writer.WriteOrder(new Order());

            fileWriter.VerifySet(c => c.FileName, Times.Exactly(1));
        }
Example #2
0
        /// <Summary>
        /// Menu->Commands->Save & Submit
        /// </Summary>
        /// <param name="sender">The source of the event.</param>
        /// <param name="e">A <see cref="EventArgs"/> that contains the event data.</param>
        private void SaveAndSubmitTurnToolStripMenuItem_Click(object sender, EventArgs e)
        {
            clientState.Save();
            OrderWriter orderWriter = new OrderWriter(clientState);

            orderWriter.WriteOrders();
            this.Close();
        }
Example #3
0
        public void Write_Can_Write_To_File()
        {
            Order order = new Order {OrderId = 1001, OrderTotal = 10.3m};
            Mock<IFileWriter> fileWriterMock = new Mock<IFileWriter>();

            OrderWriter writer = new OrderWriter(fileWriterMock.Object);
            writer.WriteOrder(order);

            fileWriterMock.Verify(fw=> fw.WriteLine("1001, 10.3"), Times.Exactly(1));
        }
Example #4
0
        public void Write_Can_Filter_With_Values()
        {
            Mock<IFileWriter> fileWriter = new Mock<IFileWriter>();
            OrderWriter writer = new OrderWriter(fileWriter.Object);

            fileWriter.Setup(c=> c.Filter(It.IsAny<IEnumerable<Expression<Func<Order, bool>>>>())).AtMostOnce().Verifiable();

            writer.DoSomeFilteration();

               fileWriter.VerifyAll();
        }
Example #5
0
        public void TestWriting()
        {
            order            = new Order();
            order.OrderId    = 1001;
            order.OrderTotal = 10.53M;

            mockFileWriter = new Mock <IFileWriter>();
            orderWriter    = new OrderWriter(mockFileWriter.Object);

            orderWriter.WriteOrder(order);

            mockFileWriter.Verify(fw => fw.WriteLine("1001,10.53"), Times.Exactly(1));
        }
Example #6
0
    public void it_should_pass_data_to_file_writer()
    {
        Mock <IFileWriter> mockFileWriter = new Mock <IFileWriter>();



        OrderWriter orderWriter = new OrderWriter(mockFileWriter.Object);

        Order order = new Order();

        order.OrderId    = 1001;
        order.OrderTotal = 10.53M;
        orderWriter.WriteOrder(order);
        // mockFileWriter.Verify(fw => fw.WriteLine("1001,10.53"), Times.Exactly(1));
        mockFileWriter.VerifySet(fw => fw.FileName = "1001.txt");
    }
Example #7
0
        public static void Main(string[] args)
        {
            string raceName;
            int    turnNumber = -1;

            // read paramaters for race and turn to play
            CommandArguments commandArguments;

            try
            {
                commandArguments = new CommandArguments(args);
                Console.WriteLine("Nova AI");
                if (commandArguments.Count < 3)
                {
                    Console.WriteLine("Usage: Nova --ai -r <race_name> -t <turn_number> -i <intel_file>");
                    return;
                }

                raceName   = commandArguments[CommandArguments.Option.RaceName];
                turnNumber = int.Parse(commandArguments[CommandArguments.Option.Turn], System.Globalization.CultureInfo.InvariantCulture);
            }
            catch
            {
                Console.WriteLine("Usage: Nova --ai -r <race_name> -t <turn_number> -i <intel_file>");
                return;
            }
            // read in race data
            Console.WriteLine("Playing turn {0} for race \"{1}\".", turnNumber, raceName);
            try
            {
                // TODO (priority 6) - bypass password entry for AI.
                // Note: passwords have currently been disabled completely, awaiting a new more effective implementation - Dan 02 Mar 10
                // ClientState.Initialize(commandArguments.ToArray());

                try
                {
                    intelLock = File.OpenWrite(raceName + "." + "lock");
                }
                catch (System.IO.IOException)
                {
                    // A copy of the AI seems to be already running, so quit.
                    // Console.WriteLine("Unable to access turn {0} for {1}.", turnNumber, raceName);
                    // Report.FatalError("Unable to access turn " + turnNumber + " for " + raceName + ".");
                }


                AI.Initialize(commandArguments);
            }
            catch
            {
                Console.WriteLine("Nova_AI encountered an error reading its intel.");
                return;
            }

            // play turn
            AI.DoMove();

            // save turn)
            try
            {
                OrderWriter orderWriter = new OrderWriter(AI.ClientState);
                orderWriter.WriteOrders();
            }
            catch
            {
                Console.WriteLine("Nova_AI encountered an error writing its orders.");
            }

            intelLock.Close();
            intelLock.Dispose();
            return;
        }