예제 #1
0
        public static FishObservation CreateFishObservation()
        {
            Bogus.Faker <FishObservation> testData = new Bogus.Faker <FishObservation>()
                                                     .RuleFor(o => o.ReportTime, f => f.Date.Past(yearsToGoBack: 2))
                                                     .RuleFor(o => o.FishType, f => f.PickRandom <FishType>().ToString())
                                                     .RuleFor(o => o.Observer, (f, u) => f.Name.FindName())
                                                     .RuleFor(o => o.FishCount, f => f.Random.Int(min: 0, max: 20))
                                                     .RuleFor(o => o.ConfidenceRating, f => Math.Round(f.Random.Decimal(min: 0.5m, max: 1), 2));

            FishObservation observation = testData.Generate();

            return(observation);
        }
예제 #2
0
        private async Task PerformWrites(string queueName, int numWrites)
        {
            ParmCheck.NotNullOrEmpty(nameof(queueName), queueName);
            ParmCheck.Positive(nameof(numWrites), numWrites);

            var queueWriter = new QueueWriter(_connectionString, queueName);

            for (int i = 0; i < numWrites; i++)
            {
                FishObservation observation = DataGenerator.CreateFishObservation();

                string messageId = await queueWriter.Write(observation);

                Console.WriteLine($"Message {messageId} sent.");
            }
        }
예제 #3
0
        private async Task <int> PerformReads(string queueName)
        {
            ParmCheck.NotNullOrEmpty(nameof(queueName), queueName);

            int numRead = 0;
            var options = new JsonSerializerOptions {
                WriteIndented = true
            };

            var reader = new QueueReader(_connectionString, queueName);

            FishObservation observation = await reader.Read <FishObservation>();

            while (observation != null)
            {
                numRead++;
                Console.WriteLine(JsonSerializer.Serialize(observation, typeof(FishObservation), options));
                observation = await reader.Read <FishObservation>();
            }
            return(numRead);
        }