Ejemplo n.º 1
0
        public virtual async Task Init()
        {
            _queue = new QueueClient(AzureTestsHelper.DevelopmetStorage, "kalixleotestqueue");
            await _queue.CreateIfNotExistsAsync();

            _azureQueue = new AzureQueueStorage(_queue);
        }
Ejemplo n.º 2
0
        public async Task ContinueConversationLaterTests()
        {
            if (StorageEmulatorHelper.CheckEmulator())
            {
                var queueName = nameof(ContinueConversationLaterTests).ToLower();
                var queue     = await ContainerInit(queueName);

                var cr      = TestAdapter.CreateConversation(nameof(ContinueConversationLaterTests));
                var adapter = new TestAdapter(cr)
                              .UseStorage(new MemoryStorage())
                              .UseBotState(new ConversationState(new MemoryStorage()), new UserState(new MemoryStorage()));

                var queueStorage = new AzureQueueStorage(ConnectionString, queueName);
                var dm           = new DialogManager(new ContinueConversationLater()
                {
                    Date  = "=addSeconds(utcNow(), 2)",
                    Value = "foo"
                });

                dm.InitialTurnState.Set <QueueStorage>(queueStorage);

                await new TestFlow((TestAdapter)adapter, dm.OnTurnAsync)
                .Send("hi")
                .StartTestAsync();
                await Task.Delay(2000);

                var messages = await queue.ReceiveMessagesAsync();

                var message     = messages.Value[0];
                var messageJson = Encoding.UTF8.GetString(Convert.FromBase64String(message.MessageText));
                var activity    = JsonConvert.DeserializeObject <Activity>(messageJson);
                Assert.Equal(ActivityTypes.Event, activity.Type);
                Assert.Equal("ContinueConversation", activity.Name);
                Assert.Equal("foo", activity.Value);
                Assert.NotNull(activity.RelatesTo);
                var cr2 = activity.GetConversationReference();
                cr.ActivityId  = null;
                cr2.ActivityId = null;
                Assert.Equal(JsonConvert.SerializeObject(cr), JsonConvert.SerializeObject(cr2));
            }
        }