Example #1
0
 //[Fact]
 public void CreateFloodOfFiles()
 {
     int filesCount = 1000;
     int paddingZeros = 1 + (int)Math.Floor(Math.Log10(filesCount));
     string fileFormat = "input{0:" + new String('0', paddingZeros) + "}.xml";
     string basePath = Path.Combine(OriginalsPath, @"Test1\Input");
     TextGenerator gen = new TextGenerator()
     {
         MinMessageLength = 100,
         MaxMessageLength = 1000
     };
     for (int i = 0; i < filesCount; i++)
     {
         string fileName = string.Format(fileFormat, i);
         string filePath = Path.Combine(basePath, fileName);
         using (TextWriter writer = File.CreateText(filePath))
         {
             writer.WriteLine("<message>");
             writer.WriteLine("<a>");
             writer.WriteLine(gen.GenerateMessage());
             writer.WriteLine("</a>");
             writer.WriteLine("</message>");
         }
     }
 }
Example #2
0
        /// <summary>
        /// Sends a fixed number of messages and measure the elapsed time.
        /// </summary>
        /// <param name="messageCount"></param>
        public void SendFixedCountFlood(int messageCount, int messageSize)
        {
            Console.WriteLine("HTTP client - flood generator: sending {0} messages of {1} bytes each",
                messageCount, messageSize);
            TextGenerator gen = new TextGenerator()
            {
                MinMessageLength = messageSize,
                MaxMessageLength = messageSize
            };
            XDocument message = new XDocument();
            message.Add(new XElement("message", gen.GenerateMessage()));

            Stopwatch sw = Stopwatch.StartNew();
            for (int i = 0; i < messageCount; i++)
            {
                SendMessage(message);
            }
            sw.Stop();
            Console.WriteLine("Elapsed time: {0}, average: {1} messages/sec",
                sw.ElapsedMilliseconds, messageCount / (0.001 * sw.ElapsedMilliseconds));
        }