コード例 #1
0
        public static HttpResponseMessage RunGetPaymentsByUser([HttpTrigger(AuthorizationLevel.Function, "get", "post", Route = null)] HttpRequestMessage req, ILogger log)
        {
            log.LogInformation("GetPaymentsByUser received a request.");

            var repository = HandlersContainer.SolveDependency <IPaymentsRepository>();

            var payments = repository.GetOrdersPayed();

            return(payments == null
                ? req.CreateResponse(HttpStatusCode.BadRequest, "Please pass a name on the query string or in the request body")
                : req.CreateResponse(HttpStatusCode.OK, payments));
        }
コード例 #2
0
        public void HandlersContainer_HandleAsync_Sends_To_Delay_If_Some_Delay_Is_Left_2()
        {
            InvocationCounter.Instance.Reset();

            var container = new HandlersContainer();

            HandlersContainer.AddDependencyWithInstance <ISendMessages>(new AzureStorageQueueSendTransportShortMaxDelay(HandlersContainer.SolveDependency <ISerializeMessages>()));


            var message = new TestMessage()
            {
                SomeData = "delayed"
            };

            var serializer = HandlersContainer.SolveDependency <ISerializeMessages>();


            SendOnlyBus.SendAsync(message, SERVICENAME, TimeSpan.FromSeconds(15), serializer, new AzureStorageQueueSendTransportShortMaxDelay(serializer)).Wait();

            string stringMessage = null;

            do
            {
                stringMessage = QueueReader.ReadOneMessageFromQueueAsync(SERVICENAME).Result;
            }while (string.IsNullOrEmpty(stringMessage));

            container.HandleAsync(stringMessage, null).Wait();

            Assert.IsTrue(InvocationCounter.Instance.Counter == 0, "message not delayed");


            do
            {
                stringMessage = QueueReader.ReadOneMessageFromQueueAsync(SERVICENAME).Result;
            }while (string.IsNullOrEmpty(stringMessage));

            container.HandleAsync(stringMessage, null).Wait();

            Assert.IsTrue(InvocationCounter.Instance.Counter == 0, "message not delayed 2");

            do
            {
                stringMessage = QueueReader.ReadOneMessageFromQueueAsync(SERVICENAME).Result;
            }while (string.IsNullOrEmpty(stringMessage));

            container.HandleAsync(stringMessage, null).Wait();


            Assert.IsTrue(InvocationCounter.Instance.Counter == 2, "message delayed more than once");
        }