diff --git a/sdk/storage/Azure.Storage.Common/src/Azure.Storage.Common.csproj b/sdk/storage/Azure.Storage.Common/src/Azure.Storage.Common.csproj index c559c97807f6e..0aec9e952e9ad 100644 --- a/sdk/storage/Azure.Storage.Common/src/Azure.Storage.Common.csproj +++ b/sdk/storage/Azure.Storage.Common/src/Azure.Storage.Common.csproj @@ -1,4 +1,4 @@ - + $(RequiredTargetFrameworks) @@ -17,6 +17,10 @@ Azure.Storage + + + true + diff --git a/sdk/storage/Azure.Storage.Queues/README.md b/sdk/storage/Azure.Storage.Queues/README.md index 0988eec54c401..badd79a3da942 100644 --- a/sdk/storage/Azure.Storage.Queues/README.md +++ b/sdk/storage/Azure.Storage.Queues/README.md @@ -125,6 +125,20 @@ QueueClient queue = new QueueClient(accountUri, new DefaultAzureCredential()); Learn more about enabling Azure Active Directory for authentication with Azure Storage in [our documentation][storage_ad] and [our samples](#next-steps). +### Message encoding + +This version of library does not encode message by default. V11 and prior versions as well as Azure Functions use base64-encoded messages by default. +Therefore it's recommended to use this feature for interop scenarios. + +```C# Snippet:Azure_Storage_Queues_Samples_Sample03_MessageEncoding_ConfigureMessageEncodingAsync +QueueClientOptions queueClientOptions = new QueueClientOptions() +{ + MessageEncoding = QueueMessageEncoding.Base64 +}; + +QueueClient queueClient = new QueueClient(connectionString, queueName, queueClientOptions); +``` + ## Troubleshooting All Azure Storage Queue service operations will throw a diff --git a/sdk/storage/Azure.Storage.Queues/api/Azure.Storage.Queues.netstandard2.0.cs b/sdk/storage/Azure.Storage.Queues/api/Azure.Storage.Queues.netstandard2.0.cs index d9bfe19c478df..d2177c0315991 100644 --- a/sdk/storage/Azure.Storage.Queues/api/Azure.Storage.Queues.netstandard2.0.cs +++ b/sdk/storage/Azure.Storage.Queues/api/Azure.Storage.Queues.netstandard2.0.cs @@ -34,8 +34,10 @@ public QueueClient(System.Uri queueUri, Azure.Storage.StorageSharedKeyCredential public virtual System.Uri GenerateSasUri(Azure.Storage.Sas.QueueSasPermissions permissions, System.DateTimeOffset expiresOn) { throw null; } public virtual Azure.Response> GetAccessPolicy(System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { throw null; } public virtual System.Threading.Tasks.Task>> GetAccessPolicyAsync(System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { throw null; } + protected internal virtual Azure.Storage.Queues.QueueServiceClient GetParentQueueServiceClientCore() { throw null; } public virtual Azure.Response GetProperties(System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { throw null; } public virtual System.Threading.Tasks.Task> GetPropertiesAsync(System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { throw null; } + protected virtual System.Threading.Tasks.Task OnMessageDecodingFailedAsync(Azure.Storage.Queues.Models.QueueMessage receivedMessage, Azure.Storage.Queues.Models.PeekedMessage peekedMessage, bool runSynchronously, System.Threading.CancellationToken cancellationToken) { throw null; } public virtual Azure.Response PeekMessage(System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { throw null; } public virtual System.Threading.Tasks.Task> PeekMessageAsync(System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { throw null; } public virtual Azure.Response PeekMessages(int? maxMessages = default(int?), System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { throw null; } @@ -72,6 +74,7 @@ public QueueClientOptions(Azure.Storage.Queues.QueueClientOptions.ServiceVersion public System.Uri GeoRedundantSecondaryUri { get { throw null; } set { } } public Azure.Storage.Queues.QueueMessageEncoding MessageEncoding { get { throw null; } set { } } public Azure.Storage.Queues.QueueClientOptions.ServiceVersion Version { get { throw null; } } + public event Azure.Core.SyncAsyncEventHandler MessageDecodingFailed { add { } remove { } } public enum ServiceVersion { V2019_02_02 = 1, @@ -82,6 +85,13 @@ public enum ServiceVersion V2020_06_12 = 6, } } + public partial class QueueMessageDecodingFailedEventArgs : Azure.SyncAsyncEventArgs + { + public QueueMessageDecodingFailedEventArgs(Azure.Storage.Queues.QueueClient queueClient, Azure.Storage.Queues.Models.QueueMessage receivedMessage, Azure.Storage.Queues.Models.PeekedMessage peekedMessage, bool runSynchronously, System.Threading.CancellationToken cancellationToken) : base (default(bool), default(System.Threading.CancellationToken)) { } + public Azure.Storage.Queues.Models.PeekedMessage PeekedMessage { get { throw null; } } + public Azure.Storage.Queues.QueueClient Queue { get { throw null; } } + public Azure.Storage.Queues.Models.QueueMessage ReceivedMessage { get { throw null; } } + } public enum QueueMessageEncoding { None = 0, @@ -369,6 +379,7 @@ public SpecializedQueueClientOptions(Azure.Storage.Queues.QueueClientOptions.Ser } public static partial class SpecializedQueueExtensions { + public static Azure.Storage.Queues.QueueServiceClient GetParentQueueServiceClient(this Azure.Storage.Queues.QueueClient client) { throw null; } public static Azure.Storage.Queues.QueueClient WithClientSideEncryptionOptions(this Azure.Storage.Queues.QueueClient client, Azure.Storage.ClientSideEncryptionOptions clientSideEncryptionOptions) { throw null; } } } diff --git a/sdk/storage/Azure.Storage.Queues/samples/Sample03_MessageEncoding.cs b/sdk/storage/Azure.Storage.Queues/samples/Sample03_MessageEncoding.cs new file mode 100644 index 0000000000000..98140a6164b3d --- /dev/null +++ b/sdk/storage/Azure.Storage.Queues/samples/Sample03_MessageEncoding.cs @@ -0,0 +1,65 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. + +using System; +using Azure.Storage.Queues.Models; +using NUnit.Framework; + +namespace Azure.Storage.Queues.Samples.Tests +{ + public class Sample03_MessageEncoding : SampleTest + { + [Test] + public void ConfigureMessageEncodingAsync() + { + var connectionString = ConnectionString; + var queueName = "foo"; + #region Snippet:Azure_Storage_Queues_Samples_Sample03_MessageEncoding_ConfigureMessageEncodingAsync + + QueueClientOptions queueClientOptions = new QueueClientOptions() + { + MessageEncoding = QueueMessageEncoding.Base64 + }; + + QueueClient queueClient = new QueueClient(connectionString, queueName, queueClientOptions); + #endregion + } + + [Test] + public void MessageDecodingFailedHandlerAsync() + { + var connectionString = ConnectionString; + var queueName = "foo"; + #region Snippet:Azure_Storage_Queues_Samples_Sample03_MessageEncoding_MessageDecodingFailedHandlerAsync + + QueueClientOptions queueClientOptions = new QueueClientOptions() + { + MessageEncoding = QueueMessageEncoding.Base64 + }; + + queueClientOptions.MessageDecodingFailed += async (QueueMessageDecodingFailedEventArgs args) => + { + if (args.PeekedMessage != null) + { + Console.WriteLine($"Invalid message has been peeked, message id={args.PeekedMessage.MessageId} body={args.PeekedMessage.Body}"); + } + else if (args.ReceivedMessage != null) + { + Console.WriteLine($"Invalid message has been received, message id={args.ReceivedMessage.MessageId} body={args.ReceivedMessage.Body}"); + + if (args.RunSynchronously) + { + args.Queue.DeleteMessage(args.ReceivedMessage.MessageId, args.ReceivedMessage.PopReceipt); + } + else + { + await args.Queue.DeleteMessageAsync(args.ReceivedMessage.MessageId, args.ReceivedMessage.PopReceipt); + } + } + }; + + QueueClient queueClient = new QueueClient(connectionString, queueName, queueClientOptions); + #endregion + } + } +} diff --git a/sdk/storage/Azure.Storage.Queues/src/Azure.Storage.Queues.csproj b/sdk/storage/Azure.Storage.Queues/src/Azure.Storage.Queues.csproj index 442639c8e4160..4867ce8e81e53 100644 --- a/sdk/storage/Azure.Storage.Queues/src/Azure.Storage.Queues.csproj +++ b/sdk/storage/Azure.Storage.Queues/src/Azure.Storage.Queues.csproj @@ -36,6 +36,7 @@ + diff --git a/sdk/storage/Azure.Storage.Queues/src/QueueClient.cs b/sdk/storage/Azure.Storage.Queues/src/QueueClient.cs index 67adbae6b976c..d7aa3f63c355e 100644 --- a/sdk/storage/Azure.Storage.Queues/src/QueueClient.cs +++ b/sdk/storage/Azure.Storage.Queues/src/QueueClient.cs @@ -3,7 +3,6 @@ using System; using System.Collections.Generic; -using System.ComponentModel; using System.Globalization; using System.Linq; using System.Threading; @@ -207,7 +206,8 @@ public QueueClient(string connectionString, string queueName, QueueClientOptions clientDiagnostics: new ClientDiagnostics(options), version: options.Version, clientSideEncryption: QueueClientSideEncryptionOptions.CloneFrom(options._clientSideEncryptionOptions), - messageEncoding: options.MessageEncoding); + messageEncoding: options.MessageEncoding, + queueMessageDecodingFailedHandlers: options.GetMessageDecodingFailedHandlers()); (QueueRestClient queueRestClient, MessagesRestClient messagesRestClient, MessageIdRestClient messageIdRestClient) = BuildRestClients(); _queueRestClient = queueRestClient; @@ -343,7 +343,8 @@ internal QueueClient( clientDiagnostics: new ClientDiagnostics(options), version: options.Version, clientSideEncryption: QueueClientSideEncryptionOptions.CloneFrom(options._clientSideEncryptionOptions), - messageEncoding: options.MessageEncoding); + messageEncoding: options.MessageEncoding, + queueMessageDecodingFailedHandlers: options.GetMessageDecodingFailedHandlers()); (QueueRestClient queueRestClient, MessagesRestClient messagesRestClient, MessageIdRestClient messageIdRestClient) = BuildRestClients(); _queueRestClient = queueRestClient; @@ -442,7 +443,8 @@ protected internal virtual QueueClient WithClientSideEncryptionOptionsCore(Clien ClientConfiguration.ClientDiagnostics, ClientConfiguration.Version, QueueClientSideEncryptionOptions.CloneFrom(clientSideEncryptionOptions), - ClientConfiguration.MessageEncoding); + ClientConfiguration.MessageEncoding, + ClientConfiguration.QueueMessageDecodingFailedHandlers); return new QueueClient( Uri, @@ -2208,17 +2210,21 @@ private async Task> ReceiveMessagesInternal( if (response.IsUnavailable()) { return response.GetRawResponse().AsNoBodyResponse(); - } - else if (UsingClientSideEncryption) - { - return Response.FromValue( - await new QueueClientSideDecryptor(ClientConfiguration.ClientSideEncryption) - .ClientSideDecryptMessagesInternal(response.Value.Select(x => QueueMessage.ToQueueMessage(x, ClientConfiguration.MessageEncoding)).ToArray(), async, cancellationToken).ConfigureAwait(false), - response.GetRawResponse()); - } - else + } else { - return Response.FromValue(response.Value.Select(x => QueueMessage.ToQueueMessage(x, ClientConfiguration.MessageEncoding)).ToArray(), response.GetRawResponse()); + QueueMessage[] queueMessages = await ToQueueMessagesWithInvalidMessageHandling(response.Value, async, cancellationToken).ConfigureAwait(false); + + if (UsingClientSideEncryption) + { + return Response.FromValue( + await new QueueClientSideDecryptor(ClientConfiguration.ClientSideEncryption) + .ClientSideDecryptMessagesInternal(queueMessages, async, cancellationToken).ConfigureAwait(false), + response.GetRawResponse()); + } + else + { + return Response.FromValue(queueMessages, response.GetRawResponse()); + } } } catch (Exception ex) @@ -2235,6 +2241,34 @@ private async Task> ReceiveMessagesInternal( } } + private async Task ToQueueMessagesWithInvalidMessageHandling( + IEnumerable dequeuedMessageItems, + bool async, + CancellationToken cancellationToken) + { + List queueMessages = new List(); + + foreach (var dequeuedMessageItem in dequeuedMessageItems) + { + try + { + queueMessages.Add(QueueMessage.ToQueueMessage(dequeuedMessageItem, ClientConfiguration.MessageEncoding)); + } + catch (FormatException) when (ClientConfiguration.QueueMessageDecodingFailedHandlers != null) + { +#pragma warning disable AZC0110 // DO NOT use await keyword in possibly synchronous scope. + await OnMessageDecodingFailedAsync( + QueueMessage.ToQueueMessage(dequeuedMessageItem, QueueMessageEncoding.None), + null, + !async, + cancellationToken).ConfigureAwait(false); +#pragma warning restore AZC0110 // DO NOT use await keyword in possibly synchronous scope. + } + } + + return queueMessages.ToArray(); + } + #endregion ReceiveMessages #region ReceiveMessage @@ -2524,16 +2558,21 @@ private async Task> PeekMessagesInternal( { return response.GetRawResponse().AsNoBodyResponse(); } - else if (UsingClientSideEncryption) - { - return Response.FromValue( - await new QueueClientSideDecryptor(ClientConfiguration.ClientSideEncryption) - .ClientSideDecryptMessagesInternal(response.Value.Select(x => PeekedMessage.ToPeekedMessage(x, ClientConfiguration.MessageEncoding)).ToArray(), async, cancellationToken).ConfigureAwait(false), - response.GetRawResponse()); - } else { - return Response.FromValue(response.Value.Select(x => PeekedMessage.ToPeekedMessage(x, ClientConfiguration.MessageEncoding)).ToArray(), response.GetRawResponse()); + PeekedMessage[] peekedMessages = await ToPeekedMessagesWithInvalidMessageHandling(response.Value, async, cancellationToken).ConfigureAwait(false); + + if (UsingClientSideEncryption) + { + return Response.FromValue( + await new QueueClientSideDecryptor(ClientConfiguration.ClientSideEncryption) + .ClientSideDecryptMessagesInternal(peekedMessages, async, cancellationToken).ConfigureAwait(false), + response.GetRawResponse()); + } + else + { + return Response.FromValue(peekedMessages, response.GetRawResponse()); + } } } catch (Exception ex) @@ -2549,6 +2588,35 @@ private async Task> PeekMessagesInternal( } } } + + private async Task ToPeekedMessagesWithInvalidMessageHandling( + IEnumerable peekedMessageItems, + bool async, + CancellationToken cancellationToken) + { + List peekedMessages = new List(); + + foreach (var peekedMessageItem in peekedMessageItems) + { + try + { + peekedMessages.Add(PeekedMessage.ToPeekedMessage(peekedMessageItem, ClientConfiguration.MessageEncoding)); + } + catch (FormatException) when (ClientConfiguration.QueueMessageDecodingFailedHandlers != null) + { +#pragma warning disable AZC0110 // DO NOT use await keyword in possibly synchronous scope. + await OnMessageDecodingFailedAsync( + null, + PeekedMessage.ToPeekedMessage(peekedMessageItem, QueueMessageEncoding.None), + !async, + cancellationToken).ConfigureAwait(false); +#pragma warning restore AZC0110 // DO NOT use await keyword in possibly synchronous scope. + } + } + + return peekedMessages.ToArray(); + } + #endregion PeekMessages /// @@ -3098,7 +3166,62 @@ private void AssertEncodingForEncryption() $" if {nameof(SpecializedQueueClientOptions.ClientSideEncryption)} is enabled as encrypted payload is already Base64 encoded."); } } + + /// + /// Raises event. + /// + /// The with raw body, if present. + /// The with raw body, if present. + /// A value indicating whether the event handler was invoked + /// synchronously or asynchronously. + /// Cancellation token. + /// + protected virtual async Task OnMessageDecodingFailedAsync(QueueMessage receivedMessage, PeekedMessage peekedMessage, + bool runSynchronously, CancellationToken cancellationToken) + { + await ClientConfiguration.QueueMessageDecodingFailedHandlers.RaiseAsync( + new QueueMessageDecodingFailedEventArgs( + queueClient: this, + receivedMessage: receivedMessage, + peekedMessage: peekedMessage, + runSynchronously: runSynchronously, + cancellationToken: cancellationToken), + nameof(QueueClientOptions), + nameof(QueueClientOptions.MessageDecodingFailed), + ClientConfiguration.ClientDiagnostics).ConfigureAwait(false); + } + #endregion Encoding + + #region GetParentQueueServiceClientCore + + private QueueServiceClient _parentQueueServiceClient; + + /// + /// Create a new that pointing to this 's queue service. + /// The new + /// uses the same request policy pipeline as the + /// . + /// + /// A new instance. + protected internal virtual QueueServiceClient GetParentQueueServiceClientCore() + { + if (_parentQueueServiceClient == null) + { + QueueUriBuilder queueUriBuilder = new QueueUriBuilder(Uri) + { + // erase parameters unrelated to service + QueueName = null, + }; + + _parentQueueServiceClient = new QueueServiceClient( + queueUriBuilder.ToUri(), + ClientConfiguration); + } + + return _parentQueueServiceClient; + } + #endregion } } @@ -3118,5 +3241,18 @@ public static partial class SpecializedQueueExtensions /// New instance with provided options and same internals otherwise. public static QueueClient WithClientSideEncryptionOptions(this QueueClient client, ClientSideEncryptionOptions clientSideEncryptionOptions) => client.WithClientSideEncryptionOptionsCore(clientSideEncryptionOptions); + + /// + /// Create a new that pointing to this 's queue service. + /// The new + /// uses the same request policy pipeline as the + /// . + /// + /// A new instance. + public static QueueServiceClient GetParentQueueServiceClient(this QueueClient client) + { + Argument.AssertNotNull(client, nameof(client)); + return client.GetParentQueueServiceClientCore(); + } } } diff --git a/sdk/storage/Azure.Storage.Queues/src/QueueClientConfiguration.cs b/sdk/storage/Azure.Storage.Queues/src/QueueClientConfiguration.cs index 158e89f755bc1..cacb5e99d12e8 100644 --- a/sdk/storage/Azure.Storage.Queues/src/QueueClientConfiguration.cs +++ b/sdk/storage/Azure.Storage.Queues/src/QueueClientConfiguration.cs @@ -1,6 +1,7 @@ // Copyright (c) Microsoft Corporation. All rights reserved. // Licensed under the MIT License. +using Azure.Core; using Azure.Core.Pipeline; using Azure.Storage.Queues.Specialized; using Azure.Storage.Shared; @@ -15,18 +16,22 @@ internal class QueueClientConfiguration : StorageClientConfiguration public QueueMessageEncoding MessageEncoding { get; internal set; } + public SyncAsyncEventHandler QueueMessageDecodingFailedHandlers { get; internal set; } + public QueueClientConfiguration( HttpPipeline pipeline, StorageSharedKeyCredential sharedKeyCredential, ClientDiagnostics clientDiagnostics, QueueClientOptions.ServiceVersion version, QueueClientSideEncryptionOptions clientSideEncryption, - QueueMessageEncoding messageEncoding) + QueueMessageEncoding messageEncoding, + SyncAsyncEventHandler queueMessageDecodingFailedHandlers) : base(pipeline, sharedKeyCredential, clientDiagnostics) { Version = version; ClientSideEncryption = clientSideEncryption; MessageEncoding = messageEncoding; + QueueMessageDecodingFailedHandlers = queueMessageDecodingFailedHandlers; } } } diff --git a/sdk/storage/Azure.Storage.Queues/src/QueueClientOptions.cs b/sdk/storage/Azure.Storage.Queues/src/QueueClientOptions.cs index 50c2487e130c1..042d205d41262 100644 --- a/sdk/storage/Azure.Storage.Queues/src/QueueClientOptions.cs +++ b/sdk/storage/Azure.Storage.Queues/src/QueueClientOptions.cs @@ -1,11 +1,11 @@ -// Copyright (c) Microsoft Corporation. All rights reserved. +// Copyright (c) Microsoft Corporation. All rights reserved. // Licensed under the MIT License. using System; +using System.Threading.Tasks; using Azure.Core; using Azure.Core.Pipeline; using Azure.Storage.Queues.Models; -using Azure.Storage.Queues.Specialized; namespace Azure.Storage.Queues { @@ -118,6 +118,58 @@ public QueueClientOptions(ServiceVersion version = LatestVersion) /// public QueueMessageEncoding MessageEncoding { get; set; } = QueueMessageEncoding.None; + /// + /// Optional. Performs the tasks needed when a message is received or peaked from the queue but cannot be decoded. + /// + /// Such message can be received or peaked when is expecting certain + /// but there's another producer that is not encoding messages in expected way. I.e. the queue contains messages with different encoding. + /// + /// contains that has received the message as well as + /// or + /// with raw body, i.e. no decoding will be attempted so that + /// body can be inspected as has been received from the queue. + /// + /// The won't attempt to remove the message from the queue. Therefore such handling should be included into + /// the event handler itself. + /// + /// The handler is potentially invoked by both synchronous and asynchronous receive and peek APIs. Therefore implementation of the handler should align with + /// APIs that are being used. + /// See about how to implement handler correctly. The example below shows a handler with all possible cases explored. + /// + /// QueueClientOptions queueClientOptions = new QueueClientOptions() + /// { + /// MessageEncoding = QueueMessageEncoding.Base64 + /// }; + /// + /// queueClientOptions.MessageDecodingFailed += async (QueueMessageDecodingFailedEventArgs args) => + /// { + /// if (args.PeekedMessage != null) + /// { + /// Console.WriteLine($"Invalid message has been peeked, message id={args.PeekedMessage.MessageId} body={args.PeekedMessage.Body}"); + /// } + /// else if (args.ReceivedMessage != null) + /// { + /// Console.WriteLine($"Invalid message has been received, message id={args.ReceivedMessage.MessageId} body={args.ReceivedMessage.Body}"); + /// + /// if (args.RunSynchronously) + /// { + /// args.Queue.DeleteMessage(args.ReceivedMessage.MessageId, args.ReceivedMessage.PopReceipt); + /// } + /// else + /// { + /// await args.Queue.DeleteMessageAsync(args.ReceivedMessage.MessageId, args.ReceivedMessage.PopReceipt); + /// } + /// } + /// }; + /// + /// QueueClient queueClient = new QueueClient(connectionString, queueName, queueClientOptions); + /// + /// + /// + public event SyncAsyncEventHandler MessageDecodingFailed; + + internal SyncAsyncEventHandler GetMessageDecodingFailedHandlers() => MessageDecodingFailed; + #region Advanced Options internal ClientSideEncryptionOptions _clientSideEncryptionOptions; #endregion diff --git a/sdk/storage/Azure.Storage.Queues/src/QueueMessageDecodingFailedEventArgs.cs b/sdk/storage/Azure.Storage.Queues/src/QueueMessageDecodingFailedEventArgs.cs new file mode 100644 index 0000000000000..a48179fb47a2f --- /dev/null +++ b/sdk/storage/Azure.Storage.Queues/src/QueueMessageDecodingFailedEventArgs.cs @@ -0,0 +1,68 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. + +using System.Threading; +using Azure.Core; +using Azure.Storage.Queues.Models; + +namespace Azure.Storage.Queues +{ + /// + /// Contains information about message that could not be decoded. + /// See also . + /// + public class QueueMessageDecodingFailedEventArgs : SyncAsyncEventArgs + { + /// + /// Gets the that has received message. + /// + public QueueClient Queue { get; } + + /// + /// Gets the that has been received and could not be decoded. + /// The body of the message is as received, i.e. no decoding is attempted. + /// + public QueueMessage ReceivedMessage { get; } + + /// + /// Gets the that has been peeked and could not be decoded. + /// The body of the message is as received, i.e. no decoding is attempted. + /// + public PeekedMessage PeekedMessage { get; } + + /// + /// Initializes a new instance of the . + /// + /// The that has received invalid message. + /// The received message. + /// The peeked message. + /// + /// A value indicating whether the event handler was invoked + /// synchronously or asynchronously. Please see + /// for more details. + /// + /// + /// A cancellation token related to the original operation that raised + /// the event. It's important for your handler to pass this token + /// along to any asynchronous or long-running synchronous operations + /// that take a token so cancellation will correctly propagate. The + /// default value is . + /// + /// + /// Thrown if is null. + /// + public QueueMessageDecodingFailedEventArgs( + QueueClient queueClient, + QueueMessage receivedMessage, + PeekedMessage peekedMessage, + bool runSynchronously, + CancellationToken cancellationToken) + : base(runSynchronously, cancellationToken) + { + Argument.AssertNotNull(queueClient, nameof(queueClient)); + Queue = queueClient; + ReceivedMessage = receivedMessage; + PeekedMessage = peekedMessage; + } + } +} diff --git a/sdk/storage/Azure.Storage.Queues/src/QueueServiceClient.cs b/sdk/storage/Azure.Storage.Queues/src/QueueServiceClient.cs index 81bbc3dba3d22..a1cc6db5d8abe 100644 --- a/sdk/storage/Azure.Storage.Queues/src/QueueServiceClient.cs +++ b/sdk/storage/Azure.Storage.Queues/src/QueueServiceClient.cs @@ -8,7 +8,6 @@ using System.Threading.Tasks; using Azure.Core; using Azure.Core.Pipeline; -using Azure.Storage.Cryptography; using Azure.Storage.Queues.Models; using Azure.Storage.Queues.Specialized; using Azure.Storage.Sas; @@ -132,7 +131,8 @@ public QueueServiceClient(string connectionString, QueueClientOptions options) clientDiagnostics: new ClientDiagnostics(options), version: options.Version, clientSideEncryption: QueueClientSideEncryptionOptions.CloneFrom(options._clientSideEncryptionOptions), - messageEncoding: options.MessageEncoding); + messageEncoding: options.MessageEncoding, + queueMessageDecodingFailedHandlers: options.GetMessageDecodingFailedHandlers()); _serviceRestClient = BuildServiceRestClient(); } @@ -258,11 +258,34 @@ internal QueueServiceClient( clientDiagnostics: new ClientDiagnostics(options), version: options.Version, clientSideEncryption: QueueClientSideEncryptionOptions.CloneFrom(options._clientSideEncryptionOptions), - messageEncoding: options.MessageEncoding); + messageEncoding: options.MessageEncoding, + queueMessageDecodingFailedHandlers: options.GetMessageDecodingFailedHandlers()); _serviceRestClient = BuildServiceRestClient(); } + /// + /// Initializes a new instance of the + /// class. + /// + /// + /// A referencing the queue service. + /// This is likely to be similar to "https://{account_name}.queue.core.windows.net". + /// + /// + /// . + /// + internal QueueServiceClient( + Uri serviceUri, + QueueClientConfiguration clientConfiguration) + { + Argument.AssertNotNull(serviceUri, nameof(serviceUri)); + Argument.AssertNotNull(clientConfiguration, nameof(clientConfiguration)); + _uri = serviceUri; + _clientConfiguration = clientConfiguration; + _serviceRestClient = BuildServiceRestClient(); + } + private ServiceRestClient BuildServiceRestClient() => new ServiceRestClient( _clientConfiguration.ClientDiagnostics, diff --git a/sdk/storage/Azure.Storage.Queues/tests/QueueClientTests.cs b/sdk/storage/Azure.Storage.Queues/tests/QueueClientTests.cs index 1eabd906497cb..31c831d481caf 100644 --- a/sdk/storage/Azure.Storage.Queues/tests/QueueClientTests.cs +++ b/sdk/storage/Azure.Storage.Queues/tests/QueueClientTests.cs @@ -15,6 +15,10 @@ using System.Buffers.Text; using System.Text; using Moq; +using System.Threading; +using System.Runtime.InteropServices; +using Azure.Storage.Queues.Specialized; +using Moq.Protected; namespace Azure.Storage.Queues.Test { @@ -786,6 +790,93 @@ public async Task DecodesPeekedMessage() Assert.AreEqual(messageText, receivedMessage.MessageText); } + [Test] + public async Task FailsOnInvalidPeekedMessageIfNoHandlerIsProvided() + { + // Arrange + await using DisposingQueue test = await GetTestQueueAsync(); + var encodingClient = GetEncodingClient(test.Queue.Name, QueueMessageEncoding.Base64); + var nonEncodedContent = "test_content"; + + await test.Queue.SendMessageAsync(nonEncodedContent); + + // Act + await TestHelper.AssertExpectedExceptionAsync( + encodingClient.PeekMessagesAsync(), + e => + { + StringAssert.Contains("The input is not a valid Base-64 string", e.Message); + }); + } + + [Test] + public async Task CanHandleInvalidPeekedMessageAndReturnValid() + { + // Arrange + await using DisposingQueue test = await GetTestQueueAsync(); + PeekedMessage badMessage = null; + PeekedMessage badMessage2 = null; + var encodingClient = GetEncodingClient( + test.Queue.Name, + QueueMessageEncoding.Base64, + arg => + { + badMessage = arg.PeekedMessage; + return Task.CompletedTask; + }, + arg => + { + badMessage2 = arg.PeekedMessage; + return Task.CompletedTask; + }); + var nonEncodedContent = "test_content"; + + await test.Queue.SendMessageAsync(nonEncodedContent); + await encodingClient.SendMessageAsync(nonEncodedContent); + + // Act + PeekedMessage[] peekedMessages = await encodingClient.PeekMessagesAsync(10); + + // Assert + Assert.AreEqual(1, peekedMessages.Count()); + Assert.NotNull(badMessage); + Assert.AreEqual(nonEncodedContent, badMessage.Body.ToString()); + Assert.NotNull(badMessage2); + Assert.AreEqual(nonEncodedContent, badMessage2.Body.ToString()); + } + + [Test] + public async Task PropagatesExceptionIfInvalidPeekedMessageAndHandlerThrows() + { + // Arrange + await using DisposingQueue test = await GetTestQueueAsync(); + var encodingClient = GetEncodingClient( + test.Queue.Name, + QueueMessageEncoding.Base64, + arg => + { + throw new ArgumentException("KABOOM1"); + }, + arg => + { + throw new ArgumentException("KABOOM2"); + }); + var nonEncodedContent = "test_content"; + + await test.Queue.SendMessageAsync(nonEncodedContent); + await encodingClient.SendMessageAsync(nonEncodedContent); + + // Act + await TestHelper.AssertExpectedExceptionAsync( + encodingClient.PeekMessagesAsync(10), + e => + { + Assert.AreEqual(2, e.InnerExceptions.Count); + Assert.AreEqual("KABOOM1", e.InnerExceptions[0].Message); + Assert.AreEqual("KABOOM2", e.InnerExceptions[1].Message); + }); + } + [Test] public async Task CanSendAndReceiveNonUTFBytes() { @@ -807,6 +898,139 @@ public async Task CanSendAndReceiveNonUTFBytes() CollectionAssert.AreEqual(content, receivedMessage.Body.ToArray()); } + [Test] + public async Task FailsOnInvalidQueueMessageIfNoHandlerIsProvided() + { + // Arrange + await using DisposingQueue test = await GetTestQueueAsync(); + var encodingClient = GetEncodingClient(test.Queue.Name, QueueMessageEncoding.Base64); + var nonEncodedContent = "test_content"; + + await test.Queue.SendMessageAsync(nonEncodedContent); + + // Act + await TestHelper.AssertExpectedExceptionAsync( + encodingClient.ReceiveMessagesAsync(), + e => + { + StringAssert.Contains("The input is not a valid Base-64 string", e.Message); + }); + } + + [Test] + public async Task CanHandleInvalidMessageAndReturnValid() + { + // Arrange + await using DisposingQueue test = await GetTestQueueAsync(); + QueueMessage badMessage = null; + QueueMessage badMessage2 = null; + var encodingClient = GetEncodingClient( + test.Queue.Name, + QueueMessageEncoding.Base64, + arg => + { + badMessage = arg.ReceivedMessage; + return Task.CompletedTask; + }, + arg => + { + badMessage2 = arg.ReceivedMessage; + return Task.CompletedTask; + }); + var nonEncodedContent = "test_content"; + + await test.Queue.SendMessageAsync(nonEncodedContent); + await encodingClient.SendMessageAsync(nonEncodedContent); + + // Act + QueueMessage[] queueMessages = await encodingClient.ReceiveMessagesAsync(10); + + // Assert + Assert.AreEqual(1, queueMessages.Count()); + Assert.NotNull(badMessage); + Assert.AreEqual(nonEncodedContent, badMessage.Body.ToString()); + Assert.NotNull(badMessage2); + Assert.AreEqual(nonEncodedContent, badMessage2.Body.ToString()); + } + + [Test] + public async Task TakesSnapshotOfMessageDecodingFailedHandlersAtConstruction() + { + // Arrange + await using DisposingQueue test = await GetTestQueueAsync(); + QueueMessage badMessage = null; + QueueMessage badMessage2 = null; + QueueMessage badMessage3 = null; + var options = GetOptions(); + options.MessageEncoding = QueueMessageEncoding.Base64; + options.MessageDecodingFailed += arg => + { + badMessage = arg.ReceivedMessage; + return Task.CompletedTask; + }; + options.MessageDecodingFailed += arg => + { + badMessage2 = arg.ReceivedMessage; + return Task.CompletedTask; + }; + + var encodingClient = GetServiceClient_SharedKey(options).GetQueueClient(test.Queue.Name); + + // add third handler after client creation + options.MessageDecodingFailed += arg => + { + badMessage3 = arg.ReceivedMessage; + return Task.CompletedTask; + }; + var nonEncodedContent = "test_content"; + + await test.Queue.SendMessageAsync(nonEncodedContent); + await encodingClient.SendMessageAsync(nonEncodedContent); + + // Act + QueueMessage[] queueMessages = await encodingClient.ReceiveMessagesAsync(10); + + // Assert + Assert.AreEqual(1, queueMessages.Count()); + Assert.NotNull(badMessage); + Assert.AreEqual(nonEncodedContent, badMessage.Body.ToString()); + Assert.NotNull(badMessage2); + Assert.AreEqual(nonEncodedContent, badMessage2.Body.ToString()); + Assert.Null(badMessage3); + } + + [Test] + public async Task PropagatesExceptionIfInvalidQueueMessageAndHandlerThrows() + { + // Arrange + await using DisposingQueue test = await GetTestQueueAsync(); + var encodingClient = GetEncodingClient( + test.Queue.Name, + QueueMessageEncoding.Base64, + arg => + { + throw new ArgumentException("KABOOM1"); + }, + arg => + { + throw new ArgumentException("KABOOM2"); + }); + var nonEncodedContent = "test_content"; + + await test.Queue.SendMessageAsync(nonEncodedContent); + await encodingClient.SendMessageAsync(nonEncodedContent); + + // Act + await TestHelper.AssertExpectedExceptionAsync( + encodingClient.ReceiveMessagesAsync(10), + e => + { + Assert.AreEqual(2, e.InnerExceptions.Count); + Assert.AreEqual("KABOOM1", e.InnerExceptions[0].Message); + Assert.AreEqual("KABOOM2", e.InnerExceptions[1].Message); + }); + } + [Test] public async Task SendMessageAsync_SAS() { @@ -1507,6 +1731,55 @@ public void GenerateSas_BuilderWrongName() } #endregion + [Test] + public void CanMockQueueServiceClientRetrieval() + { + // Arrange + Mock queueClientMock = new Mock(); + Mock queueServiceClientMock = new Mock(); + queueClientMock.Protected().Setup("GetParentQueueServiceClientCore").Returns(queueServiceClientMock.Object); + + // Act + var queueServiceClient = queueClientMock.Object.GetParentQueueServiceClient(); + + // Assert + Assert.IsNotNull(queueServiceClient); + Assert.AreSame(queueServiceClientMock.Object, queueServiceClient); + } + + [Test] + public async Task CanGetParentQueueServiceClient() + { + // Arrange + await using DisposingQueue test = await GetTestQueueAsync(); + + // Act + var queueServiceClient = test.Queue.GetParentQueueServiceClient(); + // make sure that client is functional + QueueServiceProperties queueServiceProperties = await queueServiceClient.GetPropertiesAsync(); + + // Assert + Assert.AreEqual(test.Queue.AccountName, queueServiceClient.AccountName); + } + + [Test] + public async Task CanGetParentQueueServiceClient_WithAccountSAS() + { + // Arrange + QueueClient queueClient = InstrumentClient( + GetServiceClient_AccountSas( + sasCredentials: GetNewAccountSasCredentials(resourceTypes: AccountSasResourceTypes.All)) + .GetQueueClient(GetNewQueueName())); + + // Act + var queueServiceClient = queueClient.GetParentQueueServiceClient(); + // make sure that client is functional + QueueServiceProperties queueServiceProperties = await queueServiceClient.GetPropertiesAsync(); + + // Assert + Assert.AreEqual(queueClient.AccountName, queueServiceClient.AccountName); + } + [Test] public void CanMockClientConstructors() { diff --git a/sdk/storage/Azure.Storage.Queues/tests/QueueTestBase.cs b/sdk/storage/Azure.Storage.Queues/tests/QueueTestBase.cs index 29dfc4cde1559..2b2259edd3e00 100644 --- a/sdk/storage/Azure.Storage.Queues/tests/QueueTestBase.cs +++ b/sdk/storage/Azure.Storage.Queues/tests/QueueTestBase.cs @@ -56,13 +56,15 @@ public QueueClientOptions GetOptions() } public QueueServiceClient GetServiceClient_SharedKey(QueueClientOptions options = default) - => InstrumentClient( - new QueueServiceClient( + => InstrumentClient(GetServiceClient_SharedKey_UnInstrumented(options)); + + private QueueServiceClient GetServiceClient_SharedKey_UnInstrumented(QueueClientOptions options = default) + => new QueueServiceClient( new Uri(TestConfigDefault.QueueServiceEndpoint), new StorageSharedKeyCredential( TestConfigDefault.AccountName, TestConfigDefault.AccountKey), - options ?? GetOptions())); + options ?? GetOptions()); public QueueServiceClient GetServiceClient_AccountSas(StorageSharedKeyCredential sharedKeyCredentials = default, SasQueryParameters sasCredentials = default) => InstrumentClient( @@ -153,12 +155,18 @@ public async Task GetTestQueueAsync( public QueueClient GetEncodingClient( string queueName, - QueueMessageEncoding encoding) + QueueMessageEncoding encoding, + params SyncAsyncEventHandler[] messageDecodingFailedHandlers) { var options = GetOptions(); options.MessageEncoding = encoding; - var service = GetServiceClient_SharedKey(options); - return InstrumentClient(service.GetQueueClient(queueName)); + foreach (var messageDecodingFailedHandler in messageDecodingFailedHandlers) + { + options.MessageDecodingFailed += messageDecodingFailedHandler; + } + var service = GetServiceClient_SharedKey_UnInstrumented(options); + var queueClient = service.GetQueueClient(queueName); + return InstrumentClient(queueClient); } public StorageSharedKeyCredential GetNewSharedKeyCredentials() diff --git a/sdk/storage/Azure.Storage.Queues/tests/SessionRecords/QueueClientTests/CanGetParentQueueServiceClient.json b/sdk/storage/Azure.Storage.Queues/tests/SessionRecords/QueueClientTests/CanGetParentQueueServiceClient.json new file mode 100644 index 0000000000000..68633a616766b --- /dev/null +++ b/sdk/storage/Azure.Storage.Queues/tests/SessionRecords/QueueClientTests/CanGetParentQueueServiceClient.json @@ -0,0 +1,101 @@ +{ + "Entries": [ + { + "RequestUri": "https://kasoboltest.queue.core.windows.net/test-queue-eb583422-be3e-04a5-2b84-9b268aba2444", + "RequestMethod": "PUT", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "traceparent": "00-bee466e23f8d3c44bb30ee41e9a0252a-3b1488b4664bec47-00", + "User-Agent": [ + "azsdk-net-Storage.Queues/12.7.0-alpha.20210127.1", + "(.NET Framework 4.8.4250.0; Microsoft Windows 10.0.19042 )" + ], + "x-ms-client-request-id": "f5dbabfe-0675-9d9b-8603-f26310798aab", + "x-ms-date": "Thu, 28 Jan 2021 00:29:47 GMT", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2018-11-09" + }, + "RequestBody": null, + "StatusCode": 201, + "ResponseHeaders": { + "Content-Length": "0", + "Date": "Thu, 28 Jan 2021 00:29:47 GMT", + "Server": [ + "Windows-Azure-Queue/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "x-ms-request-id": "e015b8db-5003-0039-770c-f51457000000", + "x-ms-version": "2018-11-09" + }, + "ResponseBody": [] + }, + { + "RequestUri": "https://kasoboltest.queue.core.windows.net/?restype=service\u0026comp=properties", + "RequestMethod": "GET", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "traceparent": "00-31d73b8fa0613942a50098e038e446ad-c23b83930dbce049-00", + "User-Agent": [ + "azsdk-net-Storage.Queues/12.7.0-alpha.20210127.1", + "(.NET Framework 4.8.4250.0; Microsoft Windows 10.0.19042 )" + ], + "x-ms-client-request-id": "df282ce3-2edf-03ce-af70-625c4e1a0ba5", + "x-ms-date": "Thu, 28 Jan 2021 00:29:47 GMT", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2018-11-09" + }, + "RequestBody": null, + "StatusCode": 200, + "ResponseHeaders": { + "Cache-Control": "no-cache", + "Content-Type": "application/xml", + "Date": "Thu, 28 Jan 2021 00:29:47 GMT", + "Server": [ + "Windows-Azure-Queue/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "Transfer-Encoding": "chunked", + "Vary": "Origin", + "x-ms-request-id": "e015b8f9-5003-0039-0f0c-f51457000000", + "x-ms-version": "2018-11-09" + }, + "ResponseBody": "\uFEFF\u003C?xml version=\u00221.0\u0022 encoding=\u0022utf-8\u0022?\u003E\u003CStorageServiceProperties\u003E\u003CLogging\u003E\u003CVersion\u003E1.0\u003C/Version\u003E\u003CRead\u003Etrue\u003C/Read\u003E\u003CWrite\u003Etrue\u003C/Write\u003E\u003CDelete\u003Efalse\u003C/Delete\u003E\u003CRetentionPolicy\u003E\u003CEnabled\u003Etrue\u003C/Enabled\u003E\u003CDays\u003E5\u003C/Days\u003E\u003C/RetentionPolicy\u003E\u003C/Logging\u003E\u003CHourMetrics\u003E\u003CVersion\u003E1.0\u003C/Version\u003E\u003CEnabled\u003Etrue\u003C/Enabled\u003E\u003CIncludeAPIs\u003Efalse\u003C/IncludeAPIs\u003E\u003CRetentionPolicy\u003E\u003CEnabled\u003Etrue\u003C/Enabled\u003E\u003CDays\u003E6\u003C/Days\u003E\u003C/RetentionPolicy\u003E\u003C/HourMetrics\u003E\u003CMinuteMetrics\u003E\u003CVersion\u003E1.0\u003C/Version\u003E\u003CEnabled\u003Etrue\u003C/Enabled\u003E\u003CIncludeAPIs\u003Efalse\u003C/IncludeAPIs\u003E\u003CRetentionPolicy\u003E\u003CEnabled\u003Etrue\u003C/Enabled\u003E\u003CDays\u003E6\u003C/Days\u003E\u003C/RetentionPolicy\u003E\u003C/MinuteMetrics\u003E\u003CCors\u003E\u003CCorsRule\u003E\u003CAllowedMethods\u003EGET,PUT\u003C/AllowedMethods\u003E\u003CAllowedOrigins\u003Ewww.ab.com,www.bc.com\u003C/AllowedOrigins\u003E\u003CAllowedHeaders\u003Ex-ms-meta-xyz,x-ms-meta-foo,x-ms-meta-data*,x-ms-meta-target*\u003C/AllowedHeaders\u003E\u003CExposedHeaders\u003Ex-ms-meta-abc,x-ms-meta-bcd,x-ms-meta-data*,x-ms-meta-source*\u003C/ExposedHeaders\u003E\u003CMaxAgeInSeconds\u003E500\u003C/MaxAgeInSeconds\u003E\u003C/CorsRule\u003E\u003C/Cors\u003E\u003C/StorageServiceProperties\u003E" + }, + { + "RequestUri": "https://kasoboltest.queue.core.windows.net/test-queue-eb583422-be3e-04a5-2b84-9b268aba2444", + "RequestMethod": "DELETE", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "traceparent": "00-21b891edfdccfc418a5a82482b5f857c-53b654d9e9f3b94d-00", + "User-Agent": [ + "azsdk-net-Storage.Queues/12.7.0-alpha.20210127.1", + "(.NET Framework 4.8.4250.0; Microsoft Windows 10.0.19042 )" + ], + "x-ms-client-request-id": "e480f13d-ab50-4acb-2859-9063e01f939b", + "x-ms-date": "Thu, 28 Jan 2021 00:29:48 GMT", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2018-11-09" + }, + "RequestBody": null, + "StatusCode": 204, + "ResponseHeaders": { + "Content-Length": "0", + "Date": "Thu, 28 Jan 2021 00:29:47 GMT", + "Server": [ + "Windows-Azure-Queue/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "x-ms-request-id": "e015b904-5003-0039-190c-f51457000000", + "x-ms-version": "2018-11-09" + }, + "ResponseBody": [] + } + ], + "Variables": { + "RandomSeed": "483653735", + "Storage_TestConfigDefault": "ProductionTenant\nkasoboltest\nU2FuaXRpemVk\nhttps://kasoboltest.blob.core.windows.net\nhttps://kasoboltest.file.core.windows.net\nhttps://kasoboltest.queue.core.windows.net\nhttps://kasoboltest.table.core.windows.net\n\n\n\n\nhttps://kasoboltest-secondary.blob.core.windows.net\nhttps://kasoboltest-secondary.file.core.windows.net\nhttps://kasoboltest-secondary.queue.core.windows.net\nhttps://kasoboltest-secondary.table.core.windows.net\n\nSanitized\n\n\nCloud\nBlobEndpoint=https://kasoboltest.blob.core.windows.net/;QueueEndpoint=https://kasoboltest.queue.core.windows.net/;FileEndpoint=https://kasoboltest.file.core.windows.net/;BlobSecondaryEndpoint=https://kasoboltest-secondary.blob.core.windows.net/;QueueSecondaryEndpoint=https://kasoboltest-secondary.queue.core.windows.net/;FileSecondaryEndpoint=https://kasoboltest-secondary.file.core.windows.net/;AccountName=kasoboltest;AccountKey=Kg==;\nencryptionScope" + } +} \ No newline at end of file diff --git a/sdk/storage/Azure.Storage.Queues/tests/SessionRecords/QueueClientTests/CanGetParentQueueServiceClientAsync.json b/sdk/storage/Azure.Storage.Queues/tests/SessionRecords/QueueClientTests/CanGetParentQueueServiceClientAsync.json new file mode 100644 index 0000000000000..5da71f9e90086 --- /dev/null +++ b/sdk/storage/Azure.Storage.Queues/tests/SessionRecords/QueueClientTests/CanGetParentQueueServiceClientAsync.json @@ -0,0 +1,101 @@ +{ + "Entries": [ + { + "RequestUri": "https://kasoboltest.queue.core.windows.net/test-queue-3539c10c-e096-7002-909f-9b531d6a5381", + "RequestMethod": "PUT", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "traceparent": "00-778e982499897c4e94176dc1c89521f3-feb2733850c88443-00", + "User-Agent": [ + "azsdk-net-Storage.Queues/12.7.0-alpha.20210127.1", + "(.NET Framework 4.8.4250.0; Microsoft Windows 10.0.19042 )" + ], + "x-ms-client-request-id": "1d714c12-1753-2da7-089d-af143e90ffc5", + "x-ms-date": "Thu, 28 Jan 2021 00:29:48 GMT", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2018-11-09" + }, + "RequestBody": null, + "StatusCode": 201, + "ResponseHeaders": { + "Content-Length": "0", + "Date": "Thu, 28 Jan 2021 00:29:47 GMT", + "Server": [ + "Windows-Azure-Queue/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "x-ms-request-id": "7ef90633-d003-004e-090c-f59116000000", + "x-ms-version": "2018-11-09" + }, + "ResponseBody": [] + }, + { + "RequestUri": "https://kasoboltest.queue.core.windows.net/?restype=service\u0026comp=properties", + "RequestMethod": "GET", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "traceparent": "00-eda2f670e4fe4b469747df11ae84ab80-a5d7d9a09a74a44b-00", + "User-Agent": [ + "azsdk-net-Storage.Queues/12.7.0-alpha.20210127.1", + "(.NET Framework 4.8.4250.0; Microsoft Windows 10.0.19042 )" + ], + "x-ms-client-request-id": "d040ccd2-35f8-0f2e-29c0-6433027373f1", + "x-ms-date": "Thu, 28 Jan 2021 00:29:48 GMT", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2018-11-09" + }, + "RequestBody": null, + "StatusCode": 200, + "ResponseHeaders": { + "Cache-Control": "no-cache", + "Content-Type": "application/xml", + "Date": "Thu, 28 Jan 2021 00:29:47 GMT", + "Server": [ + "Windows-Azure-Queue/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "Transfer-Encoding": "chunked", + "Vary": "Origin", + "x-ms-request-id": "7ef90639-d003-004e-0d0c-f59116000000", + "x-ms-version": "2018-11-09" + }, + "ResponseBody": "\uFEFF\u003C?xml version=\u00221.0\u0022 encoding=\u0022utf-8\u0022?\u003E\u003CStorageServiceProperties\u003E\u003CLogging\u003E\u003CVersion\u003E1.0\u003C/Version\u003E\u003CRead\u003Etrue\u003C/Read\u003E\u003CWrite\u003Etrue\u003C/Write\u003E\u003CDelete\u003Efalse\u003C/Delete\u003E\u003CRetentionPolicy\u003E\u003CEnabled\u003Etrue\u003C/Enabled\u003E\u003CDays\u003E5\u003C/Days\u003E\u003C/RetentionPolicy\u003E\u003C/Logging\u003E\u003CHourMetrics\u003E\u003CVersion\u003E1.0\u003C/Version\u003E\u003CEnabled\u003Etrue\u003C/Enabled\u003E\u003CIncludeAPIs\u003Efalse\u003C/IncludeAPIs\u003E\u003CRetentionPolicy\u003E\u003CEnabled\u003Etrue\u003C/Enabled\u003E\u003CDays\u003E6\u003C/Days\u003E\u003C/RetentionPolicy\u003E\u003C/HourMetrics\u003E\u003CMinuteMetrics\u003E\u003CVersion\u003E1.0\u003C/Version\u003E\u003CEnabled\u003Etrue\u003C/Enabled\u003E\u003CIncludeAPIs\u003Efalse\u003C/IncludeAPIs\u003E\u003CRetentionPolicy\u003E\u003CEnabled\u003Etrue\u003C/Enabled\u003E\u003CDays\u003E6\u003C/Days\u003E\u003C/RetentionPolicy\u003E\u003C/MinuteMetrics\u003E\u003CCors\u003E\u003CCorsRule\u003E\u003CAllowedMethods\u003EGET,PUT\u003C/AllowedMethods\u003E\u003CAllowedOrigins\u003Ewww.ab.com,www.bc.com\u003C/AllowedOrigins\u003E\u003CAllowedHeaders\u003Ex-ms-meta-xyz,x-ms-meta-foo,x-ms-meta-data*,x-ms-meta-target*\u003C/AllowedHeaders\u003E\u003CExposedHeaders\u003Ex-ms-meta-abc,x-ms-meta-bcd,x-ms-meta-data*,x-ms-meta-source*\u003C/ExposedHeaders\u003E\u003CMaxAgeInSeconds\u003E500\u003C/MaxAgeInSeconds\u003E\u003C/CorsRule\u003E\u003C/Cors\u003E\u003C/StorageServiceProperties\u003E" + }, + { + "RequestUri": "https://kasoboltest.queue.core.windows.net/test-queue-3539c10c-e096-7002-909f-9b531d6a5381", + "RequestMethod": "DELETE", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "traceparent": "00-489659a4e67ae7408aa9881f5443666a-94e1e0e195eb7d4c-00", + "User-Agent": [ + "azsdk-net-Storage.Queues/12.7.0-alpha.20210127.1", + "(.NET Framework 4.8.4250.0; Microsoft Windows 10.0.19042 )" + ], + "x-ms-client-request-id": "7141ee81-2e4f-2ecc-59a3-d289299458c5", + "x-ms-date": "Thu, 28 Jan 2021 00:29:48 GMT", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2018-11-09" + }, + "RequestBody": null, + "StatusCode": 204, + "ResponseHeaders": { + "Content-Length": "0", + "Date": "Thu, 28 Jan 2021 00:29:47 GMT", + "Server": [ + "Windows-Azure-Queue/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "x-ms-request-id": "7ef9063b-d003-004e-0f0c-f59116000000", + "x-ms-version": "2018-11-09" + }, + "ResponseBody": [] + } + ], + "Variables": { + "RandomSeed": "977852964", + "Storage_TestConfigDefault": "ProductionTenant\nkasoboltest\nU2FuaXRpemVk\nhttps://kasoboltest.blob.core.windows.net\nhttps://kasoboltest.file.core.windows.net\nhttps://kasoboltest.queue.core.windows.net\nhttps://kasoboltest.table.core.windows.net\n\n\n\n\nhttps://kasoboltest-secondary.blob.core.windows.net\nhttps://kasoboltest-secondary.file.core.windows.net\nhttps://kasoboltest-secondary.queue.core.windows.net\nhttps://kasoboltest-secondary.table.core.windows.net\n\nSanitized\n\n\nCloud\nBlobEndpoint=https://kasoboltest.blob.core.windows.net/;QueueEndpoint=https://kasoboltest.queue.core.windows.net/;FileEndpoint=https://kasoboltest.file.core.windows.net/;BlobSecondaryEndpoint=https://kasoboltest-secondary.blob.core.windows.net/;QueueSecondaryEndpoint=https://kasoboltest-secondary.queue.core.windows.net/;FileSecondaryEndpoint=https://kasoboltest-secondary.file.core.windows.net/;AccountName=kasoboltest;AccountKey=Kg==;\nencryptionScope" + } +} \ No newline at end of file diff --git a/sdk/storage/Azure.Storage.Queues/tests/SessionRecords/QueueClientTests/CanGetParentQueueServiceClient_WithAccountSAS.json b/sdk/storage/Azure.Storage.Queues/tests/SessionRecords/QueueClientTests/CanGetParentQueueServiceClient_WithAccountSAS.json new file mode 100644 index 0000000000000..c4c9d02feee6d --- /dev/null +++ b/sdk/storage/Azure.Storage.Queues/tests/SessionRecords/QueueClientTests/CanGetParentQueueServiceClient_WithAccountSAS.json @@ -0,0 +1,40 @@ +{ + "Entries": [ + { + "RequestUri": "https://kasoboltest.queue.core.windows.net/?sv=2020-06-12\u0026ss=q\u0026srt=sco\u0026st=2021-01-27T23:35:29Z\u0026se=2021-01-28T01:35:29Z\u0026sp=rwdlaup\u0026sig=Sanitized\u0026restype=service\u0026comp=properties", + "RequestMethod": "GET", + "RequestHeaders": { + "Accept": "application/xml", + "traceparent": "00-13468fe1dfa3fc44a186692ca6c36089-1f95eaa98462a940-00", + "User-Agent": [ + "azsdk-net-Storage.Queues/12.7.0-alpha.20210127.1", + "(.NET Framework 4.8.4250.0; Microsoft Windows 10.0.19042 )" + ], + "x-ms-client-request-id": "cf63d1fe-2647-fe41-2aeb-c862912376dc", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2018-11-09" + }, + "RequestBody": null, + "StatusCode": 200, + "ResponseHeaders": { + "Cache-Control": "no-cache", + "Content-Type": "application/xml", + "Date": "Thu, 28 Jan 2021 00:35:29 GMT", + "Server": [ + "Windows-Azure-Queue/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "Transfer-Encoding": "chunked", + "Vary": "Origin", + "x-ms-request-id": "79ff1900-0003-0065-020d-f5e5ae000000", + "x-ms-version": "2018-11-09" + }, + "ResponseBody": "\uFEFF\u003C?xml version=\u00221.0\u0022 encoding=\u0022utf-8\u0022?\u003E\u003CStorageServiceProperties\u003E\u003CLogging\u003E\u003CVersion\u003E1.0\u003C/Version\u003E\u003CRead\u003Etrue\u003C/Read\u003E\u003CWrite\u003Etrue\u003C/Write\u003E\u003CDelete\u003Efalse\u003C/Delete\u003E\u003CRetentionPolicy\u003E\u003CEnabled\u003Etrue\u003C/Enabled\u003E\u003CDays\u003E5\u003C/Days\u003E\u003C/RetentionPolicy\u003E\u003C/Logging\u003E\u003CHourMetrics\u003E\u003CVersion\u003E1.0\u003C/Version\u003E\u003CEnabled\u003Etrue\u003C/Enabled\u003E\u003CIncludeAPIs\u003Efalse\u003C/IncludeAPIs\u003E\u003CRetentionPolicy\u003E\u003CEnabled\u003Etrue\u003C/Enabled\u003E\u003CDays\u003E6\u003C/Days\u003E\u003C/RetentionPolicy\u003E\u003C/HourMetrics\u003E\u003CMinuteMetrics\u003E\u003CVersion\u003E1.0\u003C/Version\u003E\u003CEnabled\u003Etrue\u003C/Enabled\u003E\u003CIncludeAPIs\u003Efalse\u003C/IncludeAPIs\u003E\u003CRetentionPolicy\u003E\u003CEnabled\u003Etrue\u003C/Enabled\u003E\u003CDays\u003E6\u003C/Days\u003E\u003C/RetentionPolicy\u003E\u003C/MinuteMetrics\u003E\u003CCors\u003E\u003CCorsRule\u003E\u003CAllowedMethods\u003EGET,PUT\u003C/AllowedMethods\u003E\u003CAllowedOrigins\u003Ewww.ab.com,www.bc.com\u003C/AllowedOrigins\u003E\u003CAllowedHeaders\u003Ex-ms-meta-xyz,x-ms-meta-foo,x-ms-meta-data*,x-ms-meta-target*\u003C/AllowedHeaders\u003E\u003CExposedHeaders\u003Ex-ms-meta-abc,x-ms-meta-bcd,x-ms-meta-data*,x-ms-meta-source*\u003C/ExposedHeaders\u003E\u003CMaxAgeInSeconds\u003E500\u003C/MaxAgeInSeconds\u003E\u003C/CorsRule\u003E\u003C/Cors\u003E\u003C/StorageServiceProperties\u003E" + } + ], + "Variables": { + "DateTimeOffsetNow": "2021-01-27T16:35:29.1939151-08:00", + "RandomSeed": "1697910175", + "Storage_TestConfigDefault": "ProductionTenant\nkasoboltest\nU2FuaXRpemVk\nhttps://kasoboltest.blob.core.windows.net\nhttps://kasoboltest.file.core.windows.net\nhttps://kasoboltest.queue.core.windows.net\nhttps://kasoboltest.table.core.windows.net\n\n\n\n\nhttps://kasoboltest-secondary.blob.core.windows.net\nhttps://kasoboltest-secondary.file.core.windows.net\nhttps://kasoboltest-secondary.queue.core.windows.net\nhttps://kasoboltest-secondary.table.core.windows.net\n\nSanitized\n\n\nCloud\nBlobEndpoint=https://kasoboltest.blob.core.windows.net/;QueueEndpoint=https://kasoboltest.queue.core.windows.net/;FileEndpoint=https://kasoboltest.file.core.windows.net/;BlobSecondaryEndpoint=https://kasoboltest-secondary.blob.core.windows.net/;QueueSecondaryEndpoint=https://kasoboltest-secondary.queue.core.windows.net/;FileSecondaryEndpoint=https://kasoboltest-secondary.file.core.windows.net/;AccountName=kasoboltest;AccountKey=Kg==;\nencryptionScope" + } +} \ No newline at end of file diff --git a/sdk/storage/Azure.Storage.Queues/tests/SessionRecords/QueueClientTests/CanGetParentQueueServiceClient_WithAccountSASAsync.json b/sdk/storage/Azure.Storage.Queues/tests/SessionRecords/QueueClientTests/CanGetParentQueueServiceClient_WithAccountSASAsync.json new file mode 100644 index 0000000000000..d9a4c8a6895fb --- /dev/null +++ b/sdk/storage/Azure.Storage.Queues/tests/SessionRecords/QueueClientTests/CanGetParentQueueServiceClient_WithAccountSASAsync.json @@ -0,0 +1,40 @@ +{ + "Entries": [ + { + "RequestUri": "https://kasoboltest.queue.core.windows.net/?sv=2020-06-12\u0026ss=q\u0026srt=sco\u0026st=2021-01-27T23:35:30Z\u0026se=2021-01-28T01:35:30Z\u0026sp=rwdlaup\u0026sig=Sanitized\u0026restype=service\u0026comp=properties", + "RequestMethod": "GET", + "RequestHeaders": { + "Accept": "application/xml", + "traceparent": "00-9065ac06ad925b42bdd5396726a7652a-e1cc67d5df6c9841-00", + "User-Agent": [ + "azsdk-net-Storage.Queues/12.7.0-alpha.20210127.1", + "(.NET Framework 4.8.4250.0; Microsoft Windows 10.0.19042 )" + ], + "x-ms-client-request-id": "fb7d50dc-178c-1258-1f9b-50cd5a7fc5a4", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2018-11-09" + }, + "RequestBody": null, + "StatusCode": 200, + "ResponseHeaders": { + "Cache-Control": "no-cache", + "Content-Type": "application/xml", + "Date": "Thu, 28 Jan 2021 00:35:29 GMT", + "Server": [ + "Windows-Azure-Queue/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "Transfer-Encoding": "chunked", + "Vary": "Origin", + "x-ms-request-id": "3bb5797a-0003-0021-070d-f539c2000000", + "x-ms-version": "2018-11-09" + }, + "ResponseBody": "\uFEFF\u003C?xml version=\u00221.0\u0022 encoding=\u0022utf-8\u0022?\u003E\u003CStorageServiceProperties\u003E\u003CLogging\u003E\u003CVersion\u003E1.0\u003C/Version\u003E\u003CRead\u003Etrue\u003C/Read\u003E\u003CWrite\u003Etrue\u003C/Write\u003E\u003CDelete\u003Efalse\u003C/Delete\u003E\u003CRetentionPolicy\u003E\u003CEnabled\u003Etrue\u003C/Enabled\u003E\u003CDays\u003E5\u003C/Days\u003E\u003C/RetentionPolicy\u003E\u003C/Logging\u003E\u003CHourMetrics\u003E\u003CVersion\u003E1.0\u003C/Version\u003E\u003CEnabled\u003Etrue\u003C/Enabled\u003E\u003CIncludeAPIs\u003Efalse\u003C/IncludeAPIs\u003E\u003CRetentionPolicy\u003E\u003CEnabled\u003Etrue\u003C/Enabled\u003E\u003CDays\u003E6\u003C/Days\u003E\u003C/RetentionPolicy\u003E\u003C/HourMetrics\u003E\u003CMinuteMetrics\u003E\u003CVersion\u003E1.0\u003C/Version\u003E\u003CEnabled\u003Etrue\u003C/Enabled\u003E\u003CIncludeAPIs\u003Efalse\u003C/IncludeAPIs\u003E\u003CRetentionPolicy\u003E\u003CEnabled\u003Etrue\u003C/Enabled\u003E\u003CDays\u003E6\u003C/Days\u003E\u003C/RetentionPolicy\u003E\u003C/MinuteMetrics\u003E\u003CCors\u003E\u003CCorsRule\u003E\u003CAllowedMethods\u003EGET,PUT\u003C/AllowedMethods\u003E\u003CAllowedOrigins\u003Ewww.ab.com,www.bc.com\u003C/AllowedOrigins\u003E\u003CAllowedHeaders\u003Ex-ms-meta-xyz,x-ms-meta-foo,x-ms-meta-data*,x-ms-meta-target*\u003C/AllowedHeaders\u003E\u003CExposedHeaders\u003Ex-ms-meta-abc,x-ms-meta-bcd,x-ms-meta-data*,x-ms-meta-source*\u003C/ExposedHeaders\u003E\u003CMaxAgeInSeconds\u003E500\u003C/MaxAgeInSeconds\u003E\u003C/CorsRule\u003E\u003C/Cors\u003E\u003C/StorageServiceProperties\u003E" + } + ], + "Variables": { + "DateTimeOffsetNow": "2021-01-27T16:35:30.1306680-08:00", + "RandomSeed": "770541156", + "Storage_TestConfigDefault": "ProductionTenant\nkasoboltest\nU2FuaXRpemVk\nhttps://kasoboltest.blob.core.windows.net\nhttps://kasoboltest.file.core.windows.net\nhttps://kasoboltest.queue.core.windows.net\nhttps://kasoboltest.table.core.windows.net\n\n\n\n\nhttps://kasoboltest-secondary.blob.core.windows.net\nhttps://kasoboltest-secondary.file.core.windows.net\nhttps://kasoboltest-secondary.queue.core.windows.net\nhttps://kasoboltest-secondary.table.core.windows.net\n\nSanitized\n\n\nCloud\nBlobEndpoint=https://kasoboltest.blob.core.windows.net/;QueueEndpoint=https://kasoboltest.queue.core.windows.net/;FileEndpoint=https://kasoboltest.file.core.windows.net/;BlobSecondaryEndpoint=https://kasoboltest-secondary.blob.core.windows.net/;QueueSecondaryEndpoint=https://kasoboltest-secondary.queue.core.windows.net/;FileSecondaryEndpoint=https://kasoboltest-secondary.file.core.windows.net/;AccountName=kasoboltest;AccountKey=Kg==;\nencryptionScope" + } +} \ No newline at end of file diff --git a/sdk/storage/Azure.Storage.Queues/tests/SessionRecords/QueueClientTests/CanHandleInvalidMessageAndReturnValid.json b/sdk/storage/Azure.Storage.Queues/tests/SessionRecords/QueueClientTests/CanHandleInvalidMessageAndReturnValid.json new file mode 100644 index 0000000000000..33c1ff218d6a4 --- /dev/null +++ b/sdk/storage/Azure.Storage.Queues/tests/SessionRecords/QueueClientTests/CanHandleInvalidMessageAndReturnValid.json @@ -0,0 +1,167 @@ +{ + "Entries": [ + { + "RequestUri": "https://kasoboltest.queue.core.windows.net/test-queue-d7128aab-de8f-566b-a7c9-68026a4e2ed9", + "RequestMethod": "PUT", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "traceparent": "00-fdbf6b9910bde34c9410611d7b2ffd17-0972d4f58211dc42-00", + "User-Agent": [ + "azsdk-net-Storage.Queues/12.7.0-alpha.20210126.1", + "(.NET Framework 4.8.4250.0; Microsoft Windows 10.0.19042 )" + ], + "x-ms-client-request-id": "5d1d7b1f-3964-d68f-d16e-1d5964704bf2", + "x-ms-date": "Tue, 26 Jan 2021 18:28:18 GMT", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2018-11-09" + }, + "RequestBody": null, + "StatusCode": 201, + "ResponseHeaders": { + "Content-Length": "0", + "Date": "Tue, 26 Jan 2021 18:28:18 GMT", + "Server": [ + "Windows-Azure-Queue/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "x-ms-request-id": "b763692a-a003-004a-2611-f46494000000", + "x-ms-version": "2018-11-09" + }, + "ResponseBody": [] + }, + { + "RequestUri": "https://kasoboltest.queue.core.windows.net/test-queue-d7128aab-de8f-566b-a7c9-68026a4e2ed9/messages", + "RequestMethod": "POST", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "Content-Length": "71", + "Content-Type": "application/xml", + "traceparent": "00-fea1c28c3cff2641b679b1415e586d88-15bc216bb641834a-00", + "User-Agent": [ + "azsdk-net-Storage.Queues/12.7.0-alpha.20210126.1", + "(.NET Framework 4.8.4250.0; Microsoft Windows 10.0.19042 )" + ], + "x-ms-client-request-id": "eee34d93-d130-d074-14b5-10b861cf877c", + "x-ms-date": "Tue, 26 Jan 2021 18:28:18 GMT", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2018-11-09" + }, + "RequestBody": "\uFEFF\u003CQueueMessage\u003E\u003CMessageText\u003Etest_content\u003C/MessageText\u003E\u003C/QueueMessage\u003E", + "StatusCode": 201, + "ResponseHeaders": { + "Content-Type": "application/xml", + "Date": "Tue, 26 Jan 2021 18:28:18 GMT", + "Server": [ + "Windows-Azure-Queue/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "Transfer-Encoding": "chunked", + "x-ms-request-id": "b7636969-a003-004a-6211-f46494000000", + "x-ms-version": "2018-11-09" + }, + "ResponseBody": "\uFEFF\u003C?xml version=\u00221.0\u0022 encoding=\u0022utf-8\u0022?\u003E\u003CQueueMessagesList\u003E\u003CQueueMessage\u003E\u003CMessageId\u003E1ff1a2be-1a76-444e-bc0c-1fe05c504955\u003C/MessageId\u003E\u003CInsertionTime\u003ETue, 26 Jan 2021 18:28:18 GMT\u003C/InsertionTime\u003E\u003CExpirationTime\u003ETue, 02 Feb 2021 18:28:18 GMT\u003C/ExpirationTime\u003E\u003CPopReceipt\u003EAgAAAAMAAAAAAAAApAztBBH01gE=\u003C/PopReceipt\u003E\u003CTimeNextVisible\u003ETue, 26 Jan 2021 18:28:18 GMT\u003C/TimeNextVisible\u003E\u003C/QueueMessage\u003E\u003C/QueueMessagesList\u003E" + }, + { + "RequestUri": "https://kasoboltest.queue.core.windows.net/test-queue-d7128aab-de8f-566b-a7c9-68026a4e2ed9/messages", + "RequestMethod": "POST", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "Content-Length": "75", + "Content-Type": "application/xml", + "traceparent": "00-c17d3027a3e9ca4a8643e6e249c61ed8-16fd2784a5dd0941-00", + "User-Agent": [ + "azsdk-net-Storage.Queues/12.7.0-alpha.20210126.1", + "(.NET Framework 4.8.4250.0; Microsoft Windows 10.0.19042 )" + ], + "x-ms-client-request-id": "17c5ae04-5d8d-2ec2-b7bb-9c5ea7ffcb91", + "x-ms-date": "Tue, 26 Jan 2021 18:28:18 GMT", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2018-11-09" + }, + "RequestBody": "\uFEFF\u003CQueueMessage\u003E\u003CMessageText\u003EdGVzdF9jb250ZW50\u003C/MessageText\u003E\u003C/QueueMessage\u003E", + "StatusCode": 201, + "ResponseHeaders": { + "Content-Type": "application/xml", + "Date": "Tue, 26 Jan 2021 18:28:18 GMT", + "Server": [ + "Windows-Azure-Queue/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "Transfer-Encoding": "chunked", + "x-ms-request-id": "8e0127fe-5003-001b-3111-f47a61000000", + "x-ms-version": "2018-11-09" + }, + "ResponseBody": "\uFEFF\u003C?xml version=\u00221.0\u0022 encoding=\u0022utf-8\u0022?\u003E\u003CQueueMessagesList\u003E\u003CQueueMessage\u003E\u003CMessageId\u003E2d41fbdd-97c2-4314-b5a3-f11846f51423\u003C/MessageId\u003E\u003CInsertionTime\u003ETue, 26 Jan 2021 18:28:18 GMT\u003C/InsertionTime\u003E\u003CExpirationTime\u003ETue, 02 Feb 2021 18:28:18 GMT\u003C/ExpirationTime\u003E\u003CPopReceipt\u003EAgAAAAMAAAAAAAAASG0CBRH01gE=\u003C/PopReceipt\u003E\u003CTimeNextVisible\u003ETue, 26 Jan 2021 18:28:18 GMT\u003C/TimeNextVisible\u003E\u003C/QueueMessage\u003E\u003C/QueueMessagesList\u003E" + }, + { + "RequestUri": "https://kasoboltest.queue.core.windows.net/test-queue-d7128aab-de8f-566b-a7c9-68026a4e2ed9/messages?numofmessages=10", + "RequestMethod": "GET", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "traceparent": "00-15c98c8b1eb310439afe3df82da5060f-398cf0394a014247-00", + "User-Agent": [ + "azsdk-net-Storage.Queues/12.7.0-alpha.20210126.1", + "(.NET Framework 4.8.4250.0; Microsoft Windows 10.0.19042 )" + ], + "x-ms-client-request-id": "b2b31eac-7009-4aef-5b5e-08f1e7a9bec3", + "x-ms-date": "Tue, 26 Jan 2021 18:28:19 GMT", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2018-11-09" + }, + "RequestBody": null, + "StatusCode": 200, + "ResponseHeaders": { + "Cache-Control": "no-cache", + "Content-Type": "application/xml", + "Date": "Tue, 26 Jan 2021 18:28:18 GMT", + "Server": [ + "Windows-Azure-Queue/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "Transfer-Encoding": "chunked", + "Vary": "Origin", + "x-ms-request-id": "8e012825-5003-001b-5311-f47a61000000", + "x-ms-version": "2018-11-09" + }, + "ResponseBody": "\uFEFF\u003C?xml version=\u00221.0\u0022 encoding=\u0022utf-8\u0022?\u003E\u003CQueueMessagesList\u003E\u003CQueueMessage\u003E\u003CMessageId\u003E1ff1a2be-1a76-444e-bc0c-1fe05c504955\u003C/MessageId\u003E\u003CInsertionTime\u003ETue, 26 Jan 2021 18:28:18 GMT\u003C/InsertionTime\u003E\u003CExpirationTime\u003ETue, 02 Feb 2021 18:28:18 GMT\u003C/ExpirationTime\u003E\u003CPopReceipt\u003EAgAAAAMAAAAAAAAA/svoFhH01gE=\u003C/PopReceipt\u003E\u003CTimeNextVisible\u003ETue, 26 Jan 2021 18:28:48 GMT\u003C/TimeNextVisible\u003E\u003CDequeueCount\u003E1\u003C/DequeueCount\u003E\u003CMessageText\u003Etest_content\u003C/MessageText\u003E\u003C/QueueMessage\u003E\u003CQueueMessage\u003E\u003CMessageId\u003E2d41fbdd-97c2-4314-b5a3-f11846f51423\u003C/MessageId\u003E\u003CInsertionTime\u003ETue, 26 Jan 2021 18:28:18 GMT\u003C/InsertionTime\u003E\u003CExpirationTime\u003ETue, 02 Feb 2021 18:28:18 GMT\u003C/ExpirationTime\u003E\u003CPopReceipt\u003EAgAAAAMAAAAAAAAA/svoFhH01gE=\u003C/PopReceipt\u003E\u003CTimeNextVisible\u003ETue, 26 Jan 2021 18:28:48 GMT\u003C/TimeNextVisible\u003E\u003CDequeueCount\u003E1\u003C/DequeueCount\u003E\u003CMessageText\u003EdGVzdF9jb250ZW50\u003C/MessageText\u003E\u003C/QueueMessage\u003E\u003C/QueueMessagesList\u003E" + }, + { + "RequestUri": "https://kasoboltest.queue.core.windows.net/test-queue-d7128aab-de8f-566b-a7c9-68026a4e2ed9", + "RequestMethod": "DELETE", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "traceparent": "00-66f340217874f44e9c1599974140dcef-4ac6f5ebed221848-00", + "User-Agent": [ + "azsdk-net-Storage.Queues/12.7.0-alpha.20210126.1", + "(.NET Framework 4.8.4250.0; Microsoft Windows 10.0.19042 )" + ], + "x-ms-client-request-id": "89b17b3a-194b-2e87-7da9-54f3a0cf289c", + "x-ms-date": "Tue, 26 Jan 2021 18:28:19 GMT", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2018-11-09" + }, + "RequestBody": null, + "StatusCode": 204, + "ResponseHeaders": { + "Content-Length": "0", + "Date": "Tue, 26 Jan 2021 18:28:18 GMT", + "Server": [ + "Windows-Azure-Queue/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "x-ms-request-id": "b76369cd-a003-004a-4411-f46494000000", + "x-ms-version": "2018-11-09" + }, + "ResponseBody": [] + } + ], + "Variables": { + "RandomSeed": "1486437419", + "Storage_TestConfigDefault": "ProductionTenant\nkasoboltest\nU2FuaXRpemVk\nhttps://kasoboltest.blob.core.windows.net\nhttps://kasoboltest.file.core.windows.net\nhttps://kasoboltest.queue.core.windows.net\nhttps://kasoboltest.table.core.windows.net\n\n\n\n\nhttps://kasoboltest-secondary.blob.core.windows.net\nhttps://kasoboltest-secondary.file.core.windows.net\nhttps://kasoboltest-secondary.queue.core.windows.net\nhttps://kasoboltest-secondary.table.core.windows.net\n\nSanitized\n\n\nCloud\nBlobEndpoint=https://kasoboltest.blob.core.windows.net/;QueueEndpoint=https://kasoboltest.queue.core.windows.net/;FileEndpoint=https://kasoboltest.file.core.windows.net/;BlobSecondaryEndpoint=https://kasoboltest-secondary.blob.core.windows.net/;QueueSecondaryEndpoint=https://kasoboltest-secondary.queue.core.windows.net/;FileSecondaryEndpoint=https://kasoboltest-secondary.file.core.windows.net/;AccountName=kasoboltest;AccountKey=Kg==;\nencryptionScope" + } +} \ No newline at end of file diff --git a/sdk/storage/Azure.Storage.Queues/tests/SessionRecords/QueueClientTests/CanHandleInvalidMessageAndReturnValidAsync.json b/sdk/storage/Azure.Storage.Queues/tests/SessionRecords/QueueClientTests/CanHandleInvalidMessageAndReturnValidAsync.json new file mode 100644 index 0000000000000..f4894ba25235b --- /dev/null +++ b/sdk/storage/Azure.Storage.Queues/tests/SessionRecords/QueueClientTests/CanHandleInvalidMessageAndReturnValidAsync.json @@ -0,0 +1,167 @@ +{ + "Entries": [ + { + "RequestUri": "https://kasoboltest.queue.core.windows.net/test-queue-c5683fc2-f70b-440a-29ee-3d7d009be19e", + "RequestMethod": "PUT", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "traceparent": "00-81c7794ffd0b434b8f956ad65d68fc52-9d79d58148a70d46-00", + "User-Agent": [ + "azsdk-net-Storage.Queues/12.7.0-alpha.20210126.1", + "(.NET Framework 4.8.4250.0; Microsoft Windows 10.0.19042 )" + ], + "x-ms-client-request-id": "14f54917-8966-c9a4-4e04-df6c43ff8841", + "x-ms-date": "Tue, 26 Jan 2021 18:28:19 GMT", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2018-11-09" + }, + "RequestBody": null, + "StatusCode": 201, + "ResponseHeaders": { + "Content-Length": "0", + "Date": "Tue, 26 Jan 2021 18:28:19 GMT", + "Server": [ + "Windows-Azure-Queue/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "x-ms-request-id": "26c48710-2003-0014-4711-f49797000000", + "x-ms-version": "2018-11-09" + }, + "ResponseBody": [] + }, + { + "RequestUri": "https://kasoboltest.queue.core.windows.net/test-queue-c5683fc2-f70b-440a-29ee-3d7d009be19e/messages", + "RequestMethod": "POST", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "Content-Length": "71", + "Content-Type": "application/xml", + "traceparent": "00-ec738d713b5a45418ee3f058b8c3b444-d8e5dd4135096c4c-00", + "User-Agent": [ + "azsdk-net-Storage.Queues/12.7.0-alpha.20210126.1", + "(.NET Framework 4.8.4250.0; Microsoft Windows 10.0.19042 )" + ], + "x-ms-client-request-id": "b6654d0f-cda5-1137-5552-8b4e87cf9472", + "x-ms-date": "Tue, 26 Jan 2021 18:28:19 GMT", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2018-11-09" + }, + "RequestBody": "\uFEFF\u003CQueueMessage\u003E\u003CMessageText\u003Etest_content\u003C/MessageText\u003E\u003C/QueueMessage\u003E", + "StatusCode": 201, + "ResponseHeaders": { + "Content-Type": "application/xml", + "Date": "Tue, 26 Jan 2021 18:28:19 GMT", + "Server": [ + "Windows-Azure-Queue/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "Transfer-Encoding": "chunked", + "x-ms-request-id": "26c48737-2003-0014-6b11-f49797000000", + "x-ms-version": "2018-11-09" + }, + "ResponseBody": "\uFEFF\u003C?xml version=\u00221.0\u0022 encoding=\u0022utf-8\u0022?\u003E\u003CQueueMessagesList\u003E\u003CQueueMessage\u003E\u003CMessageId\u003Ee3110220-5d56-4269-838c-3e0e8d882f24\u003C/MessageId\u003E\u003CInsertionTime\u003ETue, 26 Jan 2021 18:28:19 GMT\u003C/InsertionTime\u003E\u003CExpirationTime\u003ETue, 02 Feb 2021 18:28:19 GMT\u003C/ExpirationTime\u003E\u003CPopReceipt\u003EAgAAAAMAAAAAAAAAh1JDBRH01gE=\u003C/PopReceipt\u003E\u003CTimeNextVisible\u003ETue, 26 Jan 2021 18:28:19 GMT\u003C/TimeNextVisible\u003E\u003C/QueueMessage\u003E\u003C/QueueMessagesList\u003E" + }, + { + "RequestUri": "https://kasoboltest.queue.core.windows.net/test-queue-c5683fc2-f70b-440a-29ee-3d7d009be19e/messages", + "RequestMethod": "POST", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "Content-Length": "75", + "Content-Type": "application/xml", + "traceparent": "00-9bdf5040edd5074dbd8b32b7e9a61e0d-a42b8a26c243bf47-00", + "User-Agent": [ + "azsdk-net-Storage.Queues/12.7.0-alpha.20210126.1", + "(.NET Framework 4.8.4250.0; Microsoft Windows 10.0.19042 )" + ], + "x-ms-client-request-id": "f65ddba6-d199-889b-15db-8ae85a70d434", + "x-ms-date": "Tue, 26 Jan 2021 18:28:19 GMT", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2018-11-09" + }, + "RequestBody": "\uFEFF\u003CQueueMessage\u003E\u003CMessageText\u003EdGVzdF9jb250ZW50\u003C/MessageText\u003E\u003C/QueueMessage\u003E", + "StatusCode": 201, + "ResponseHeaders": { + "Content-Type": "application/xml", + "Date": "Tue, 26 Jan 2021 18:28:18 GMT", + "Server": [ + "Windows-Azure-Queue/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "Transfer-Encoding": "chunked", + "x-ms-request-id": "e5e6e40c-4003-0069-2a11-f40b5f000000", + "x-ms-version": "2018-11-09" + }, + "ResponseBody": "\uFEFF\u003C?xml version=\u00221.0\u0022 encoding=\u0022utf-8\u0022?\u003E\u003CQueueMessagesList\u003E\u003CQueueMessage\u003E\u003CMessageId\u003E0d5f5ee0-8a46-4555-8ad1-9f032b0e9a39\u003C/MessageId\u003E\u003CInsertionTime\u003ETue, 26 Jan 2021 18:28:19 GMT\u003C/InsertionTime\u003E\u003CExpirationTime\u003ETue, 02 Feb 2021 18:28:19 GMT\u003C/ExpirationTime\u003E\u003CPopReceipt\u003EAgAAAAMAAAAAAAAARlNXBRH01gE=\u003C/PopReceipt\u003E\u003CTimeNextVisible\u003ETue, 26 Jan 2021 18:28:19 GMT\u003C/TimeNextVisible\u003E\u003C/QueueMessage\u003E\u003C/QueueMessagesList\u003E" + }, + { + "RequestUri": "https://kasoboltest.queue.core.windows.net/test-queue-c5683fc2-f70b-440a-29ee-3d7d009be19e/messages?numofmessages=10", + "RequestMethod": "GET", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "traceparent": "00-17cee9886cf8d649a1837befa3e004be-90c1617070df5f41-00", + "User-Agent": [ + "azsdk-net-Storage.Queues/12.7.0-alpha.20210126.1", + "(.NET Framework 4.8.4250.0; Microsoft Windows 10.0.19042 )" + ], + "x-ms-client-request-id": "aba85dbf-9d71-ffd9-e40c-845d75cdd81a", + "x-ms-date": "Tue, 26 Jan 2021 18:28:19 GMT", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2018-11-09" + }, + "RequestBody": null, + "StatusCode": 200, + "ResponseHeaders": { + "Cache-Control": "no-cache", + "Content-Type": "application/xml", + "Date": "Tue, 26 Jan 2021 18:28:18 GMT", + "Server": [ + "Windows-Azure-Queue/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "Transfer-Encoding": "chunked", + "Vary": "Origin", + "x-ms-request-id": "e5e6e416-4003-0069-3211-f40b5f000000", + "x-ms-version": "2018-11-09" + }, + "ResponseBody": "\uFEFF\u003C?xml version=\u00221.0\u0022 encoding=\u0022utf-8\u0022?\u003E\u003CQueueMessagesList\u003E\u003CQueueMessage\u003E\u003CMessageId\u003Ee3110220-5d56-4269-838c-3e0e8d882f24\u003C/MessageId\u003E\u003CInsertionTime\u003ETue, 26 Jan 2021 18:28:19 GMT\u003C/InsertionTime\u003E\u003CExpirationTime\u003ETue, 02 Feb 2021 18:28:19 GMT\u003C/ExpirationTime\u003E\u003CPopReceipt\u003EAgAAAAMAAAAAAAAANdk9FxH01gE=\u003C/PopReceipt\u003E\u003CTimeNextVisible\u003ETue, 26 Jan 2021 18:28:49 GMT\u003C/TimeNextVisible\u003E\u003CDequeueCount\u003E1\u003C/DequeueCount\u003E\u003CMessageText\u003Etest_content\u003C/MessageText\u003E\u003C/QueueMessage\u003E\u003CQueueMessage\u003E\u003CMessageId\u003E0d5f5ee0-8a46-4555-8ad1-9f032b0e9a39\u003C/MessageId\u003E\u003CInsertionTime\u003ETue, 26 Jan 2021 18:28:19 GMT\u003C/InsertionTime\u003E\u003CExpirationTime\u003ETue, 02 Feb 2021 18:28:19 GMT\u003C/ExpirationTime\u003E\u003CPopReceipt\u003EAgAAAAMAAAAAAAAANdk9FxH01gE=\u003C/PopReceipt\u003E\u003CTimeNextVisible\u003ETue, 26 Jan 2021 18:28:49 GMT\u003C/TimeNextVisible\u003E\u003CDequeueCount\u003E1\u003C/DequeueCount\u003E\u003CMessageText\u003EdGVzdF9jb250ZW50\u003C/MessageText\u003E\u003C/QueueMessage\u003E\u003C/QueueMessagesList\u003E" + }, + { + "RequestUri": "https://kasoboltest.queue.core.windows.net/test-queue-c5683fc2-f70b-440a-29ee-3d7d009be19e", + "RequestMethod": "DELETE", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "traceparent": "00-78deecccfcddbc4d97491313c51716e7-fc4e65e13775954c-00", + "User-Agent": [ + "azsdk-net-Storage.Queues/12.7.0-alpha.20210126.1", + "(.NET Framework 4.8.4250.0; Microsoft Windows 10.0.19042 )" + ], + "x-ms-client-request-id": "fc282600-28c7-5ec2-07e3-d180406d9aca", + "x-ms-date": "Tue, 26 Jan 2021 18:28:19 GMT", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2018-11-09" + }, + "RequestBody": null, + "StatusCode": 204, + "ResponseHeaders": { + "Content-Length": "0", + "Date": "Tue, 26 Jan 2021 18:28:19 GMT", + "Server": [ + "Windows-Azure-Queue/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "x-ms-request-id": "26c48792-2003-0014-3f11-f49797000000", + "x-ms-version": "2018-11-09" + }, + "ResponseBody": [] + } + ], + "Variables": { + "RandomSeed": "1418509458", + "Storage_TestConfigDefault": "ProductionTenant\nkasoboltest\nU2FuaXRpemVk\nhttps://kasoboltest.blob.core.windows.net\nhttps://kasoboltest.file.core.windows.net\nhttps://kasoboltest.queue.core.windows.net\nhttps://kasoboltest.table.core.windows.net\n\n\n\n\nhttps://kasoboltest-secondary.blob.core.windows.net\nhttps://kasoboltest-secondary.file.core.windows.net\nhttps://kasoboltest-secondary.queue.core.windows.net\nhttps://kasoboltest-secondary.table.core.windows.net\n\nSanitized\n\n\nCloud\nBlobEndpoint=https://kasoboltest.blob.core.windows.net/;QueueEndpoint=https://kasoboltest.queue.core.windows.net/;FileEndpoint=https://kasoboltest.file.core.windows.net/;BlobSecondaryEndpoint=https://kasoboltest-secondary.blob.core.windows.net/;QueueSecondaryEndpoint=https://kasoboltest-secondary.queue.core.windows.net/;FileSecondaryEndpoint=https://kasoboltest-secondary.file.core.windows.net/;AccountName=kasoboltest;AccountKey=Kg==;\nencryptionScope" + } +} \ No newline at end of file diff --git a/sdk/storage/Azure.Storage.Queues/tests/SessionRecords/QueueClientTests/CanHandleInvalidPeekedMessageAndReturnValid.json b/sdk/storage/Azure.Storage.Queues/tests/SessionRecords/QueueClientTests/CanHandleInvalidPeekedMessageAndReturnValid.json new file mode 100644 index 0000000000000..4555b56f9a6ae --- /dev/null +++ b/sdk/storage/Azure.Storage.Queues/tests/SessionRecords/QueueClientTests/CanHandleInvalidPeekedMessageAndReturnValid.json @@ -0,0 +1,167 @@ +{ + "Entries": [ + { + "RequestUri": "https://kasoboltest.queue.core.windows.net/test-queue-23202ac5-0933-9847-100f-76a8c1575601", + "RequestMethod": "PUT", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "traceparent": "00-181ad08ed4ecc4429ac3eb0e9796d08c-c616bf7949875f4b-00", + "User-Agent": [ + "azsdk-net-Storage.Queues/12.7.0-alpha.20210126.1", + "(.NET Framework 4.8.4250.0; Microsoft Windows 10.0.19042 )" + ], + "x-ms-client-request-id": "73fe4bea-fb6b-d8ba-baf0-0708abce6a3c", + "x-ms-date": "Tue, 26 Jan 2021 18:28:42 GMT", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2018-11-09" + }, + "RequestBody": null, + "StatusCode": 201, + "ResponseHeaders": { + "Content-Length": "0", + "Date": "Tue, 26 Jan 2021 18:28:43 GMT", + "Server": [ + "Windows-Azure-Queue/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "x-ms-request-id": "aa802ad5-6003-005c-1f11-f4a50a000000", + "x-ms-version": "2018-11-09" + }, + "ResponseBody": [] + }, + { + "RequestUri": "https://kasoboltest.queue.core.windows.net/test-queue-23202ac5-0933-9847-100f-76a8c1575601/messages", + "RequestMethod": "POST", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "Content-Length": "71", + "Content-Type": "application/xml", + "traceparent": "00-10db29351f62414c875d14322a3b03eb-ec286cf4e8cb6745-00", + "User-Agent": [ + "azsdk-net-Storage.Queues/12.7.0-alpha.20210126.1", + "(.NET Framework 4.8.4250.0; Microsoft Windows 10.0.19042 )" + ], + "x-ms-client-request-id": "75bdf63f-e259-3e96-f5e4-9cb23eb19441", + "x-ms-date": "Tue, 26 Jan 2021 18:28:43 GMT", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2018-11-09" + }, + "RequestBody": "\uFEFF\u003CQueueMessage\u003E\u003CMessageText\u003Etest_content\u003C/MessageText\u003E\u003C/QueueMessage\u003E", + "StatusCode": 201, + "ResponseHeaders": { + "Content-Type": "application/xml", + "Date": "Tue, 26 Jan 2021 18:28:43 GMT", + "Server": [ + "Windows-Azure-Queue/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "Transfer-Encoding": "chunked", + "x-ms-request-id": "aa802add-6003-005c-2511-f4a50a000000", + "x-ms-version": "2018-11-09" + }, + "ResponseBody": "\uFEFF\u003C?xml version=\u00221.0\u0022 encoding=\u0022utf-8\u0022?\u003E\u003CQueueMessagesList\u003E\u003CQueueMessage\u003E\u003CMessageId\u003E23aa5ea5-377a-413c-bd58-551707d1e648\u003C/MessageId\u003E\u003CInsertionTime\u003ETue, 26 Jan 2021 18:28:43 GMT\u003C/InsertionTime\u003E\u003CExpirationTime\u003ETue, 02 Feb 2021 18:28:43 GMT\u003C/ExpirationTime\u003E\u003CPopReceipt\u003EAgAAAAMAAAAAAAAAjx\u002BGExH01gE=\u003C/PopReceipt\u003E\u003CTimeNextVisible\u003ETue, 26 Jan 2021 18:28:43 GMT\u003C/TimeNextVisible\u003E\u003C/QueueMessage\u003E\u003C/QueueMessagesList\u003E" + }, + { + "RequestUri": "https://kasoboltest.queue.core.windows.net/test-queue-23202ac5-0933-9847-100f-76a8c1575601/messages", + "RequestMethod": "POST", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "Content-Length": "75", + "Content-Type": "application/xml", + "traceparent": "00-bf8e7fa1887e2f4ca8d30ad28aa695df-74d6124ab6f89248-00", + "User-Agent": [ + "azsdk-net-Storage.Queues/12.7.0-alpha.20210126.1", + "(.NET Framework 4.8.4250.0; Microsoft Windows 10.0.19042 )" + ], + "x-ms-client-request-id": "b5c9a575-f510-24e2-8f78-1523ee0240be", + "x-ms-date": "Tue, 26 Jan 2021 18:28:43 GMT", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2018-11-09" + }, + "RequestBody": "\uFEFF\u003CQueueMessage\u003E\u003CMessageText\u003EdGVzdF9jb250ZW50\u003C/MessageText\u003E\u003C/QueueMessage\u003E", + "StatusCode": 201, + "ResponseHeaders": { + "Content-Type": "application/xml", + "Date": "Tue, 26 Jan 2021 18:28:43 GMT", + "Server": [ + "Windows-Azure-Queue/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "Transfer-Encoding": "chunked", + "x-ms-request-id": "edad456d-a003-0005-0b11-f4a08c000000", + "x-ms-version": "2018-11-09" + }, + "ResponseBody": "\uFEFF\u003C?xml version=\u00221.0\u0022 encoding=\u0022utf-8\u0022?\u003E\u003CQueueMessagesList\u003E\u003CQueueMessage\u003E\u003CMessageId\u003Eebc93a4b-5aca-446f-87f4-ec86192aa09d\u003C/MessageId\u003E\u003CInsertionTime\u003ETue, 26 Jan 2021 18:28:43 GMT\u003C/InsertionTime\u003E\u003CExpirationTime\u003ETue, 02 Feb 2021 18:28:43 GMT\u003C/ExpirationTime\u003E\u003CPopReceipt\u003EAgAAAAMAAAAAAAAAjxycExH01gE=\u003C/PopReceipt\u003E\u003CTimeNextVisible\u003ETue, 26 Jan 2021 18:28:43 GMT\u003C/TimeNextVisible\u003E\u003C/QueueMessage\u003E\u003C/QueueMessagesList\u003E" + }, + { + "RequestUri": "https://kasoboltest.queue.core.windows.net/test-queue-23202ac5-0933-9847-100f-76a8c1575601/messages?peekonly=true\u0026numofmessages=10", + "RequestMethod": "GET", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "traceparent": "00-1eac97a6db94b24fa3888df1cac3848f-dec48e55c9b24244-00", + "User-Agent": [ + "azsdk-net-Storage.Queues/12.7.0-alpha.20210126.1", + "(.NET Framework 4.8.4250.0; Microsoft Windows 10.0.19042 )" + ], + "x-ms-client-request-id": "993dba69-dfe7-3731-8d43-6780ae557194", + "x-ms-date": "Tue, 26 Jan 2021 18:28:43 GMT", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2018-11-09" + }, + "RequestBody": null, + "StatusCode": 200, + "ResponseHeaders": { + "Cache-Control": "no-cache", + "Content-Type": "application/xml", + "Date": "Tue, 26 Jan 2021 18:28:43 GMT", + "Server": [ + "Windows-Azure-Queue/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "Transfer-Encoding": "chunked", + "Vary": "Origin", + "x-ms-request-id": "edad45a8-a003-0005-4411-f4a08c000000", + "x-ms-version": "2018-11-09" + }, + "ResponseBody": "\uFEFF\u003C?xml version=\u00221.0\u0022 encoding=\u0022utf-8\u0022?\u003E\u003CQueueMessagesList\u003E\u003CQueueMessage\u003E\u003CMessageId\u003E23aa5ea5-377a-413c-bd58-551707d1e648\u003C/MessageId\u003E\u003CInsertionTime\u003ETue, 26 Jan 2021 18:28:43 GMT\u003C/InsertionTime\u003E\u003CExpirationTime\u003ETue, 02 Feb 2021 18:28:43 GMT\u003C/ExpirationTime\u003E\u003CDequeueCount\u003E0\u003C/DequeueCount\u003E\u003CMessageText\u003Etest_content\u003C/MessageText\u003E\u003C/QueueMessage\u003E\u003CQueueMessage\u003E\u003CMessageId\u003Eebc93a4b-5aca-446f-87f4-ec86192aa09d\u003C/MessageId\u003E\u003CInsertionTime\u003ETue, 26 Jan 2021 18:28:43 GMT\u003C/InsertionTime\u003E\u003CExpirationTime\u003ETue, 02 Feb 2021 18:28:43 GMT\u003C/ExpirationTime\u003E\u003CDequeueCount\u003E0\u003C/DequeueCount\u003E\u003CMessageText\u003EdGVzdF9jb250ZW50\u003C/MessageText\u003E\u003C/QueueMessage\u003E\u003C/QueueMessagesList\u003E" + }, + { + "RequestUri": "https://kasoboltest.queue.core.windows.net/test-queue-23202ac5-0933-9847-100f-76a8c1575601", + "RequestMethod": "DELETE", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "traceparent": "00-bb903f16d1b0054b89814d98fb947470-b4512436572e1546-00", + "User-Agent": [ + "azsdk-net-Storage.Queues/12.7.0-alpha.20210126.1", + "(.NET Framework 4.8.4250.0; Microsoft Windows 10.0.19042 )" + ], + "x-ms-client-request-id": "33ba3d21-a7c5-6cd7-a038-5e2d1ce7cb28", + "x-ms-date": "Tue, 26 Jan 2021 18:28:43 GMT", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2018-11-09" + }, + "RequestBody": null, + "StatusCode": 204, + "ResponseHeaders": { + "Content-Length": "0", + "Date": "Tue, 26 Jan 2021 18:28:43 GMT", + "Server": [ + "Windows-Azure-Queue/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "x-ms-request-id": "aa802aec-6003-005c-3011-f4a50a000000", + "x-ms-version": "2018-11-09" + }, + "ResponseBody": [] + } + ], + "Variables": { + "RandomSeed": "201465153", + "Storage_TestConfigDefault": "ProductionTenant\nkasoboltest\nU2FuaXRpemVk\nhttps://kasoboltest.blob.core.windows.net\nhttps://kasoboltest.file.core.windows.net\nhttps://kasoboltest.queue.core.windows.net\nhttps://kasoboltest.table.core.windows.net\n\n\n\n\nhttps://kasoboltest-secondary.blob.core.windows.net\nhttps://kasoboltest-secondary.file.core.windows.net\nhttps://kasoboltest-secondary.queue.core.windows.net\nhttps://kasoboltest-secondary.table.core.windows.net\n\nSanitized\n\n\nCloud\nBlobEndpoint=https://kasoboltest.blob.core.windows.net/;QueueEndpoint=https://kasoboltest.queue.core.windows.net/;FileEndpoint=https://kasoboltest.file.core.windows.net/;BlobSecondaryEndpoint=https://kasoboltest-secondary.blob.core.windows.net/;QueueSecondaryEndpoint=https://kasoboltest-secondary.queue.core.windows.net/;FileSecondaryEndpoint=https://kasoboltest-secondary.file.core.windows.net/;AccountName=kasoboltest;AccountKey=Kg==;\nencryptionScope" + } +} \ No newline at end of file diff --git a/sdk/storage/Azure.Storage.Queues/tests/SessionRecords/QueueClientTests/CanHandleInvalidPeekedMessageAndReturnValidAsync.json b/sdk/storage/Azure.Storage.Queues/tests/SessionRecords/QueueClientTests/CanHandleInvalidPeekedMessageAndReturnValidAsync.json new file mode 100644 index 0000000000000..ca72e5bce5d55 --- /dev/null +++ b/sdk/storage/Azure.Storage.Queues/tests/SessionRecords/QueueClientTests/CanHandleInvalidPeekedMessageAndReturnValidAsync.json @@ -0,0 +1,167 @@ +{ + "Entries": [ + { + "RequestUri": "https://kasoboltest.queue.core.windows.net/test-queue-a0e452de-885f-cc3b-2ed6-639ca012364d", + "RequestMethod": "PUT", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "traceparent": "00-ceac11a18dda614ebd1f86723babd13a-5369c2aabce8314c-00", + "User-Agent": [ + "azsdk-net-Storage.Queues/12.7.0-alpha.20210126.1", + "(.NET Framework 4.8.4250.0; Microsoft Windows 10.0.19042 )" + ], + "x-ms-client-request-id": "e4febf01-7bdb-c0de-9aba-8c217ffb38ac", + "x-ms-date": "Tue, 26 Jan 2021 18:28:43 GMT", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2018-11-09" + }, + "RequestBody": null, + "StatusCode": 201, + "ResponseHeaders": { + "Content-Length": "0", + "Date": "Tue, 26 Jan 2021 18:28:43 GMT", + "Server": [ + "Windows-Azure-Queue/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "x-ms-request-id": "99f5840c-4003-0062-1711-f4132b000000", + "x-ms-version": "2018-11-09" + }, + "ResponseBody": [] + }, + { + "RequestUri": "https://kasoboltest.queue.core.windows.net/test-queue-a0e452de-885f-cc3b-2ed6-639ca012364d/messages", + "RequestMethod": "POST", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "Content-Length": "71", + "Content-Type": "application/xml", + "traceparent": "00-9e51875c3e2ea0428194593c1ec15507-3305ecf8b23da349-00", + "User-Agent": [ + "azsdk-net-Storage.Queues/12.7.0-alpha.20210126.1", + "(.NET Framework 4.8.4250.0; Microsoft Windows 10.0.19042 )" + ], + "x-ms-client-request-id": "e19abb5b-5214-d072-e67b-f02ef73c0ec3", + "x-ms-date": "Tue, 26 Jan 2021 18:28:43 GMT", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2018-11-09" + }, + "RequestBody": "\uFEFF\u003CQueueMessage\u003E\u003CMessageText\u003Etest_content\u003C/MessageText\u003E\u003C/QueueMessage\u003E", + "StatusCode": 201, + "ResponseHeaders": { + "Content-Type": "application/xml", + "Date": "Tue, 26 Jan 2021 18:28:43 GMT", + "Server": [ + "Windows-Azure-Queue/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "Transfer-Encoding": "chunked", + "x-ms-request-id": "99f5841e-4003-0062-2511-f4132b000000", + "x-ms-version": "2018-11-09" + }, + "ResponseBody": "\uFEFF\u003C?xml version=\u00221.0\u0022 encoding=\u0022utf-8\u0022?\u003E\u003CQueueMessagesList\u003E\u003CQueueMessage\u003E\u003CMessageId\u003E7fd09bf8-fe2c-4bb4-9861-d3bac4e6e4ba\u003C/MessageId\u003E\u003CInsertionTime\u003ETue, 26 Jan 2021 18:28:43 GMT\u003C/InsertionTime\u003E\u003CExpirationTime\u003ETue, 02 Feb 2021 18:28:43 GMT\u003C/ExpirationTime\u003E\u003CPopReceipt\u003EAgAAAAMAAAAAAAAAv13gExH01gE=\u003C/PopReceipt\u003E\u003CTimeNextVisible\u003ETue, 26 Jan 2021 18:28:43 GMT\u003C/TimeNextVisible\u003E\u003C/QueueMessage\u003E\u003C/QueueMessagesList\u003E" + }, + { + "RequestUri": "https://kasoboltest.queue.core.windows.net/test-queue-a0e452de-885f-cc3b-2ed6-639ca012364d/messages", + "RequestMethod": "POST", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "Content-Length": "75", + "Content-Type": "application/xml", + "traceparent": "00-6be1b97baad22643a90e05229cd83b5a-2a63e85a26e1a14c-00", + "User-Agent": [ + "azsdk-net-Storage.Queues/12.7.0-alpha.20210126.1", + "(.NET Framework 4.8.4250.0; Microsoft Windows 10.0.19042 )" + ], + "x-ms-client-request-id": "c4c665ce-5660-2397-ac26-6ca2718e63b7", + "x-ms-date": "Tue, 26 Jan 2021 18:28:44 GMT", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2018-11-09" + }, + "RequestBody": "\uFEFF\u003CQueueMessage\u003E\u003CMessageText\u003EdGVzdF9jb250ZW50\u003C/MessageText\u003E\u003C/QueueMessage\u003E", + "StatusCode": 201, + "ResponseHeaders": { + "Content-Type": "application/xml", + "Date": "Tue, 26 Jan 2021 18:28:43 GMT", + "Server": [ + "Windows-Azure-Queue/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "Transfer-Encoding": "chunked", + "x-ms-request-id": "5a79fd07-b003-005e-5a11-f4a7f0000000", + "x-ms-version": "2018-11-09" + }, + "ResponseBody": "\uFEFF\u003C?xml version=\u00221.0\u0022 encoding=\u0022utf-8\u0022?\u003E\u003CQueueMessagesList\u003E\u003CQueueMessage\u003E\u003CMessageId\u003E0a96b36c-c6f0-4921-8667-04ca70db6818\u003C/MessageId\u003E\u003CInsertionTime\u003ETue, 26 Jan 2021 18:28:44 GMT\u003C/InsertionTime\u003E\u003CExpirationTime\u003ETue, 02 Feb 2021 18:28:44 GMT\u003C/ExpirationTime\u003E\u003CPopReceipt\u003EAgAAAAMAAAAAAAAA1C/4ExH01gE=\u003C/PopReceipt\u003E\u003CTimeNextVisible\u003ETue, 26 Jan 2021 18:28:44 GMT\u003C/TimeNextVisible\u003E\u003C/QueueMessage\u003E\u003C/QueueMessagesList\u003E" + }, + { + "RequestUri": "https://kasoboltest.queue.core.windows.net/test-queue-a0e452de-885f-cc3b-2ed6-639ca012364d/messages?peekonly=true\u0026numofmessages=10", + "RequestMethod": "GET", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "traceparent": "00-da01f20cd57d754e88b80fa744d5a3b2-1bdb30bae1e50145-00", + "User-Agent": [ + "azsdk-net-Storage.Queues/12.7.0-alpha.20210126.1", + "(.NET Framework 4.8.4250.0; Microsoft Windows 10.0.19042 )" + ], + "x-ms-client-request-id": "915f6bfe-4a76-5662-008d-15ecbbe72d73", + "x-ms-date": "Tue, 26 Jan 2021 18:28:44 GMT", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2018-11-09" + }, + "RequestBody": null, + "StatusCode": 200, + "ResponseHeaders": { + "Cache-Control": "no-cache", + "Content-Type": "application/xml", + "Date": "Tue, 26 Jan 2021 18:28:43 GMT", + "Server": [ + "Windows-Azure-Queue/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "Transfer-Encoding": "chunked", + "Vary": "Origin", + "x-ms-request-id": "5a79fd27-b003-005e-7811-f4a7f0000000", + "x-ms-version": "2018-11-09" + }, + "ResponseBody": "\uFEFF\u003C?xml version=\u00221.0\u0022 encoding=\u0022utf-8\u0022?\u003E\u003CQueueMessagesList\u003E\u003CQueueMessage\u003E\u003CMessageId\u003E7fd09bf8-fe2c-4bb4-9861-d3bac4e6e4ba\u003C/MessageId\u003E\u003CInsertionTime\u003ETue, 26 Jan 2021 18:28:43 GMT\u003C/InsertionTime\u003E\u003CExpirationTime\u003ETue, 02 Feb 2021 18:28:43 GMT\u003C/ExpirationTime\u003E\u003CDequeueCount\u003E0\u003C/DequeueCount\u003E\u003CMessageText\u003Etest_content\u003C/MessageText\u003E\u003C/QueueMessage\u003E\u003CQueueMessage\u003E\u003CMessageId\u003E0a96b36c-c6f0-4921-8667-04ca70db6818\u003C/MessageId\u003E\u003CInsertionTime\u003ETue, 26 Jan 2021 18:28:44 GMT\u003C/InsertionTime\u003E\u003CExpirationTime\u003ETue, 02 Feb 2021 18:28:44 GMT\u003C/ExpirationTime\u003E\u003CDequeueCount\u003E0\u003C/DequeueCount\u003E\u003CMessageText\u003EdGVzdF9jb250ZW50\u003C/MessageText\u003E\u003C/QueueMessage\u003E\u003C/QueueMessagesList\u003E" + }, + { + "RequestUri": "https://kasoboltest.queue.core.windows.net/test-queue-a0e452de-885f-cc3b-2ed6-639ca012364d", + "RequestMethod": "DELETE", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "traceparent": "00-de37f9e8d02a66428ce2179a457e6859-58590dc61bede04a-00", + "User-Agent": [ + "azsdk-net-Storage.Queues/12.7.0-alpha.20210126.1", + "(.NET Framework 4.8.4250.0; Microsoft Windows 10.0.19042 )" + ], + "x-ms-client-request-id": "06a4ebf0-d12e-fc41-ba76-aad714287749", + "x-ms-date": "Tue, 26 Jan 2021 18:28:44 GMT", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2018-11-09" + }, + "RequestBody": null, + "StatusCode": 204, + "ResponseHeaders": { + "Content-Length": "0", + "Date": "Tue, 26 Jan 2021 18:28:44 GMT", + "Server": [ + "Windows-Azure-Queue/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "x-ms-request-id": "99f58456-4003-0062-5b11-f4132b000000", + "x-ms-version": "2018-11-09" + }, + "ResponseBody": [] + } + ], + "Variables": { + "RandomSeed": "1524474571", + "Storage_TestConfigDefault": "ProductionTenant\nkasoboltest\nU2FuaXRpemVk\nhttps://kasoboltest.blob.core.windows.net\nhttps://kasoboltest.file.core.windows.net\nhttps://kasoboltest.queue.core.windows.net\nhttps://kasoboltest.table.core.windows.net\n\n\n\n\nhttps://kasoboltest-secondary.blob.core.windows.net\nhttps://kasoboltest-secondary.file.core.windows.net\nhttps://kasoboltest-secondary.queue.core.windows.net\nhttps://kasoboltest-secondary.table.core.windows.net\n\nSanitized\n\n\nCloud\nBlobEndpoint=https://kasoboltest.blob.core.windows.net/;QueueEndpoint=https://kasoboltest.queue.core.windows.net/;FileEndpoint=https://kasoboltest.file.core.windows.net/;BlobSecondaryEndpoint=https://kasoboltest-secondary.blob.core.windows.net/;QueueSecondaryEndpoint=https://kasoboltest-secondary.queue.core.windows.net/;FileSecondaryEndpoint=https://kasoboltest-secondary.file.core.windows.net/;AccountName=kasoboltest;AccountKey=Kg==;\nencryptionScope" + } +} \ No newline at end of file diff --git a/sdk/storage/Azure.Storage.Queues/tests/SessionRecords/QueueClientTests/CanMockQueueServiceClientRetrieval.json b/sdk/storage/Azure.Storage.Queues/tests/SessionRecords/QueueClientTests/CanMockQueueServiceClientRetrieval.json new file mode 100644 index 0000000000000..20e5015d169f8 --- /dev/null +++ b/sdk/storage/Azure.Storage.Queues/tests/SessionRecords/QueueClientTests/CanMockQueueServiceClientRetrieval.json @@ -0,0 +1,4 @@ +{ + "Entries": [], + "Variables": {} +} \ No newline at end of file diff --git a/sdk/storage/Azure.Storage.Queues/tests/SessionRecords/QueueClientTests/CanMockQueueServiceClientRetrievalAsync.json b/sdk/storage/Azure.Storage.Queues/tests/SessionRecords/QueueClientTests/CanMockQueueServiceClientRetrievalAsync.json new file mode 100644 index 0000000000000..20e5015d169f8 --- /dev/null +++ b/sdk/storage/Azure.Storage.Queues/tests/SessionRecords/QueueClientTests/CanMockQueueServiceClientRetrievalAsync.json @@ -0,0 +1,4 @@ +{ + "Entries": [], + "Variables": {} +} \ No newline at end of file diff --git a/sdk/storage/Azure.Storage.Queues/tests/SessionRecords/QueueClientTests/FailsOnInvalidPeekedMessageIfNoHandlerIsProvided.json b/sdk/storage/Azure.Storage.Queues/tests/SessionRecords/QueueClientTests/FailsOnInvalidPeekedMessageIfNoHandlerIsProvided.json new file mode 100644 index 0000000000000..556829d45496e --- /dev/null +++ b/sdk/storage/Azure.Storage.Queues/tests/SessionRecords/QueueClientTests/FailsOnInvalidPeekedMessageIfNoHandlerIsProvided.json @@ -0,0 +1,134 @@ +{ + "Entries": [ + { + "RequestUri": "https://kasoboltest.queue.core.windows.net/test-queue-a526a502-4001-605b-b7da-4dca08918a1f", + "RequestMethod": "PUT", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "traceparent": "00-25da6222f7cc5e4aa641b63324c59e49-8f3a1a7b80682e46-00", + "User-Agent": [ + "azsdk-net-Storage.Queues/12.7.0-alpha.20210126.1", + "(.NET Framework 4.8.4250.0; Microsoft Windows 10.0.19042 )" + ], + "x-ms-client-request-id": "fd0bc578-d298-e78b-db47-57c65a681c37", + "x-ms-date": "Tue, 26 Jan 2021 18:29:05 GMT", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2018-11-09" + }, + "RequestBody": null, + "StatusCode": 201, + "ResponseHeaders": { + "Content-Length": "0", + "Date": "Tue, 26 Jan 2021 18:29:05 GMT", + "Server": [ + "Windows-Azure-Queue/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "x-ms-request-id": "23f410b9-3003-006d-1d11-f4fedd000000", + "x-ms-version": "2018-11-09" + }, + "ResponseBody": [] + }, + { + "RequestUri": "https://kasoboltest.queue.core.windows.net/test-queue-a526a502-4001-605b-b7da-4dca08918a1f/messages", + "RequestMethod": "POST", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "Content-Length": "71", + "Content-Type": "application/xml", + "traceparent": "00-378ecb03cdb2c5449d0ab77b217f0ab9-b7851010166f0e48-00", + "User-Agent": [ + "azsdk-net-Storage.Queues/12.7.0-alpha.20210126.1", + "(.NET Framework 4.8.4250.0; Microsoft Windows 10.0.19042 )" + ], + "x-ms-client-request-id": "4251e8ca-8c85-f587-2f79-8b96f0068ffb", + "x-ms-date": "Tue, 26 Jan 2021 18:29:06 GMT", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2018-11-09" + }, + "RequestBody": "\uFEFF\u003CQueueMessage\u003E\u003CMessageText\u003Etest_content\u003C/MessageText\u003E\u003C/QueueMessage\u003E", + "StatusCode": 201, + "ResponseHeaders": { + "Content-Type": "application/xml", + "Date": "Tue, 26 Jan 2021 18:29:05 GMT", + "Server": [ + "Windows-Azure-Queue/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "Transfer-Encoding": "chunked", + "x-ms-request-id": "23f410e1-3003-006d-3c11-f4fedd000000", + "x-ms-version": "2018-11-09" + }, + "ResponseBody": "\uFEFF\u003C?xml version=\u00221.0\u0022 encoding=\u0022utf-8\u0022?\u003E\u003CQueueMessagesList\u003E\u003CQueueMessage\u003E\u003CMessageId\u003Eb8fb7623-735d-4bd0-b078-e870a29bbe12\u003C/MessageId\u003E\u003CInsertionTime\u003ETue, 26 Jan 2021 18:29:06 GMT\u003C/InsertionTime\u003E\u003CExpirationTime\u003ETue, 02 Feb 2021 18:29:06 GMT\u003C/ExpirationTime\u003E\u003CPopReceipt\u003EAgAAAAMAAAAAAAAAHhosIRH01gE=\u003C/PopReceipt\u003E\u003CTimeNextVisible\u003ETue, 26 Jan 2021 18:29:06 GMT\u003C/TimeNextVisible\u003E\u003C/QueueMessage\u003E\u003C/QueueMessagesList\u003E" + }, + { + "RequestUri": "https://kasoboltest.queue.core.windows.net/test-queue-a526a502-4001-605b-b7da-4dca08918a1f/messages?peekonly=true", + "RequestMethod": "GET", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "traceparent": "00-0e811d6feb928040b6a976085120b91f-9562ad73a963694a-00", + "User-Agent": [ + "azsdk-net-Storage.Queues/12.7.0-alpha.20210126.1", + "(.NET Framework 4.8.4250.0; Microsoft Windows 10.0.19042 )" + ], + "x-ms-client-request-id": "71fc6e09-da16-7bb1-0df3-4f12cf42cbd1", + "x-ms-date": "Tue, 26 Jan 2021 18:29:06 GMT", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2018-11-09" + }, + "RequestBody": null, + "StatusCode": 200, + "ResponseHeaders": { + "Cache-Control": "no-cache", + "Content-Type": "application/xml", + "Date": "Tue, 26 Jan 2021 18:29:05 GMT", + "Server": [ + "Windows-Azure-Queue/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "Transfer-Encoding": "chunked", + "Vary": "Origin", + "x-ms-request-id": "d97c6980-d003-000a-1911-f44d7a000000", + "x-ms-version": "2018-11-09" + }, + "ResponseBody": "\uFEFF\u003C?xml version=\u00221.0\u0022 encoding=\u0022utf-8\u0022?\u003E\u003CQueueMessagesList\u003E\u003CQueueMessage\u003E\u003CMessageId\u003Eb8fb7623-735d-4bd0-b078-e870a29bbe12\u003C/MessageId\u003E\u003CInsertionTime\u003ETue, 26 Jan 2021 18:29:06 GMT\u003C/InsertionTime\u003E\u003CExpirationTime\u003ETue, 02 Feb 2021 18:29:06 GMT\u003C/ExpirationTime\u003E\u003CDequeueCount\u003E0\u003C/DequeueCount\u003E\u003CMessageText\u003Etest_content\u003C/MessageText\u003E\u003C/QueueMessage\u003E\u003C/QueueMessagesList\u003E" + }, + { + "RequestUri": "https://kasoboltest.queue.core.windows.net/test-queue-a526a502-4001-605b-b7da-4dca08918a1f", + "RequestMethod": "DELETE", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "traceparent": "00-0ae3b76a2ad75149883842a9204a42e7-98d2b2beb47c0e44-00", + "User-Agent": [ + "azsdk-net-Storage.Queues/12.7.0-alpha.20210126.1", + "(.NET Framework 4.8.4250.0; Microsoft Windows 10.0.19042 )" + ], + "x-ms-client-request-id": "818c963c-1d0a-d1e4-acf1-7ef341c64eab", + "x-ms-date": "Tue, 26 Jan 2021 18:29:06 GMT", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2018-11-09" + }, + "RequestBody": null, + "StatusCode": 204, + "ResponseHeaders": { + "Content-Length": "0", + "Date": "Tue, 26 Jan 2021 18:29:05 GMT", + "Server": [ + "Windows-Azure-Queue/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "x-ms-request-id": "23f41118-3003-006d-7111-f4fedd000000", + "x-ms-version": "2018-11-09" + }, + "ResponseBody": [] + } + ], + "Variables": { + "RandomSeed": "531594792", + "Storage_TestConfigDefault": "ProductionTenant\nkasoboltest\nU2FuaXRpemVk\nhttps://kasoboltest.blob.core.windows.net\nhttps://kasoboltest.file.core.windows.net\nhttps://kasoboltest.queue.core.windows.net\nhttps://kasoboltest.table.core.windows.net\n\n\n\n\nhttps://kasoboltest-secondary.blob.core.windows.net\nhttps://kasoboltest-secondary.file.core.windows.net\nhttps://kasoboltest-secondary.queue.core.windows.net\nhttps://kasoboltest-secondary.table.core.windows.net\n\nSanitized\n\n\nCloud\nBlobEndpoint=https://kasoboltest.blob.core.windows.net/;QueueEndpoint=https://kasoboltest.queue.core.windows.net/;FileEndpoint=https://kasoboltest.file.core.windows.net/;BlobSecondaryEndpoint=https://kasoboltest-secondary.blob.core.windows.net/;QueueSecondaryEndpoint=https://kasoboltest-secondary.queue.core.windows.net/;FileSecondaryEndpoint=https://kasoboltest-secondary.file.core.windows.net/;AccountName=kasoboltest;AccountKey=Kg==;\nencryptionScope" + } +} \ No newline at end of file diff --git a/sdk/storage/Azure.Storage.Queues/tests/SessionRecords/QueueClientTests/FailsOnInvalidPeekedMessageIfNoHandlerIsProvidedAsync.json b/sdk/storage/Azure.Storage.Queues/tests/SessionRecords/QueueClientTests/FailsOnInvalidPeekedMessageIfNoHandlerIsProvidedAsync.json new file mode 100644 index 0000000000000..7965463c3a39e --- /dev/null +++ b/sdk/storage/Azure.Storage.Queues/tests/SessionRecords/QueueClientTests/FailsOnInvalidPeekedMessageIfNoHandlerIsProvidedAsync.json @@ -0,0 +1,134 @@ +{ + "Entries": [ + { + "RequestUri": "https://kasoboltest.queue.core.windows.net/test-queue-cc4458e5-ec24-cc32-7616-10a6fad89eb8", + "RequestMethod": "PUT", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "traceparent": "00-660d5c76a8d65a4abbdfe8a853fb6f6f-b3c3435c1c479442-00", + "User-Agent": [ + "azsdk-net-Storage.Queues/12.7.0-alpha.20210126.1", + "(.NET Framework 4.8.4250.0; Microsoft Windows 10.0.19042 )" + ], + "x-ms-client-request-id": "b072c23b-d1f7-bf0e-6c08-e90c9ba03df9", + "x-ms-date": "Tue, 26 Jan 2021 18:29:06 GMT", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2018-11-09" + }, + "RequestBody": null, + "StatusCode": 201, + "ResponseHeaders": { + "Content-Length": "0", + "Date": "Tue, 26 Jan 2021 18:29:05 GMT", + "Server": [ + "Windows-Azure-Queue/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "x-ms-request-id": "e5723ac6-1003-0017-3a11-f49490000000", + "x-ms-version": "2018-11-09" + }, + "ResponseBody": [] + }, + { + "RequestUri": "https://kasoboltest.queue.core.windows.net/test-queue-cc4458e5-ec24-cc32-7616-10a6fad89eb8/messages", + "RequestMethod": "POST", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "Content-Length": "71", + "Content-Type": "application/xml", + "traceparent": "00-7479228d843c64489afa43d648caabbd-b161059b7327b14f-00", + "User-Agent": [ + "azsdk-net-Storage.Queues/12.7.0-alpha.20210126.1", + "(.NET Framework 4.8.4250.0; Microsoft Windows 10.0.19042 )" + ], + "x-ms-client-request-id": "376a55e0-ed65-bbc0-d569-0b304b5c692b", + "x-ms-date": "Tue, 26 Jan 2021 18:29:06 GMT", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2018-11-09" + }, + "RequestBody": "\uFEFF\u003CQueueMessage\u003E\u003CMessageText\u003Etest_content\u003C/MessageText\u003E\u003C/QueueMessage\u003E", + "StatusCode": 201, + "ResponseHeaders": { + "Content-Type": "application/xml", + "Date": "Tue, 26 Jan 2021 18:29:05 GMT", + "Server": [ + "Windows-Azure-Queue/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "Transfer-Encoding": "chunked", + "x-ms-request-id": "e5723aca-1003-0017-3c11-f49490000000", + "x-ms-version": "2018-11-09" + }, + "ResponseBody": "\uFEFF\u003C?xml version=\u00221.0\u0022 encoding=\u0022utf-8\u0022?\u003E\u003CQueueMessagesList\u003E\u003CQueueMessage\u003E\u003CMessageId\u003Eff10d6c1-6379-4f52-b5c0-99ec39ebc9b1\u003C/MessageId\u003E\u003CInsertionTime\u003ETue, 26 Jan 2021 18:29:06 GMT\u003C/InsertionTime\u003E\u003CExpirationTime\u003ETue, 02 Feb 2021 18:29:06 GMT\u003C/ExpirationTime\u003E\u003CPopReceipt\u003EAgAAAAMAAAAAAAAA\u002B8h0IRH01gE=\u003C/PopReceipt\u003E\u003CTimeNextVisible\u003ETue, 26 Jan 2021 18:29:06 GMT\u003C/TimeNextVisible\u003E\u003C/QueueMessage\u003E\u003C/QueueMessagesList\u003E" + }, + { + "RequestUri": "https://kasoboltest.queue.core.windows.net/test-queue-cc4458e5-ec24-cc32-7616-10a6fad89eb8/messages?peekonly=true", + "RequestMethod": "GET", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "traceparent": "00-716a29378a94c6409bc587ac7942758d-135f3fb21f94f74e-00", + "User-Agent": [ + "azsdk-net-Storage.Queues/12.7.0-alpha.20210126.1", + "(.NET Framework 4.8.4250.0; Microsoft Windows 10.0.19042 )" + ], + "x-ms-client-request-id": "462b07bf-0636-9994-c3fd-48e096896492", + "x-ms-date": "Tue, 26 Jan 2021 18:29:06 GMT", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2018-11-09" + }, + "RequestBody": null, + "StatusCode": 200, + "ResponseHeaders": { + "Cache-Control": "no-cache", + "Content-Type": "application/xml", + "Date": "Tue, 26 Jan 2021 18:29:05 GMT", + "Server": [ + "Windows-Azure-Queue/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "Transfer-Encoding": "chunked", + "Vary": "Origin", + "x-ms-request-id": "a0fd0767-9003-0060-5b11-f411d1000000", + "x-ms-version": "2018-11-09" + }, + "ResponseBody": "\uFEFF\u003C?xml version=\u00221.0\u0022 encoding=\u0022utf-8\u0022?\u003E\u003CQueueMessagesList\u003E\u003CQueueMessage\u003E\u003CMessageId\u003Eff10d6c1-6379-4f52-b5c0-99ec39ebc9b1\u003C/MessageId\u003E\u003CInsertionTime\u003ETue, 26 Jan 2021 18:29:06 GMT\u003C/InsertionTime\u003E\u003CExpirationTime\u003ETue, 02 Feb 2021 18:29:06 GMT\u003C/ExpirationTime\u003E\u003CDequeueCount\u003E0\u003C/DequeueCount\u003E\u003CMessageText\u003Etest_content\u003C/MessageText\u003E\u003C/QueueMessage\u003E\u003C/QueueMessagesList\u003E" + }, + { + "RequestUri": "https://kasoboltest.queue.core.windows.net/test-queue-cc4458e5-ec24-cc32-7616-10a6fad89eb8", + "RequestMethod": "DELETE", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "traceparent": "00-9259e448211b4d45acbd7fa2139fff2f-0fc962adf86c754a-00", + "User-Agent": [ + "azsdk-net-Storage.Queues/12.7.0-alpha.20210126.1", + "(.NET Framework 4.8.4250.0; Microsoft Windows 10.0.19042 )" + ], + "x-ms-client-request-id": "4371298a-2231-fdf4-7d87-3adecf91037e", + "x-ms-date": "Tue, 26 Jan 2021 18:29:06 GMT", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2018-11-09" + }, + "RequestBody": null, + "StatusCode": 204, + "ResponseHeaders": { + "Content-Length": "0", + "Date": "Tue, 26 Jan 2021 18:29:05 GMT", + "Server": [ + "Windows-Azure-Queue/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "x-ms-request-id": "e5723ad6-1003-0017-4811-f49490000000", + "x-ms-version": "2018-11-09" + }, + "ResponseBody": [] + } + ], + "Variables": { + "RandomSeed": "907209100", + "Storage_TestConfigDefault": "ProductionTenant\nkasoboltest\nU2FuaXRpemVk\nhttps://kasoboltest.blob.core.windows.net\nhttps://kasoboltest.file.core.windows.net\nhttps://kasoboltest.queue.core.windows.net\nhttps://kasoboltest.table.core.windows.net\n\n\n\n\nhttps://kasoboltest-secondary.blob.core.windows.net\nhttps://kasoboltest-secondary.file.core.windows.net\nhttps://kasoboltest-secondary.queue.core.windows.net\nhttps://kasoboltest-secondary.table.core.windows.net\n\nSanitized\n\n\nCloud\nBlobEndpoint=https://kasoboltest.blob.core.windows.net/;QueueEndpoint=https://kasoboltest.queue.core.windows.net/;FileEndpoint=https://kasoboltest.file.core.windows.net/;BlobSecondaryEndpoint=https://kasoboltest-secondary.blob.core.windows.net/;QueueSecondaryEndpoint=https://kasoboltest-secondary.queue.core.windows.net/;FileSecondaryEndpoint=https://kasoboltest-secondary.file.core.windows.net/;AccountName=kasoboltest;AccountKey=Kg==;\nencryptionScope" + } +} \ No newline at end of file diff --git a/sdk/storage/Azure.Storage.Queues/tests/SessionRecords/QueueClientTests/FailsOnInvalidQueueMessageIfNoHandlerIsProvided.json b/sdk/storage/Azure.Storage.Queues/tests/SessionRecords/QueueClientTests/FailsOnInvalidQueueMessageIfNoHandlerIsProvided.json new file mode 100644 index 0000000000000..57af94215a89f --- /dev/null +++ b/sdk/storage/Azure.Storage.Queues/tests/SessionRecords/QueueClientTests/FailsOnInvalidQueueMessageIfNoHandlerIsProvided.json @@ -0,0 +1,134 @@ +{ + "Entries": [ + { + "RequestUri": "https://kasoboltest.queue.core.windows.net/test-queue-186b9a2d-2db9-6a0b-f23c-b2fe3ac42f03", + "RequestMethod": "PUT", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "traceparent": "00-69b4f4b8d35d15489de0c4900330f1c3-4a32b10c5e59a54d-00", + "User-Agent": [ + "azsdk-net-Storage.Queues/12.7.0-alpha.20210126.1", + "(.NET Framework 4.8.4250.0; Microsoft Windows 10.0.19042 )" + ], + "x-ms-client-request-id": "737c90b1-5f3a-7018-428b-4360f1578525", + "x-ms-date": "Tue, 26 Jan 2021 18:29:19 GMT", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2018-11-09" + }, + "RequestBody": null, + "StatusCode": 201, + "ResponseHeaders": { + "Content-Length": "0", + "Date": "Tue, 26 Jan 2021 18:29:19 GMT", + "Server": [ + "Windows-Azure-Queue/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "x-ms-request-id": "65dd8af6-1003-0053-6911-f448fc000000", + "x-ms-version": "2018-11-09" + }, + "ResponseBody": [] + }, + { + "RequestUri": "https://kasoboltest.queue.core.windows.net/test-queue-186b9a2d-2db9-6a0b-f23c-b2fe3ac42f03/messages", + "RequestMethod": "POST", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "Content-Length": "71", + "Content-Type": "application/xml", + "traceparent": "00-f39c2dd9958e904d801720229e782708-3edff45ba5c5754b-00", + "User-Agent": [ + "azsdk-net-Storage.Queues/12.7.0-alpha.20210126.1", + "(.NET Framework 4.8.4250.0; Microsoft Windows 10.0.19042 )" + ], + "x-ms-client-request-id": "aa4d86ec-bb48-d2c8-5205-6763686dce10", + "x-ms-date": "Tue, 26 Jan 2021 18:29:19 GMT", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2018-11-09" + }, + "RequestBody": "\uFEFF\u003CQueueMessage\u003E\u003CMessageText\u003Etest_content\u003C/MessageText\u003E\u003C/QueueMessage\u003E", + "StatusCode": 201, + "ResponseHeaders": { + "Content-Type": "application/xml", + "Date": "Tue, 26 Jan 2021 18:29:19 GMT", + "Server": [ + "Windows-Azure-Queue/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "Transfer-Encoding": "chunked", + "x-ms-request-id": "65dd8af9-1003-0053-6a11-f448fc000000", + "x-ms-version": "2018-11-09" + }, + "ResponseBody": "\uFEFF\u003C?xml version=\u00221.0\u0022 encoding=\u0022utf-8\u0022?\u003E\u003CQueueMessagesList\u003E\u003CQueueMessage\u003E\u003CMessageId\u003E97e45397-9361-4642-b713-38053bc358fc\u003C/MessageId\u003E\u003CInsertionTime\u003ETue, 26 Jan 2021 18:29:19 GMT\u003C/InsertionTime\u003E\u003CExpirationTime\u003ETue, 02 Feb 2021 18:29:19 GMT\u003C/ExpirationTime\u003E\u003CPopReceipt\u003EAgAAAAMAAAAAAAAAhnFeKRH01gE=\u003C/PopReceipt\u003E\u003CTimeNextVisible\u003ETue, 26 Jan 2021 18:29:19 GMT\u003C/TimeNextVisible\u003E\u003C/QueueMessage\u003E\u003C/QueueMessagesList\u003E" + }, + { + "RequestUri": "https://kasoboltest.queue.core.windows.net/test-queue-186b9a2d-2db9-6a0b-f23c-b2fe3ac42f03/messages", + "RequestMethod": "GET", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "traceparent": "00-be6fc955ea65904d8953cac5980c4389-c996a62beb685245-00", + "User-Agent": [ + "azsdk-net-Storage.Queues/12.7.0-alpha.20210126.1", + "(.NET Framework 4.8.4250.0; Microsoft Windows 10.0.19042 )" + ], + "x-ms-client-request-id": "6a747034-db09-41dc-fa2b-a4071a3d185f", + "x-ms-date": "Tue, 26 Jan 2021 18:29:20 GMT", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2018-11-09" + }, + "RequestBody": null, + "StatusCode": 200, + "ResponseHeaders": { + "Cache-Control": "no-cache", + "Content-Type": "application/xml", + "Date": "Tue, 26 Jan 2021 18:29:19 GMT", + "Server": [ + "Windows-Azure-Queue/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "Transfer-Encoding": "chunked", + "Vary": "Origin", + "x-ms-request-id": "442965a5-e003-004d-4e11-f49211000000", + "x-ms-version": "2018-11-09" + }, + "ResponseBody": "\uFEFF\u003C?xml version=\u00221.0\u0022 encoding=\u0022utf-8\u0022?\u003E\u003CQueueMessagesList\u003E\u003CQueueMessage\u003E\u003CMessageId\u003E97e45397-9361-4642-b713-38053bc358fc\u003C/MessageId\u003E\u003CInsertionTime\u003ETue, 26 Jan 2021 18:29:19 GMT\u003C/InsertionTime\u003E\u003CExpirationTime\u003ETue, 02 Feb 2021 18:29:19 GMT\u003C/ExpirationTime\u003E\u003CPopReceipt\u003EAgAAAAMAAAAAAAAAYI5SOxH01gE=\u003C/PopReceipt\u003E\u003CTimeNextVisible\u003ETue, 26 Jan 2021 18:29:50 GMT\u003C/TimeNextVisible\u003E\u003CDequeueCount\u003E1\u003C/DequeueCount\u003E\u003CMessageText\u003Etest_content\u003C/MessageText\u003E\u003C/QueueMessage\u003E\u003C/QueueMessagesList\u003E" + }, + { + "RequestUri": "https://kasoboltest.queue.core.windows.net/test-queue-186b9a2d-2db9-6a0b-f23c-b2fe3ac42f03", + "RequestMethod": "DELETE", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "traceparent": "00-76d6ea9983db734397154058e2554b77-5d16d9b344c6ba4f-00", + "User-Agent": [ + "azsdk-net-Storage.Queues/12.7.0-alpha.20210126.1", + "(.NET Framework 4.8.4250.0; Microsoft Windows 10.0.19042 )" + ], + "x-ms-client-request-id": "f72e1f34-63f9-ea06-8cd1-55f5b41715b1", + "x-ms-date": "Tue, 26 Jan 2021 18:29:20 GMT", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2018-11-09" + }, + "RequestBody": null, + "StatusCode": 204, + "ResponseHeaders": { + "Content-Length": "0", + "Date": "Tue, 26 Jan 2021 18:29:19 GMT", + "Server": [ + "Windows-Azure-Queue/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "x-ms-request-id": "65dd8b03-1003-0053-6f11-f448fc000000", + "x-ms-version": "2018-11-09" + }, + "ResponseBody": [] + } + ], + "Variables": { + "RandomSeed": "209056997", + "Storage_TestConfigDefault": "ProductionTenant\nkasoboltest\nU2FuaXRpemVk\nhttps://kasoboltest.blob.core.windows.net\nhttps://kasoboltest.file.core.windows.net\nhttps://kasoboltest.queue.core.windows.net\nhttps://kasoboltest.table.core.windows.net\n\n\n\n\nhttps://kasoboltest-secondary.blob.core.windows.net\nhttps://kasoboltest-secondary.file.core.windows.net\nhttps://kasoboltest-secondary.queue.core.windows.net\nhttps://kasoboltest-secondary.table.core.windows.net\n\nSanitized\n\n\nCloud\nBlobEndpoint=https://kasoboltest.blob.core.windows.net/;QueueEndpoint=https://kasoboltest.queue.core.windows.net/;FileEndpoint=https://kasoboltest.file.core.windows.net/;BlobSecondaryEndpoint=https://kasoboltest-secondary.blob.core.windows.net/;QueueSecondaryEndpoint=https://kasoboltest-secondary.queue.core.windows.net/;FileSecondaryEndpoint=https://kasoboltest-secondary.file.core.windows.net/;AccountName=kasoboltest;AccountKey=Kg==;\nencryptionScope" + } +} \ No newline at end of file diff --git a/sdk/storage/Azure.Storage.Queues/tests/SessionRecords/QueueClientTests/FailsOnInvalidQueueMessageIfNoHandlerIsProvidedAsync.json b/sdk/storage/Azure.Storage.Queues/tests/SessionRecords/QueueClientTests/FailsOnInvalidQueueMessageIfNoHandlerIsProvidedAsync.json new file mode 100644 index 0000000000000..eabf43dcc8d22 --- /dev/null +++ b/sdk/storage/Azure.Storage.Queues/tests/SessionRecords/QueueClientTests/FailsOnInvalidQueueMessageIfNoHandlerIsProvidedAsync.json @@ -0,0 +1,134 @@ +{ + "Entries": [ + { + "RequestUri": "https://kasoboltest.queue.core.windows.net/test-queue-92126722-b999-3233-5e98-9208c353523a", + "RequestMethod": "PUT", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "traceparent": "00-6cb78400ad5eca4e89db035196fed022-40333ef51bf60f42-00", + "User-Agent": [ + "azsdk-net-Storage.Queues/12.7.0-alpha.20210126.1", + "(.NET Framework 4.8.4250.0; Microsoft Windows 10.0.19042 )" + ], + "x-ms-client-request-id": "f14369fc-369c-5fc6-e7e6-f22fbb544d0f", + "x-ms-date": "Tue, 26 Jan 2021 18:29:20 GMT", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2018-11-09" + }, + "RequestBody": null, + "StatusCode": 201, + "ResponseHeaders": { + "Content-Length": "0", + "Date": "Tue, 26 Jan 2021 18:29:19 GMT", + "Server": [ + "Windows-Azure-Queue/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "x-ms-request-id": "49e8397f-9003-000d-5e11-f4bbff000000", + "x-ms-version": "2018-11-09" + }, + "ResponseBody": [] + }, + { + "RequestUri": "https://kasoboltest.queue.core.windows.net/test-queue-92126722-b999-3233-5e98-9208c353523a/messages", + "RequestMethod": "POST", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "Content-Length": "71", + "Content-Type": "application/xml", + "traceparent": "00-e2be1be0aa8698488eb08bd7731c69eb-9c82858218dc5941-00", + "User-Agent": [ + "azsdk-net-Storage.Queues/12.7.0-alpha.20210126.1", + "(.NET Framework 4.8.4250.0; Microsoft Windows 10.0.19042 )" + ], + "x-ms-client-request-id": "590cbb09-6010-1c9e-678e-0e4d21848b46", + "x-ms-date": "Tue, 26 Jan 2021 18:29:20 GMT", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2018-11-09" + }, + "RequestBody": "\uFEFF\u003CQueueMessage\u003E\u003CMessageText\u003Etest_content\u003C/MessageText\u003E\u003C/QueueMessage\u003E", + "StatusCode": 201, + "ResponseHeaders": { + "Content-Type": "application/xml", + "Date": "Tue, 26 Jan 2021 18:29:19 GMT", + "Server": [ + "Windows-Azure-Queue/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "Transfer-Encoding": "chunked", + "x-ms-request-id": "49e839a0-9003-000d-7b11-f4bbff000000", + "x-ms-version": "2018-11-09" + }, + "ResponseBody": "\uFEFF\u003C?xml version=\u00221.0\u0022 encoding=\u0022utf-8\u0022?\u003E\u003CQueueMessagesList\u003E\u003CQueueMessage\u003E\u003CMessageId\u003E7ea29dbe-7a95-4a07-a7d5-549da03f91e2\u003C/MessageId\u003E\u003CInsertionTime\u003ETue, 26 Jan 2021 18:29:20 GMT\u003C/InsertionTime\u003E\u003CExpirationTime\u003ETue, 02 Feb 2021 18:29:20 GMT\u003C/ExpirationTime\u003E\u003CPopReceipt\u003EAgAAAAMAAAAAAAAAEv2kKRH01gE=\u003C/PopReceipt\u003E\u003CTimeNextVisible\u003ETue, 26 Jan 2021 18:29:20 GMT\u003C/TimeNextVisible\u003E\u003C/QueueMessage\u003E\u003C/QueueMessagesList\u003E" + }, + { + "RequestUri": "https://kasoboltest.queue.core.windows.net/test-queue-92126722-b999-3233-5e98-9208c353523a/messages", + "RequestMethod": "GET", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "traceparent": "00-458b266993a18542aec936d049178693-b1c93db7e9fbd941-00", + "User-Agent": [ + "azsdk-net-Storage.Queues/12.7.0-alpha.20210126.1", + "(.NET Framework 4.8.4250.0; Microsoft Windows 10.0.19042 )" + ], + "x-ms-client-request-id": "ff26c9bc-f447-f3ff-ce1a-912f5fa2ee2f", + "x-ms-date": "Tue, 26 Jan 2021 18:29:20 GMT", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2018-11-09" + }, + "RequestBody": null, + "StatusCode": 200, + "ResponseHeaders": { + "Cache-Control": "no-cache", + "Content-Type": "application/xml", + "Date": "Tue, 26 Jan 2021 18:29:20 GMT", + "Server": [ + "Windows-Azure-Queue/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "Transfer-Encoding": "chunked", + "Vary": "Origin", + "x-ms-request-id": "b124b8d6-b003-001a-1e11-f47b9c000000", + "x-ms-version": "2018-11-09" + }, + "ResponseBody": "\uFEFF\u003C?xml version=\u00221.0\u0022 encoding=\u0022utf-8\u0022?\u003E\u003CQueueMessagesList\u003E\u003CQueueMessage\u003E\u003CMessageId\u003E7ea29dbe-7a95-4a07-a7d5-549da03f91e2\u003C/MessageId\u003E\u003CInsertionTime\u003ETue, 26 Jan 2021 18:29:20 GMT\u003C/InsertionTime\u003E\u003CExpirationTime\u003ETue, 02 Feb 2021 18:29:20 GMT\u003C/ExpirationTime\u003E\u003CPopReceipt\u003EAgAAAAMAAAAAAAAAzGyrOxH01gE=\u003C/PopReceipt\u003E\u003CTimeNextVisible\u003ETue, 26 Jan 2021 18:29:50 GMT\u003C/TimeNextVisible\u003E\u003CDequeueCount\u003E1\u003C/DequeueCount\u003E\u003CMessageText\u003Etest_content\u003C/MessageText\u003E\u003C/QueueMessage\u003E\u003C/QueueMessagesList\u003E" + }, + { + "RequestUri": "https://kasoboltest.queue.core.windows.net/test-queue-92126722-b999-3233-5e98-9208c353523a", + "RequestMethod": "DELETE", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "traceparent": "00-ee07f9e7f2434f4c95bf152ff00b077a-499bfbd37bf3f04b-00", + "User-Agent": [ + "azsdk-net-Storage.Queues/12.7.0-alpha.20210126.1", + "(.NET Framework 4.8.4250.0; Microsoft Windows 10.0.19042 )" + ], + "x-ms-client-request-id": "5790f2f6-8b5d-b5fe-e421-cde305e82ed7", + "x-ms-date": "Tue, 26 Jan 2021 18:29:20 GMT", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2018-11-09" + }, + "RequestBody": null, + "StatusCode": 204, + "ResponseHeaders": { + "Content-Length": "0", + "Date": "Tue, 26 Jan 2021 18:29:19 GMT", + "Server": [ + "Windows-Azure-Queue/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "x-ms-request-id": "49e83a70-9003-000d-4211-f4bbff000000", + "x-ms-version": "2018-11-09" + }, + "ResponseBody": [] + } + ], + "Variables": { + "RandomSeed": "1845332121", + "Storage_TestConfigDefault": "ProductionTenant\nkasoboltest\nU2FuaXRpemVk\nhttps://kasoboltest.blob.core.windows.net\nhttps://kasoboltest.file.core.windows.net\nhttps://kasoboltest.queue.core.windows.net\nhttps://kasoboltest.table.core.windows.net\n\n\n\n\nhttps://kasoboltest-secondary.blob.core.windows.net\nhttps://kasoboltest-secondary.file.core.windows.net\nhttps://kasoboltest-secondary.queue.core.windows.net\nhttps://kasoboltest-secondary.table.core.windows.net\n\nSanitized\n\n\nCloud\nBlobEndpoint=https://kasoboltest.blob.core.windows.net/;QueueEndpoint=https://kasoboltest.queue.core.windows.net/;FileEndpoint=https://kasoboltest.file.core.windows.net/;BlobSecondaryEndpoint=https://kasoboltest-secondary.blob.core.windows.net/;QueueSecondaryEndpoint=https://kasoboltest-secondary.queue.core.windows.net/;FileSecondaryEndpoint=https://kasoboltest-secondary.file.core.windows.net/;AccountName=kasoboltest;AccountKey=Kg==;\nencryptionScope" + } +} \ No newline at end of file diff --git a/sdk/storage/Azure.Storage.Queues/tests/SessionRecords/QueueClientTests/PropagatesExceptionIfInvalidPeekedMessageAndHandlerThrows.json b/sdk/storage/Azure.Storage.Queues/tests/SessionRecords/QueueClientTests/PropagatesExceptionIfInvalidPeekedMessageAndHandlerThrows.json new file mode 100644 index 0000000000000..f6cb487364409 --- /dev/null +++ b/sdk/storage/Azure.Storage.Queues/tests/SessionRecords/QueueClientTests/PropagatesExceptionIfInvalidPeekedMessageAndHandlerThrows.json @@ -0,0 +1,167 @@ +{ + "Entries": [ + { + "RequestUri": "https://kasoboltest.queue.core.windows.net/test-queue-31d00514-00c0-1d48-9da1-bdf952ba3398", + "RequestMethod": "PUT", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "traceparent": "00-d678313a2e01d549ad092f5b9461e801-62a355d08b75864c-00", + "User-Agent": [ + "azsdk-net-Storage.Queues/12.7.0-alpha.20210126.1", + "(.NET Framework 4.8.4250.0; Microsoft Windows 10.0.19042 )" + ], + "x-ms-client-request-id": "01ea357b-7563-e55a-02ac-a6777b209cb4", + "x-ms-date": "Tue, 26 Jan 2021 21:28:03 GMT", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2018-11-09" + }, + "RequestBody": null, + "StatusCode": 201, + "ResponseHeaders": { + "Content-Length": "0", + "Date": "Tue, 26 Jan 2021 21:28:02 GMT", + "Server": [ + "Windows-Azure-Queue/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "x-ms-request-id": "c8c7ead8-8003-0012-0e2a-f460ef000000", + "x-ms-version": "2018-11-09" + }, + "ResponseBody": [] + }, + { + "RequestUri": "https://kasoboltest.queue.core.windows.net/test-queue-31d00514-00c0-1d48-9da1-bdf952ba3398/messages", + "RequestMethod": "POST", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "Content-Length": "71", + "Content-Type": "application/xml", + "traceparent": "00-62b898586107cc42acb1410bae285418-3396eb7dd56bea42-00", + "User-Agent": [ + "azsdk-net-Storage.Queues/12.7.0-alpha.20210126.1", + "(.NET Framework 4.8.4250.0; Microsoft Windows 10.0.19042 )" + ], + "x-ms-client-request-id": "1c7dad3e-31cf-cf35-b666-9f8324fab1d4", + "x-ms-date": "Tue, 26 Jan 2021 21:28:03 GMT", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2018-11-09" + }, + "RequestBody": "\uFEFF\u003CQueueMessage\u003E\u003CMessageText\u003Etest_content\u003C/MessageText\u003E\u003C/QueueMessage\u003E", + "StatusCode": 201, + "ResponseHeaders": { + "Content-Type": "application/xml", + "Date": "Tue, 26 Jan 2021 21:28:02 GMT", + "Server": [ + "Windows-Azure-Queue/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "Transfer-Encoding": "chunked", + "x-ms-request-id": "c8c7eaee-8003-0012-222a-f460ef000000", + "x-ms-version": "2018-11-09" + }, + "ResponseBody": "\uFEFF\u003C?xml version=\u00221.0\u0022 encoding=\u0022utf-8\u0022?\u003E\u003CQueueMessagesList\u003E\u003CQueueMessage\u003E\u003CMessageId\u003Eae03f2a9-e69c-4b64-b105-493b860ab756\u003C/MessageId\u003E\u003CInsertionTime\u003ETue, 26 Jan 2021 21:28:03 GMT\u003C/InsertionTime\u003E\u003CExpirationTime\u003ETue, 02 Feb 2021 21:28:03 GMT\u003C/ExpirationTime\u003E\u003CPopReceipt\u003EAgAAAAMAAAAAAAAAjedBISr01gE=\u003C/PopReceipt\u003E\u003CTimeNextVisible\u003ETue, 26 Jan 2021 21:28:03 GMT\u003C/TimeNextVisible\u003E\u003C/QueueMessage\u003E\u003C/QueueMessagesList\u003E" + }, + { + "RequestUri": "https://kasoboltest.queue.core.windows.net/test-queue-31d00514-00c0-1d48-9da1-bdf952ba3398/messages", + "RequestMethod": "POST", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "Content-Length": "75", + "Content-Type": "application/xml", + "traceparent": "00-8554e7517af20241a6bc4b3df97a8748-78bccf37fa52844d-00", + "User-Agent": [ + "azsdk-net-Storage.Queues/12.7.0-alpha.20210126.1", + "(.NET Framework 4.8.4250.0; Microsoft Windows 10.0.19042 )" + ], + "x-ms-client-request-id": "ce381fde-80a3-7ee4-e13a-43905c1d2599", + "x-ms-date": "Tue, 26 Jan 2021 21:28:03 GMT", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2018-11-09" + }, + "RequestBody": "\uFEFF\u003CQueueMessage\u003E\u003CMessageText\u003EdGVzdF9jb250ZW50\u003C/MessageText\u003E\u003C/QueueMessage\u003E", + "StatusCode": 201, + "ResponseHeaders": { + "Content-Type": "application/xml", + "Date": "Tue, 26 Jan 2021 21:28:03 GMT", + "Server": [ + "Windows-Azure-Queue/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "Transfer-Encoding": "chunked", + "x-ms-request-id": "5981583d-2003-0036-4c2a-f4f9a1000000", + "x-ms-version": "2018-11-09" + }, + "ResponseBody": "\uFEFF\u003C?xml version=\u00221.0\u0022 encoding=\u0022utf-8\u0022?\u003E\u003CQueueMessagesList\u003E\u003CQueueMessage\u003E\u003CMessageId\u003E37ca380a-dfed-4169-b920-f18b9f33ded2\u003C/MessageId\u003E\u003CInsertionTime\u003ETue, 26 Jan 2021 21:28:03 GMT\u003C/InsertionTime\u003E\u003CExpirationTime\u003ETue, 02 Feb 2021 21:28:03 GMT\u003C/ExpirationTime\u003E\u003CPopReceipt\u003EAgAAAAMAAAAAAAAAQm9XISr01gE=\u003C/PopReceipt\u003E\u003CTimeNextVisible\u003ETue, 26 Jan 2021 21:28:03 GMT\u003C/TimeNextVisible\u003E\u003C/QueueMessage\u003E\u003C/QueueMessagesList\u003E" + }, + { + "RequestUri": "https://kasoboltest.queue.core.windows.net/test-queue-31d00514-00c0-1d48-9da1-bdf952ba3398/messages?peekonly=true\u0026numofmessages=10", + "RequestMethod": "GET", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "traceparent": "00-6287b50cec6d824081e8c8ad8b386415-365050e69995d04f-00", + "User-Agent": [ + "azsdk-net-Storage.Queues/12.7.0-alpha.20210126.1", + "(.NET Framework 4.8.4250.0; Microsoft Windows 10.0.19042 )" + ], + "x-ms-client-request-id": "05a47cf6-e3c1-8731-f23a-56d224892376", + "x-ms-date": "Tue, 26 Jan 2021 21:28:04 GMT", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2018-11-09" + }, + "RequestBody": null, + "StatusCode": 200, + "ResponseHeaders": { + "Cache-Control": "no-cache", + "Content-Type": "application/xml", + "Date": "Tue, 26 Jan 2021 21:28:03 GMT", + "Server": [ + "Windows-Azure-Queue/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "Transfer-Encoding": "chunked", + "Vary": "Origin", + "x-ms-request-id": "5981586a-2003-0036-752a-f4f9a1000000", + "x-ms-version": "2018-11-09" + }, + "ResponseBody": "\uFEFF\u003C?xml version=\u00221.0\u0022 encoding=\u0022utf-8\u0022?\u003E\u003CQueueMessagesList\u003E\u003CQueueMessage\u003E\u003CMessageId\u003Eae03f2a9-e69c-4b64-b105-493b860ab756\u003C/MessageId\u003E\u003CInsertionTime\u003ETue, 26 Jan 2021 21:28:03 GMT\u003C/InsertionTime\u003E\u003CExpirationTime\u003ETue, 02 Feb 2021 21:28:03 GMT\u003C/ExpirationTime\u003E\u003CDequeueCount\u003E0\u003C/DequeueCount\u003E\u003CMessageText\u003Etest_content\u003C/MessageText\u003E\u003C/QueueMessage\u003E\u003CQueueMessage\u003E\u003CMessageId\u003E37ca380a-dfed-4169-b920-f18b9f33ded2\u003C/MessageId\u003E\u003CInsertionTime\u003ETue, 26 Jan 2021 21:28:03 GMT\u003C/InsertionTime\u003E\u003CExpirationTime\u003ETue, 02 Feb 2021 21:28:03 GMT\u003C/ExpirationTime\u003E\u003CDequeueCount\u003E0\u003C/DequeueCount\u003E\u003CMessageText\u003EdGVzdF9jb250ZW50\u003C/MessageText\u003E\u003C/QueueMessage\u003E\u003C/QueueMessagesList\u003E" + }, + { + "RequestUri": "https://kasoboltest.queue.core.windows.net/test-queue-31d00514-00c0-1d48-9da1-bdf952ba3398", + "RequestMethod": "DELETE", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "traceparent": "00-c8a0288263dcab41a85e12af30b59eb4-bfcc641e1c3c3c4a-00", + "User-Agent": [ + "azsdk-net-Storage.Queues/12.7.0-alpha.20210126.1", + "(.NET Framework 4.8.4250.0; Microsoft Windows 10.0.19042 )" + ], + "x-ms-client-request-id": "e09acca4-2079-0ed7-368b-aaeb40a6b109", + "x-ms-date": "Tue, 26 Jan 2021 21:28:04 GMT", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2018-11-09" + }, + "RequestBody": null, + "StatusCode": 204, + "ResponseHeaders": { + "Content-Length": "0", + "Date": "Tue, 26 Jan 2021 21:28:03 GMT", + "Server": [ + "Windows-Azure-Queue/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "x-ms-request-id": "c8c7eb17-8003-0012-4a2a-f460ef000000", + "x-ms-version": "2018-11-09" + }, + "ResponseBody": [] + } + ], + "Variables": { + "RandomSeed": "1137513990", + "Storage_TestConfigDefault": "ProductionTenant\nkasoboltest\nU2FuaXRpemVk\nhttps://kasoboltest.blob.core.windows.net\nhttps://kasoboltest.file.core.windows.net\nhttps://kasoboltest.queue.core.windows.net\nhttps://kasoboltest.table.core.windows.net\n\n\n\n\nhttps://kasoboltest-secondary.blob.core.windows.net\nhttps://kasoboltest-secondary.file.core.windows.net\nhttps://kasoboltest-secondary.queue.core.windows.net\nhttps://kasoboltest-secondary.table.core.windows.net\n\nSanitized\n\n\nCloud\nBlobEndpoint=https://kasoboltest.blob.core.windows.net/;QueueEndpoint=https://kasoboltest.queue.core.windows.net/;FileEndpoint=https://kasoboltest.file.core.windows.net/;BlobSecondaryEndpoint=https://kasoboltest-secondary.blob.core.windows.net/;QueueSecondaryEndpoint=https://kasoboltest-secondary.queue.core.windows.net/;FileSecondaryEndpoint=https://kasoboltest-secondary.file.core.windows.net/;AccountName=kasoboltest;AccountKey=Kg==;\nencryptionScope" + } +} \ No newline at end of file diff --git a/sdk/storage/Azure.Storage.Queues/tests/SessionRecords/QueueClientTests/PropagatesExceptionIfInvalidPeekedMessageAndHandlerThrowsAsync.json b/sdk/storage/Azure.Storage.Queues/tests/SessionRecords/QueueClientTests/PropagatesExceptionIfInvalidPeekedMessageAndHandlerThrowsAsync.json new file mode 100644 index 0000000000000..dee3251ee4512 --- /dev/null +++ b/sdk/storage/Azure.Storage.Queues/tests/SessionRecords/QueueClientTests/PropagatesExceptionIfInvalidPeekedMessageAndHandlerThrowsAsync.json @@ -0,0 +1,167 @@ +{ + "Entries": [ + { + "RequestUri": "https://kasoboltest.queue.core.windows.net/test-queue-f21ec946-2a81-7e98-5f46-176a6998a7d1", + "RequestMethod": "PUT", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "traceparent": "00-05a7071699a6a74db622ce2dafebc275-abcd78e8de225340-00", + "User-Agent": [ + "azsdk-net-Storage.Queues/12.7.0-alpha.20210126.1", + "(.NET Framework 4.8.4250.0; Microsoft Windows 10.0.19042 )" + ], + "x-ms-client-request-id": "b9ab3075-5d04-4f67-4cda-652ab1ff8f08", + "x-ms-date": "Tue, 26 Jan 2021 21:28:04 GMT", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2018-11-09" + }, + "RequestBody": null, + "StatusCode": 201, + "ResponseHeaders": { + "Content-Length": "0", + "Date": "Tue, 26 Jan 2021 21:28:03 GMT", + "Server": [ + "Windows-Azure-Queue/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "x-ms-request-id": "34729942-6003-0057-042a-f4bd7e000000", + "x-ms-version": "2018-11-09" + }, + "ResponseBody": [] + }, + { + "RequestUri": "https://kasoboltest.queue.core.windows.net/test-queue-f21ec946-2a81-7e98-5f46-176a6998a7d1/messages", + "RequestMethod": "POST", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "Content-Length": "71", + "Content-Type": "application/xml", + "traceparent": "00-ac895c1f43693c4885b4541e73009333-c2076c1975838247-00", + "User-Agent": [ + "azsdk-net-Storage.Queues/12.7.0-alpha.20210126.1", + "(.NET Framework 4.8.4250.0; Microsoft Windows 10.0.19042 )" + ], + "x-ms-client-request-id": "38f42d2a-eeed-f3cd-eb7c-30809ee9ac96", + "x-ms-date": "Tue, 26 Jan 2021 21:28:04 GMT", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2018-11-09" + }, + "RequestBody": "\uFEFF\u003CQueueMessage\u003E\u003CMessageText\u003Etest_content\u003C/MessageText\u003E\u003C/QueueMessage\u003E", + "StatusCode": 201, + "ResponseHeaders": { + "Content-Type": "application/xml", + "Date": "Tue, 26 Jan 2021 21:28:03 GMT", + "Server": [ + "Windows-Azure-Queue/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "Transfer-Encoding": "chunked", + "x-ms-request-id": "34729990-6003-0057-4d2a-f4bd7e000000", + "x-ms-version": "2018-11-09" + }, + "ResponseBody": "\uFEFF\u003C?xml version=\u00221.0\u0022 encoding=\u0022utf-8\u0022?\u003E\u003CQueueMessagesList\u003E\u003CQueueMessage\u003E\u003CMessageId\u003Eba88b4e4-7887-4e08-847c-d5ce88294dbf\u003C/MessageId\u003E\u003CInsertionTime\u003ETue, 26 Jan 2021 21:28:04 GMT\u003C/InsertionTime\u003E\u003CExpirationTime\u003ETue, 02 Feb 2021 21:28:04 GMT\u003C/ExpirationTime\u003E\u003CPopReceipt\u003EAgAAAAMAAAAAAAAAQiG9ISr01gE=\u003C/PopReceipt\u003E\u003CTimeNextVisible\u003ETue, 26 Jan 2021 21:28:04 GMT\u003C/TimeNextVisible\u003E\u003C/QueueMessage\u003E\u003C/QueueMessagesList\u003E" + }, + { + "RequestUri": "https://kasoboltest.queue.core.windows.net/test-queue-f21ec946-2a81-7e98-5f46-176a6998a7d1/messages", + "RequestMethod": "POST", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "Content-Length": "75", + "Content-Type": "application/xml", + "traceparent": "00-81c9c3380a333142948ccca1b0ea3a9b-01b6462d88576e4d-00", + "User-Agent": [ + "azsdk-net-Storage.Queues/12.7.0-alpha.20210126.1", + "(.NET Framework 4.8.4250.0; Microsoft Windows 10.0.19042 )" + ], + "x-ms-client-request-id": "8300b04c-560b-c61b-1148-098d11a5a4cc", + "x-ms-date": "Tue, 26 Jan 2021 21:28:04 GMT", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2018-11-09" + }, + "RequestBody": "\uFEFF\u003CQueueMessage\u003E\u003CMessageText\u003EdGVzdF9jb250ZW50\u003C/MessageText\u003E\u003C/QueueMessage\u003E", + "StatusCode": 201, + "ResponseHeaders": { + "Content-Type": "application/xml", + "Date": "Tue, 26 Jan 2021 21:28:04 GMT", + "Server": [ + "Windows-Azure-Queue/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "Transfer-Encoding": "chunked", + "x-ms-request-id": "978d4c2f-3003-0000-462a-f454f3000000", + "x-ms-version": "2018-11-09" + }, + "ResponseBody": "\uFEFF\u003C?xml version=\u00221.0\u0022 encoding=\u0022utf-8\u0022?\u003E\u003CQueueMessagesList\u003E\u003CQueueMessage\u003E\u003CMessageId\u003E0dd9a7dc-5abe-40a3-a670-6aeeb6d59610\u003C/MessageId\u003E\u003CInsertionTime\u003ETue, 26 Jan 2021 21:28:04 GMT\u003C/InsertionTime\u003E\u003CExpirationTime\u003ETue, 02 Feb 2021 21:28:04 GMT\u003C/ExpirationTime\u003E\u003CPopReceipt\u003EAgAAAAMAAAAAAAAAn17QISr01gE=\u003C/PopReceipt\u003E\u003CTimeNextVisible\u003ETue, 26 Jan 2021 21:28:04 GMT\u003C/TimeNextVisible\u003E\u003C/QueueMessage\u003E\u003C/QueueMessagesList\u003E" + }, + { + "RequestUri": "https://kasoboltest.queue.core.windows.net/test-queue-f21ec946-2a81-7e98-5f46-176a6998a7d1/messages?peekonly=true\u0026numofmessages=10", + "RequestMethod": "GET", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "traceparent": "00-1378e4b8c6d58843b9a249a406ad73d5-d0cc40dac53eb64b-00", + "User-Agent": [ + "azsdk-net-Storage.Queues/12.7.0-alpha.20210126.1", + "(.NET Framework 4.8.4250.0; Microsoft Windows 10.0.19042 )" + ], + "x-ms-client-request-id": "ee34eb35-28e8-328b-fc15-ff251c532265", + "x-ms-date": "Tue, 26 Jan 2021 21:28:04 GMT", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2018-11-09" + }, + "RequestBody": null, + "StatusCode": 200, + "ResponseHeaders": { + "Cache-Control": "no-cache", + "Content-Type": "application/xml", + "Date": "Tue, 26 Jan 2021 21:28:04 GMT", + "Server": [ + "Windows-Azure-Queue/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "Transfer-Encoding": "chunked", + "Vary": "Origin", + "x-ms-request-id": "978d4c48-3003-0000-5c2a-f454f3000000", + "x-ms-version": "2018-11-09" + }, + "ResponseBody": "\uFEFF\u003C?xml version=\u00221.0\u0022 encoding=\u0022utf-8\u0022?\u003E\u003CQueueMessagesList\u003E\u003CQueueMessage\u003E\u003CMessageId\u003Eba88b4e4-7887-4e08-847c-d5ce88294dbf\u003C/MessageId\u003E\u003CInsertionTime\u003ETue, 26 Jan 2021 21:28:04 GMT\u003C/InsertionTime\u003E\u003CExpirationTime\u003ETue, 02 Feb 2021 21:28:04 GMT\u003C/ExpirationTime\u003E\u003CDequeueCount\u003E0\u003C/DequeueCount\u003E\u003CMessageText\u003Etest_content\u003C/MessageText\u003E\u003C/QueueMessage\u003E\u003CQueueMessage\u003E\u003CMessageId\u003E0dd9a7dc-5abe-40a3-a670-6aeeb6d59610\u003C/MessageId\u003E\u003CInsertionTime\u003ETue, 26 Jan 2021 21:28:04 GMT\u003C/InsertionTime\u003E\u003CExpirationTime\u003ETue, 02 Feb 2021 21:28:04 GMT\u003C/ExpirationTime\u003E\u003CDequeueCount\u003E0\u003C/DequeueCount\u003E\u003CMessageText\u003EdGVzdF9jb250ZW50\u003C/MessageText\u003E\u003C/QueueMessage\u003E\u003C/QueueMessagesList\u003E" + }, + { + "RequestUri": "https://kasoboltest.queue.core.windows.net/test-queue-f21ec946-2a81-7e98-5f46-176a6998a7d1", + "RequestMethod": "DELETE", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "traceparent": "00-1af8468c9acdb0489132d0d1c3259281-747920d2cad9e847-00", + "User-Agent": [ + "azsdk-net-Storage.Queues/12.7.0-alpha.20210126.1", + "(.NET Framework 4.8.4250.0; Microsoft Windows 10.0.19042 )" + ], + "x-ms-client-request-id": "26571c56-b571-ece4-39ae-f4177d22e7f9", + "x-ms-date": "Tue, 26 Jan 2021 21:28:04 GMT", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2018-11-09" + }, + "RequestBody": null, + "StatusCode": 204, + "ResponseHeaders": { + "Content-Length": "0", + "Date": "Tue, 26 Jan 2021 21:28:04 GMT", + "Server": [ + "Windows-Azure-Queue/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "x-ms-request-id": "34729a1f-6003-0057-5c2a-f4bd7e000000", + "x-ms-version": "2018-11-09" + }, + "ResponseBody": [] + } + ], + "Variables": { + "RandomSeed": "203054038", + "Storage_TestConfigDefault": "ProductionTenant\nkasoboltest\nU2FuaXRpemVk\nhttps://kasoboltest.blob.core.windows.net\nhttps://kasoboltest.file.core.windows.net\nhttps://kasoboltest.queue.core.windows.net\nhttps://kasoboltest.table.core.windows.net\n\n\n\n\nhttps://kasoboltest-secondary.blob.core.windows.net\nhttps://kasoboltest-secondary.file.core.windows.net\nhttps://kasoboltest-secondary.queue.core.windows.net\nhttps://kasoboltest-secondary.table.core.windows.net\n\nSanitized\n\n\nCloud\nBlobEndpoint=https://kasoboltest.blob.core.windows.net/;QueueEndpoint=https://kasoboltest.queue.core.windows.net/;FileEndpoint=https://kasoboltest.file.core.windows.net/;BlobSecondaryEndpoint=https://kasoboltest-secondary.blob.core.windows.net/;QueueSecondaryEndpoint=https://kasoboltest-secondary.queue.core.windows.net/;FileSecondaryEndpoint=https://kasoboltest-secondary.file.core.windows.net/;AccountName=kasoboltest;AccountKey=Kg==;\nencryptionScope" + } +} \ No newline at end of file diff --git a/sdk/storage/Azure.Storage.Queues/tests/SessionRecords/QueueClientTests/PropagatesExceptionIfInvalidQueueMessageAndHandlerThrows.json b/sdk/storage/Azure.Storage.Queues/tests/SessionRecords/QueueClientTests/PropagatesExceptionIfInvalidQueueMessageAndHandlerThrows.json new file mode 100644 index 0000000000000..21822d1f9f723 --- /dev/null +++ b/sdk/storage/Azure.Storage.Queues/tests/SessionRecords/QueueClientTests/PropagatesExceptionIfInvalidQueueMessageAndHandlerThrows.json @@ -0,0 +1,167 @@ +{ + "Entries": [ + { + "RequestUri": "https://kasoboltest.queue.core.windows.net/test-queue-1b097e93-0e7d-d7d2-f594-fa98802a79aa", + "RequestMethod": "PUT", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "traceparent": "00-3d2dd5d5a82efd48b850a741704077f7-e4be991149b58f49-00", + "User-Agent": [ + "azsdk-net-Storage.Queues/12.7.0-alpha.20210126.1", + "(.NET Framework 4.8.4250.0; Microsoft Windows 10.0.19042 )" + ], + "x-ms-client-request-id": "4a656755-982b-519e-75a5-dd9967a1f9dd", + "x-ms-date": "Tue, 26 Jan 2021 21:29:09 GMT", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2018-11-09" + }, + "RequestBody": null, + "StatusCode": 201, + "ResponseHeaders": { + "Content-Length": "0", + "Date": "Tue, 26 Jan 2021 21:29:09 GMT", + "Server": [ + "Windows-Azure-Queue/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "x-ms-request-id": "78b7a107-b003-0011-162a-f463e8000000", + "x-ms-version": "2018-11-09" + }, + "ResponseBody": [] + }, + { + "RequestUri": "https://kasoboltest.queue.core.windows.net/test-queue-1b097e93-0e7d-d7d2-f594-fa98802a79aa/messages", + "RequestMethod": "POST", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "Content-Length": "71", + "Content-Type": "application/xml", + "traceparent": "00-ac8d405d6282f44eb9930357e86300da-e7cc111f516f1d42-00", + "User-Agent": [ + "azsdk-net-Storage.Queues/12.7.0-alpha.20210126.1", + "(.NET Framework 4.8.4250.0; Microsoft Windows 10.0.19042 )" + ], + "x-ms-client-request-id": "19436cb0-2ec5-987e-2a56-f9f39c4d9332", + "x-ms-date": "Tue, 26 Jan 2021 21:29:10 GMT", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2018-11-09" + }, + "RequestBody": "\uFEFF\u003CQueueMessage\u003E\u003CMessageText\u003Etest_content\u003C/MessageText\u003E\u003C/QueueMessage\u003E", + "StatusCode": 201, + "ResponseHeaders": { + "Content-Type": "application/xml", + "Date": "Tue, 26 Jan 2021 21:29:09 GMT", + "Server": [ + "Windows-Azure-Queue/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "Transfer-Encoding": "chunked", + "x-ms-request-id": "78b7a122-b003-0011-2f2a-f463e8000000", + "x-ms-version": "2018-11-09" + }, + "ResponseBody": "\uFEFF\u003C?xml version=\u00221.0\u0022 encoding=\u0022utf-8\u0022?\u003E\u003CQueueMessagesList\u003E\u003CQueueMessage\u003E\u003CMessageId\u003Eeafadc16-f4ca-4fc5-a43d-db377cee337f\u003C/MessageId\u003E\u003CInsertionTime\u003ETue, 26 Jan 2021 21:29:10 GMT\u003C/InsertionTime\u003E\u003CExpirationTime\u003ETue, 02 Feb 2021 21:29:10 GMT\u003C/ExpirationTime\u003E\u003CPopReceipt\u003EAgAAAAMAAAAAAAAANiLGSCr01gE=\u003C/PopReceipt\u003E\u003CTimeNextVisible\u003ETue, 26 Jan 2021 21:29:10 GMT\u003C/TimeNextVisible\u003E\u003C/QueueMessage\u003E\u003C/QueueMessagesList\u003E" + }, + { + "RequestUri": "https://kasoboltest.queue.core.windows.net/test-queue-1b097e93-0e7d-d7d2-f594-fa98802a79aa/messages", + "RequestMethod": "POST", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "Content-Length": "75", + "Content-Type": "application/xml", + "traceparent": "00-851bc272403db24fb04b7725af0d6766-f45794e3a66cfb46-00", + "User-Agent": [ + "azsdk-net-Storage.Queues/12.7.0-alpha.20210126.1", + "(.NET Framework 4.8.4250.0; Microsoft Windows 10.0.19042 )" + ], + "x-ms-client-request-id": "fbe8e017-e05d-4f17-82de-eb41a0947d4b", + "x-ms-date": "Tue, 26 Jan 2021 21:29:10 GMT", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2018-11-09" + }, + "RequestBody": "\uFEFF\u003CQueueMessage\u003E\u003CMessageText\u003EdGVzdF9jb250ZW50\u003C/MessageText\u003E\u003C/QueueMessage\u003E", + "StatusCode": 201, + "ResponseHeaders": { + "Content-Type": "application/xml", + "Date": "Tue, 26 Jan 2021 21:29:09 GMT", + "Server": [ + "Windows-Azure-Queue/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "Transfer-Encoding": "chunked", + "x-ms-request-id": "0ad65d9b-8003-005d-482a-f4a4f7000000", + "x-ms-version": "2018-11-09" + }, + "ResponseBody": "\uFEFF\u003C?xml version=\u00221.0\u0022 encoding=\u0022utf-8\u0022?\u003E\u003CQueueMessagesList\u003E\u003CQueueMessage\u003E\u003CMessageId\u003E4f3267e9-b284-4b4e-869a-090091ad6bfc\u003C/MessageId\u003E\u003CInsertionTime\u003ETue, 26 Jan 2021 21:29:10 GMT\u003C/InsertionTime\u003E\u003CExpirationTime\u003ETue, 02 Feb 2021 21:29:10 GMT\u003C/ExpirationTime\u003E\u003CPopReceipt\u003EAgAAAAMAAAAAAAAA\u002BtDbSCr01gE=\u003C/PopReceipt\u003E\u003CTimeNextVisible\u003ETue, 26 Jan 2021 21:29:10 GMT\u003C/TimeNextVisible\u003E\u003C/QueueMessage\u003E\u003C/QueueMessagesList\u003E" + }, + { + "RequestUri": "https://kasoboltest.queue.core.windows.net/test-queue-1b097e93-0e7d-d7d2-f594-fa98802a79aa/messages?numofmessages=10", + "RequestMethod": "GET", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "traceparent": "00-0e8743f734fa1848a017d8dd33afcbab-cbea58ff368edc4b-00", + "User-Agent": [ + "azsdk-net-Storage.Queues/12.7.0-alpha.20210126.1", + "(.NET Framework 4.8.4250.0; Microsoft Windows 10.0.19042 )" + ], + "x-ms-client-request-id": "bbdbe9f6-9764-f3d4-27a0-c7a3e4b21a4b", + "x-ms-date": "Tue, 26 Jan 2021 21:29:10 GMT", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2018-11-09" + }, + "RequestBody": null, + "StatusCode": 200, + "ResponseHeaders": { + "Cache-Control": "no-cache", + "Content-Type": "application/xml", + "Date": "Tue, 26 Jan 2021 21:29:09 GMT", + "Server": [ + "Windows-Azure-Queue/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "Transfer-Encoding": "chunked", + "Vary": "Origin", + "x-ms-request-id": "0ad65da6-8003-005d-512a-f4a4f7000000", + "x-ms-version": "2018-11-09" + }, + "ResponseBody": "\uFEFF\u003C?xml version=\u00221.0\u0022 encoding=\u0022utf-8\u0022?\u003E\u003CQueueMessagesList\u003E\u003CQueueMessage\u003E\u003CMessageId\u003Eeafadc16-f4ca-4fc5-a43d-db377cee337f\u003C/MessageId\u003E\u003CInsertionTime\u003ETue, 26 Jan 2021 21:29:10 GMT\u003C/InsertionTime\u003E\u003CExpirationTime\u003ETue, 02 Feb 2021 21:29:10 GMT\u003C/ExpirationTime\u003E\u003CPopReceipt\u003EAgAAAAMAAAAAAAAA\u002Bn3CWir01gE=\u003C/PopReceipt\u003E\u003CTimeNextVisible\u003ETue, 26 Jan 2021 21:29:40 GMT\u003C/TimeNextVisible\u003E\u003CDequeueCount\u003E1\u003C/DequeueCount\u003E\u003CMessageText\u003Etest_content\u003C/MessageText\u003E\u003C/QueueMessage\u003E\u003CQueueMessage\u003E\u003CMessageId\u003E4f3267e9-b284-4b4e-869a-090091ad6bfc\u003C/MessageId\u003E\u003CInsertionTime\u003ETue, 26 Jan 2021 21:29:10 GMT\u003C/InsertionTime\u003E\u003CExpirationTime\u003ETue, 02 Feb 2021 21:29:10 GMT\u003C/ExpirationTime\u003E\u003CPopReceipt\u003EAgAAAAMAAAAAAAAA\u002Bn3CWir01gE=\u003C/PopReceipt\u003E\u003CTimeNextVisible\u003ETue, 26 Jan 2021 21:29:40 GMT\u003C/TimeNextVisible\u003E\u003CDequeueCount\u003E1\u003C/DequeueCount\u003E\u003CMessageText\u003EdGVzdF9jb250ZW50\u003C/MessageText\u003E\u003C/QueueMessage\u003E\u003C/QueueMessagesList\u003E" + }, + { + "RequestUri": "https://kasoboltest.queue.core.windows.net/test-queue-1b097e93-0e7d-d7d2-f594-fa98802a79aa", + "RequestMethod": "DELETE", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "traceparent": "00-4b1baece1e2807488235024cb8166b5d-2f8945086ee8644c-00", + "User-Agent": [ + "azsdk-net-Storage.Queues/12.7.0-alpha.20210126.1", + "(.NET Framework 4.8.4250.0; Microsoft Windows 10.0.19042 )" + ], + "x-ms-client-request-id": "b74aaf97-c1b8-e3e7-3fe8-8ad37cd8fcc5", + "x-ms-date": "Tue, 26 Jan 2021 21:29:10 GMT", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2018-11-09" + }, + "RequestBody": null, + "StatusCode": 204, + "ResponseHeaders": { + "Content-Length": "0", + "Date": "Tue, 26 Jan 2021 21:29:09 GMT", + "Server": [ + "Windows-Azure-Queue/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "x-ms-request-id": "78b7a15d-b003-0011-622a-f463e8000000", + "x-ms-version": "2018-11-09" + }, + "ResponseBody": [] + } + ], + "Variables": { + "RandomSeed": "444016423", + "Storage_TestConfigDefault": "ProductionTenant\nkasoboltest\nU2FuaXRpemVk\nhttps://kasoboltest.blob.core.windows.net\nhttps://kasoboltest.file.core.windows.net\nhttps://kasoboltest.queue.core.windows.net\nhttps://kasoboltest.table.core.windows.net\n\n\n\n\nhttps://kasoboltest-secondary.blob.core.windows.net\nhttps://kasoboltest-secondary.file.core.windows.net\nhttps://kasoboltest-secondary.queue.core.windows.net\nhttps://kasoboltest-secondary.table.core.windows.net\n\nSanitized\n\n\nCloud\nBlobEndpoint=https://kasoboltest.blob.core.windows.net/;QueueEndpoint=https://kasoboltest.queue.core.windows.net/;FileEndpoint=https://kasoboltest.file.core.windows.net/;BlobSecondaryEndpoint=https://kasoboltest-secondary.blob.core.windows.net/;QueueSecondaryEndpoint=https://kasoboltest-secondary.queue.core.windows.net/;FileSecondaryEndpoint=https://kasoboltest-secondary.file.core.windows.net/;AccountName=kasoboltest;AccountKey=Kg==;\nencryptionScope" + } +} \ No newline at end of file diff --git a/sdk/storage/Azure.Storage.Queues/tests/SessionRecords/QueueClientTests/PropagatesExceptionIfInvalidQueueMessageAndHandlerThrowsAsync.json b/sdk/storage/Azure.Storage.Queues/tests/SessionRecords/QueueClientTests/PropagatesExceptionIfInvalidQueueMessageAndHandlerThrowsAsync.json new file mode 100644 index 0000000000000..e6aea433366e6 --- /dev/null +++ b/sdk/storage/Azure.Storage.Queues/tests/SessionRecords/QueueClientTests/PropagatesExceptionIfInvalidQueueMessageAndHandlerThrowsAsync.json @@ -0,0 +1,167 @@ +{ + "Entries": [ + { + "RequestUri": "https://kasoboltest.queue.core.windows.net/test-queue-bb1f8b18-605d-8e50-67f4-ee30c266a808", + "RequestMethod": "PUT", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "traceparent": "00-69064aa0d59ac34ab45cc5dee0acd0cb-0125f1b056af1841-00", + "User-Agent": [ + "azsdk-net-Storage.Queues/12.7.0-alpha.20210126.1", + "(.NET Framework 4.8.4250.0; Microsoft Windows 10.0.19042 )" + ], + "x-ms-client-request-id": "384ec0f7-253a-0b24-117e-35e84bfa3933", + "x-ms-date": "Tue, 26 Jan 2021 21:29:10 GMT", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2018-11-09" + }, + "RequestBody": null, + "StatusCode": 201, + "ResponseHeaders": { + "Content-Length": "0", + "Date": "Tue, 26 Jan 2021 21:29:09 GMT", + "Server": [ + "Windows-Azure-Queue/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "x-ms-request-id": "31ad56f5-7003-002e-7b2a-f4d434000000", + "x-ms-version": "2018-11-09" + }, + "ResponseBody": [] + }, + { + "RequestUri": "https://kasoboltest.queue.core.windows.net/test-queue-bb1f8b18-605d-8e50-67f4-ee30c266a808/messages", + "RequestMethod": "POST", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "Content-Length": "71", + "Content-Type": "application/xml", + "traceparent": "00-55b5469be9e87e4f8e3958911651442e-39fec4ce22a65a4c-00", + "User-Agent": [ + "azsdk-net-Storage.Queues/12.7.0-alpha.20210126.1", + "(.NET Framework 4.8.4250.0; Microsoft Windows 10.0.19042 )" + ], + "x-ms-client-request-id": "023964dc-6f18-ffcd-b64d-c21586b28ab9", + "x-ms-date": "Tue, 26 Jan 2021 21:29:10 GMT", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2018-11-09" + }, + "RequestBody": "\uFEFF\u003CQueueMessage\u003E\u003CMessageText\u003Etest_content\u003C/MessageText\u003E\u003C/QueueMessage\u003E", + "StatusCode": 201, + "ResponseHeaders": { + "Content-Type": "application/xml", + "Date": "Tue, 26 Jan 2021 21:29:09 GMT", + "Server": [ + "Windows-Azure-Queue/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "Transfer-Encoding": "chunked", + "x-ms-request-id": "31ad5715-7003-002e-172a-f4d434000000", + "x-ms-version": "2018-11-09" + }, + "ResponseBody": "\uFEFF\u003C?xml version=\u00221.0\u0022 encoding=\u0022utf-8\u0022?\u003E\u003CQueueMessagesList\u003E\u003CQueueMessage\u003E\u003CMessageId\u003Ef73b850a-d4e9-41e0-988f-d5224628bc50\u003C/MessageId\u003E\u003CInsertionTime\u003ETue, 26 Jan 2021 21:29:10 GMT\u003C/InsertionTime\u003E\u003CExpirationTime\u003ETue, 02 Feb 2021 21:29:10 GMT\u003C/ExpirationTime\u003E\u003CPopReceipt\u003EAgAAAAMAAAAAAAAALSkUSSr01gE=\u003C/PopReceipt\u003E\u003CTimeNextVisible\u003ETue, 26 Jan 2021 21:29:10 GMT\u003C/TimeNextVisible\u003E\u003C/QueueMessage\u003E\u003C/QueueMessagesList\u003E" + }, + { + "RequestUri": "https://kasoboltest.queue.core.windows.net/test-queue-bb1f8b18-605d-8e50-67f4-ee30c266a808/messages", + "RequestMethod": "POST", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "Content-Length": "75", + "Content-Type": "application/xml", + "traceparent": "00-88434049c5bcf1489285ac51c2698273-ba2b2044bd15d44e-00", + "User-Agent": [ + "azsdk-net-Storage.Queues/12.7.0-alpha.20210126.1", + "(.NET Framework 4.8.4250.0; Microsoft Windows 10.0.19042 )" + ], + "x-ms-client-request-id": "e70c91e9-36c1-bb1b-851b-86a01fffd53e", + "x-ms-date": "Tue, 26 Jan 2021 21:29:10 GMT", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2018-11-09" + }, + "RequestBody": "\uFEFF\u003CQueueMessage\u003E\u003CMessageText\u003EdGVzdF9jb250ZW50\u003C/MessageText\u003E\u003C/QueueMessage\u003E", + "StatusCode": 201, + "ResponseHeaders": { + "Content-Type": "application/xml", + "Date": "Tue, 26 Jan 2021 21:29:09 GMT", + "Server": [ + "Windows-Azure-Queue/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "Transfer-Encoding": "chunked", + "x-ms-request-id": "85d1a784-3003-004f-412a-f490eb000000", + "x-ms-version": "2018-11-09" + }, + "ResponseBody": "\uFEFF\u003C?xml version=\u00221.0\u0022 encoding=\u0022utf-8\u0022?\u003E\u003CQueueMessagesList\u003E\u003CQueueMessage\u003E\u003CMessageId\u003E7ba418a2-ff21-4233-93e4-1bd947edf577\u003C/MessageId\u003E\u003CInsertionTime\u003ETue, 26 Jan 2021 21:29:10 GMT\u003C/InsertionTime\u003E\u003CExpirationTime\u003ETue, 02 Feb 2021 21:29:10 GMT\u003C/ExpirationTime\u003E\u003CPopReceipt\u003EAgAAAAMAAAAAAAAAWMYoSSr01gE=\u003C/PopReceipt\u003E\u003CTimeNextVisible\u003ETue, 26 Jan 2021 21:29:10 GMT\u003C/TimeNextVisible\u003E\u003C/QueueMessage\u003E\u003C/QueueMessagesList\u003E" + }, + { + "RequestUri": "https://kasoboltest.queue.core.windows.net/test-queue-bb1f8b18-605d-8e50-67f4-ee30c266a808/messages?numofmessages=10", + "RequestMethod": "GET", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "traceparent": "00-c891cfc5ad4b7b418af3a8a2a05c4d20-057e932f2b253a47-00", + "User-Agent": [ + "azsdk-net-Storage.Queues/12.7.0-alpha.20210126.1", + "(.NET Framework 4.8.4250.0; Microsoft Windows 10.0.19042 )" + ], + "x-ms-client-request-id": "f52cebd7-a3a5-fef8-7c2e-218c55f9f5ac", + "x-ms-date": "Tue, 26 Jan 2021 21:29:10 GMT", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2018-11-09" + }, + "RequestBody": null, + "StatusCode": 200, + "ResponseHeaders": { + "Cache-Control": "no-cache", + "Content-Type": "application/xml", + "Date": "Tue, 26 Jan 2021 21:29:10 GMT", + "Server": [ + "Windows-Azure-Queue/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "Transfer-Encoding": "chunked", + "Vary": "Origin", + "x-ms-request-id": "85d1a78e-3003-004f-492a-f490eb000000", + "x-ms-version": "2018-11-09" + }, + "ResponseBody": "\uFEFF\u003C?xml version=\u00221.0\u0022 encoding=\u0022utf-8\u0022?\u003E\u003CQueueMessagesList\u003E\u003CQueueMessage\u003E\u003CMessageId\u003Ef73b850a-d4e9-41e0-988f-d5224628bc50\u003C/MessageId\u003E\u003CInsertionTime\u003ETue, 26 Jan 2021 21:29:10 GMT\u003C/InsertionTime\u003E\u003CExpirationTime\u003ETue, 02 Feb 2021 21:29:10 GMT\u003C/ExpirationTime\u003E\u003CPopReceipt\u003EAgAAAAMAAAAAAAAANPoQWyr01gE=\u003C/PopReceipt\u003E\u003CTimeNextVisible\u003ETue, 26 Jan 2021 21:29:40 GMT\u003C/TimeNextVisible\u003E\u003CDequeueCount\u003E1\u003C/DequeueCount\u003E\u003CMessageText\u003Etest_content\u003C/MessageText\u003E\u003C/QueueMessage\u003E\u003CQueueMessage\u003E\u003CMessageId\u003E7ba418a2-ff21-4233-93e4-1bd947edf577\u003C/MessageId\u003E\u003CInsertionTime\u003ETue, 26 Jan 2021 21:29:10 GMT\u003C/InsertionTime\u003E\u003CExpirationTime\u003ETue, 02 Feb 2021 21:29:10 GMT\u003C/ExpirationTime\u003E\u003CPopReceipt\u003EAgAAAAMAAAAAAAAANPoQWyr01gE=\u003C/PopReceipt\u003E\u003CTimeNextVisible\u003ETue, 26 Jan 2021 21:29:40 GMT\u003C/TimeNextVisible\u003E\u003CDequeueCount\u003E1\u003C/DequeueCount\u003E\u003CMessageText\u003EdGVzdF9jb250ZW50\u003C/MessageText\u003E\u003C/QueueMessage\u003E\u003C/QueueMessagesList\u003E" + }, + { + "RequestUri": "https://kasoboltest.queue.core.windows.net/test-queue-bb1f8b18-605d-8e50-67f4-ee30c266a808", + "RequestMethod": "DELETE", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "traceparent": "00-0e97a2defb3e854ba9a9e3ccf75ac015-1a2b0803018adf41-00", + "User-Agent": [ + "azsdk-net-Storage.Queues/12.7.0-alpha.20210126.1", + "(.NET Framework 4.8.4250.0; Microsoft Windows 10.0.19042 )" + ], + "x-ms-client-request-id": "34c90439-dfd2-1b98-56bd-8123cd6fabd0", + "x-ms-date": "Tue, 26 Jan 2021 21:29:10 GMT", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2018-11-09" + }, + "RequestBody": null, + "StatusCode": 204, + "ResponseHeaders": { + "Content-Length": "0", + "Date": "Tue, 26 Jan 2021 21:29:09 GMT", + "Server": [ + "Windows-Azure-Queue/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "x-ms-request-id": "31ad57bb-7003-002e-3c2a-f4d434000000", + "x-ms-version": "2018-11-09" + }, + "ResponseBody": [] + } + ], + "Variables": { + "RandomSeed": "2008412009", + "Storage_TestConfigDefault": "ProductionTenant\nkasoboltest\nU2FuaXRpemVk\nhttps://kasoboltest.blob.core.windows.net\nhttps://kasoboltest.file.core.windows.net\nhttps://kasoboltest.queue.core.windows.net\nhttps://kasoboltest.table.core.windows.net\n\n\n\n\nhttps://kasoboltest-secondary.blob.core.windows.net\nhttps://kasoboltest-secondary.file.core.windows.net\nhttps://kasoboltest-secondary.queue.core.windows.net\nhttps://kasoboltest-secondary.table.core.windows.net\n\nSanitized\n\n\nCloud\nBlobEndpoint=https://kasoboltest.blob.core.windows.net/;QueueEndpoint=https://kasoboltest.queue.core.windows.net/;FileEndpoint=https://kasoboltest.file.core.windows.net/;BlobSecondaryEndpoint=https://kasoboltest-secondary.blob.core.windows.net/;QueueSecondaryEndpoint=https://kasoboltest-secondary.queue.core.windows.net/;FileSecondaryEndpoint=https://kasoboltest-secondary.file.core.windows.net/;AccountName=kasoboltest;AccountKey=Kg==;\nencryptionScope" + } +} \ No newline at end of file diff --git a/sdk/storage/Azure.Storage.Queues/tests/SessionRecords/QueueClientTests/TakesSnapshotOfMessageDecodingFailedHandlersAtConstruction.json b/sdk/storage/Azure.Storage.Queues/tests/SessionRecords/QueueClientTests/TakesSnapshotOfMessageDecodingFailedHandlersAtConstruction.json new file mode 100644 index 0000000000000..c0c3495092145 --- /dev/null +++ b/sdk/storage/Azure.Storage.Queues/tests/SessionRecords/QueueClientTests/TakesSnapshotOfMessageDecodingFailedHandlersAtConstruction.json @@ -0,0 +1,167 @@ +{ + "Entries": [ + { + "RequestUri": "https://kasoboltest.queue.core.windows.net/test-queue-2f54b828-ad62-0c6c-49f8-153580026307", + "RequestMethod": "PUT", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "traceparent": "00-473979af0a673846ba0c000e92addff6-fe04230fdc6bf04e-00", + "User-Agent": [ + "azsdk-net-Storage.Queues/12.7.0-alpha.20210129.1", + "(.NET Framework 4.8.4250.0; Microsoft Windows 10.0.19042 )" + ], + "x-ms-client-request-id": "bcd7dfc7-a1c3-34dd-ddca-2ea9ad339ca5", + "x-ms-date": "Fri, 29 Jan 2021 20:36:39 GMT", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2018-11-09" + }, + "RequestBody": null, + "StatusCode": 201, + "ResponseHeaders": { + "Content-Length": "0", + "Date": "Fri, 29 Jan 2021 20:36:39 GMT", + "Server": [ + "Windows-Azure-Queue/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "x-ms-request-id": "049887f0-f003-003f-647e-f6e32f000000", + "x-ms-version": "2018-11-09" + }, + "ResponseBody": [] + }, + { + "RequestUri": "https://kasoboltest.queue.core.windows.net/test-queue-2f54b828-ad62-0c6c-49f8-153580026307/messages", + "RequestMethod": "POST", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "Content-Length": "71", + "Content-Type": "application/xml", + "traceparent": "00-9dd34137f98c5b47baace5ff8197e3cd-a76a3012c5bb6d40-00", + "User-Agent": [ + "azsdk-net-Storage.Queues/12.7.0-alpha.20210129.1", + "(.NET Framework 4.8.4250.0; Microsoft Windows 10.0.19042 )" + ], + "x-ms-client-request-id": "a06edfa1-a72b-5744-37ff-43d035092a71", + "x-ms-date": "Fri, 29 Jan 2021 20:36:40 GMT", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2018-11-09" + }, + "RequestBody": "\uFEFF\u003CQueueMessage\u003E\u003CMessageText\u003Etest_content\u003C/MessageText\u003E\u003C/QueueMessage\u003E", + "StatusCode": 201, + "ResponseHeaders": { + "Content-Type": "application/xml", + "Date": "Fri, 29 Jan 2021 20:36:39 GMT", + "Server": [ + "Windows-Azure-Queue/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "Transfer-Encoding": "chunked", + "x-ms-request-id": "0498880f-f003-003f-7b7e-f6e32f000000", + "x-ms-version": "2018-11-09" + }, + "ResponseBody": "\uFEFF\u003C?xml version=\u00221.0\u0022 encoding=\u0022utf-8\u0022?\u003E\u003CQueueMessagesList\u003E\u003CQueueMessage\u003E\u003CMessageId\u003Ef4690291-8f13-4c53-ae0b-1a7105c15e2a\u003C/MessageId\u003E\u003CInsertionTime\u003EFri, 29 Jan 2021 20:36:39 GMT\u003C/InsertionTime\u003E\u003CExpirationTime\u003EFri, 05 Feb 2021 20:36:39 GMT\u003C/ExpirationTime\u003E\u003CPopReceipt\u003EAgAAAAMAAAAAAAAAhqZQcn721gE=\u003C/PopReceipt\u003E\u003CTimeNextVisible\u003EFri, 29 Jan 2021 20:36:39 GMT\u003C/TimeNextVisible\u003E\u003C/QueueMessage\u003E\u003C/QueueMessagesList\u003E" + }, + { + "RequestUri": "https://kasoboltest.queue.core.windows.net/test-queue-2f54b828-ad62-0c6c-49f8-153580026307/messages", + "RequestMethod": "POST", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "Content-Length": "75", + "Content-Type": "application/xml", + "traceparent": "00-0cf3491dee0ceb48a2e384e094a148dc-284f7325630d5544-00", + "User-Agent": [ + "azsdk-net-Storage.Queues/12.7.0-alpha.20210129.1", + "(.NET Framework 4.8.4250.0; Microsoft Windows 10.0.19042 )" + ], + "x-ms-client-request-id": "cd07fa7e-fcc5-ab7a-71e4-080b553b8ffb", + "x-ms-date": "Fri, 29 Jan 2021 20:36:40 GMT", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2018-11-09" + }, + "RequestBody": "\uFEFF\u003CQueueMessage\u003E\u003CMessageText\u003EdGVzdF9jb250ZW50\u003C/MessageText\u003E\u003C/QueueMessage\u003E", + "StatusCode": 201, + "ResponseHeaders": { + "Content-Type": "application/xml", + "Date": "Fri, 29 Jan 2021 20:36:39 GMT", + "Server": [ + "Windows-Azure-Queue/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "Transfer-Encoding": "chunked", + "x-ms-request-id": "4e421036-2003-0050-177e-f64bfb000000", + "x-ms-version": "2018-11-09" + }, + "ResponseBody": "\uFEFF\u003C?xml version=\u00221.0\u0022 encoding=\u0022utf-8\u0022?\u003E\u003CQueueMessagesList\u003E\u003CQueueMessage\u003E\u003CMessageId\u003E00581a3b-17e9-4deb-bef7-be0bac9282b0\u003C/MessageId\u003E\u003CInsertionTime\u003EFri, 29 Jan 2021 20:36:39 GMT\u003C/InsertionTime\u003E\u003CExpirationTime\u003EFri, 05 Feb 2021 20:36:39 GMT\u003C/ExpirationTime\u003E\u003CPopReceipt\u003EAgAAAAMAAAAAAAAAXbFpcn721gE=\u003C/PopReceipt\u003E\u003CTimeNextVisible\u003EFri, 29 Jan 2021 20:36:39 GMT\u003C/TimeNextVisible\u003E\u003C/QueueMessage\u003E\u003C/QueueMessagesList\u003E" + }, + { + "RequestUri": "https://kasoboltest.queue.core.windows.net/test-queue-2f54b828-ad62-0c6c-49f8-153580026307/messages?numofmessages=10", + "RequestMethod": "GET", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "traceparent": "00-02b4d585fc94cc47bd078b9521bd27a9-b782de661de2f449-00", + "User-Agent": [ + "azsdk-net-Storage.Queues/12.7.0-alpha.20210129.1", + "(.NET Framework 4.8.4250.0; Microsoft Windows 10.0.19042 )" + ], + "x-ms-client-request-id": "3a52978d-5d01-ffac-cb3e-97f40e1fd798", + "x-ms-date": "Fri, 29 Jan 2021 20:36:40 GMT", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2018-11-09" + }, + "RequestBody": null, + "StatusCode": 200, + "ResponseHeaders": { + "Cache-Control": "no-cache", + "Content-Type": "application/xml", + "Date": "Fri, 29 Jan 2021 20:36:39 GMT", + "Server": [ + "Windows-Azure-Queue/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "Transfer-Encoding": "chunked", + "Vary": "Origin", + "x-ms-request-id": "4e42105a-2003-0050-337e-f64bfb000000", + "x-ms-version": "2018-11-09" + }, + "ResponseBody": "\uFEFF\u003C?xml version=\u00221.0\u0022 encoding=\u0022utf-8\u0022?\u003E\u003CQueueMessagesList\u003E\u003CQueueMessage\u003E\u003CMessageId\u003Ef4690291-8f13-4c53-ae0b-1a7105c15e2a\u003C/MessageId\u003E\u003CInsertionTime\u003EFri, 29 Jan 2021 20:36:39 GMT\u003C/InsertionTime\u003E\u003CExpirationTime\u003EFri, 05 Feb 2021 20:36:39 GMT\u003C/ExpirationTime\u003E\u003CPopReceipt\u003EAgAAAAMAAAAAAAAAE5dRhH721gE=\u003C/PopReceipt\u003E\u003CTimeNextVisible\u003EFri, 29 Jan 2021 20:37:10 GMT\u003C/TimeNextVisible\u003E\u003CDequeueCount\u003E1\u003C/DequeueCount\u003E\u003CMessageText\u003Etest_content\u003C/MessageText\u003E\u003C/QueueMessage\u003E\u003CQueueMessage\u003E\u003CMessageId\u003E00581a3b-17e9-4deb-bef7-be0bac9282b0\u003C/MessageId\u003E\u003CInsertionTime\u003EFri, 29 Jan 2021 20:36:39 GMT\u003C/InsertionTime\u003E\u003CExpirationTime\u003EFri, 05 Feb 2021 20:36:39 GMT\u003C/ExpirationTime\u003E\u003CPopReceipt\u003EAgAAAAMAAAAAAAAAE5dRhH721gE=\u003C/PopReceipt\u003E\u003CTimeNextVisible\u003EFri, 29 Jan 2021 20:37:10 GMT\u003C/TimeNextVisible\u003E\u003CDequeueCount\u003E1\u003C/DequeueCount\u003E\u003CMessageText\u003EdGVzdF9jb250ZW50\u003C/MessageText\u003E\u003C/QueueMessage\u003E\u003C/QueueMessagesList\u003E" + }, + { + "RequestUri": "https://kasoboltest.queue.core.windows.net/test-queue-2f54b828-ad62-0c6c-49f8-153580026307", + "RequestMethod": "DELETE", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "traceparent": "00-79fc5058b044504bbecaf32b7ddcf92c-100ce876d4b5d34a-00", + "User-Agent": [ + "azsdk-net-Storage.Queues/12.7.0-alpha.20210129.1", + "(.NET Framework 4.8.4250.0; Microsoft Windows 10.0.19042 )" + ], + "x-ms-client-request-id": "be7de5a3-54e8-f4f9-6dcd-b109ac667b95", + "x-ms-date": "Fri, 29 Jan 2021 20:36:40 GMT", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2018-11-09" + }, + "RequestBody": null, + "StatusCode": 204, + "ResponseHeaders": { + "Content-Length": "0", + "Date": "Fri, 29 Jan 2021 20:36:40 GMT", + "Server": [ + "Windows-Azure-Queue/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "x-ms-request-id": "04988840-f003-003f-267e-f6e32f000000", + "x-ms-version": "2018-11-09" + }, + "ResponseBody": [] + } + ], + "Variables": { + "RandomSeed": "1233735287", + "Storage_TestConfigDefault": "ProductionTenant\nkasoboltest\nU2FuaXRpemVk\nhttps://kasoboltest.blob.core.windows.net\nhttps://kasoboltest.file.core.windows.net\nhttps://kasoboltest.queue.core.windows.net\nhttps://kasoboltest.table.core.windows.net\n\n\n\n\nhttps://kasoboltest-secondary.blob.core.windows.net\nhttps://kasoboltest-secondary.file.core.windows.net\nhttps://kasoboltest-secondary.queue.core.windows.net\nhttps://kasoboltest-secondary.table.core.windows.net\n\nSanitized\n\n\nCloud\nBlobEndpoint=https://kasoboltest.blob.core.windows.net/;QueueEndpoint=https://kasoboltest.queue.core.windows.net/;FileEndpoint=https://kasoboltest.file.core.windows.net/;BlobSecondaryEndpoint=https://kasoboltest-secondary.blob.core.windows.net/;QueueSecondaryEndpoint=https://kasoboltest-secondary.queue.core.windows.net/;FileSecondaryEndpoint=https://kasoboltest-secondary.file.core.windows.net/;AccountName=kasoboltest;AccountKey=Kg==;\nencryptionScope" + } +} \ No newline at end of file diff --git a/sdk/storage/Azure.Storage.Queues/tests/SessionRecords/QueueClientTests/TakesSnapshotOfMessageDecodingFailedHandlersAtConstructionAsync.json b/sdk/storage/Azure.Storage.Queues/tests/SessionRecords/QueueClientTests/TakesSnapshotOfMessageDecodingFailedHandlersAtConstructionAsync.json new file mode 100644 index 0000000000000..bb3fecb1903ed --- /dev/null +++ b/sdk/storage/Azure.Storage.Queues/tests/SessionRecords/QueueClientTests/TakesSnapshotOfMessageDecodingFailedHandlersAtConstructionAsync.json @@ -0,0 +1,167 @@ +{ + "Entries": [ + { + "RequestUri": "https://kasoboltest.queue.core.windows.net/test-queue-46e4fbf5-03ad-b8dc-19ca-63112a6dd760", + "RequestMethod": "PUT", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "traceparent": "00-935807c46a291d458132b24ffa0da88a-fd523bb81478e349-00", + "User-Agent": [ + "azsdk-net-Storage.Queues/12.7.0-alpha.20210129.1", + "(.NET Framework 4.8.4250.0; Microsoft Windows 10.0.19042 )" + ], + "x-ms-client-request-id": "38eaaa4f-0388-cc65-7e37-89129954755e", + "x-ms-date": "Fri, 29 Jan 2021 20:36:40 GMT", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2018-11-09" + }, + "RequestBody": null, + "StatusCode": 201, + "ResponseHeaders": { + "Content-Length": "0", + "Date": "Fri, 29 Jan 2021 20:36:40 GMT", + "Server": [ + "Windows-Azure-Queue/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "x-ms-request-id": "4ff536e7-8003-003b-077e-f616ad000000", + "x-ms-version": "2018-11-09" + }, + "ResponseBody": [] + }, + { + "RequestUri": "https://kasoboltest.queue.core.windows.net/test-queue-46e4fbf5-03ad-b8dc-19ca-63112a6dd760/messages", + "RequestMethod": "POST", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "Content-Length": "71", + "Content-Type": "application/xml", + "traceparent": "00-1cfa83ffad1f574eacbb7baec0fc4910-2f97c985eef8f34d-00", + "User-Agent": [ + "azsdk-net-Storage.Queues/12.7.0-alpha.20210129.1", + "(.NET Framework 4.8.4250.0; Microsoft Windows 10.0.19042 )" + ], + "x-ms-client-request-id": "80c2b8b1-9e83-afd7-7eb7-2218e5eca56e", + "x-ms-date": "Fri, 29 Jan 2021 20:36:40 GMT", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2018-11-09" + }, + "RequestBody": "\uFEFF\u003CQueueMessage\u003E\u003CMessageText\u003Etest_content\u003C/MessageText\u003E\u003C/QueueMessage\u003E", + "StatusCode": 201, + "ResponseHeaders": { + "Content-Type": "application/xml", + "Date": "Fri, 29 Jan 2021 20:36:40 GMT", + "Server": [ + "Windows-Azure-Queue/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "Transfer-Encoding": "chunked", + "x-ms-request-id": "4ff536eb-8003-003b-097e-f616ad000000", + "x-ms-version": "2018-11-09" + }, + "ResponseBody": "\uFEFF\u003C?xml version=\u00221.0\u0022 encoding=\u0022utf-8\u0022?\u003E\u003CQueueMessagesList\u003E\u003CQueueMessage\u003E\u003CMessageId\u003Edb63f32a-52c3-4bf7-a8ce-9cd9cc78f16e\u003C/MessageId\u003E\u003CInsertionTime\u003EFri, 29 Jan 2021 20:36:40 GMT\u003C/InsertionTime\u003E\u003CExpirationTime\u003EFri, 05 Feb 2021 20:36:40 GMT\u003C/ExpirationTime\u003E\u003CPopReceipt\u003EAgAAAAMAAAAAAAAAmNWycn721gE=\u003C/PopReceipt\u003E\u003CTimeNextVisible\u003EFri, 29 Jan 2021 20:36:40 GMT\u003C/TimeNextVisible\u003E\u003C/QueueMessage\u003E\u003C/QueueMessagesList\u003E" + }, + { + "RequestUri": "https://kasoboltest.queue.core.windows.net/test-queue-46e4fbf5-03ad-b8dc-19ca-63112a6dd760/messages", + "RequestMethod": "POST", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "Content-Length": "75", + "Content-Type": "application/xml", + "traceparent": "00-180db3da1229534c8faea39f6e077c09-7e3785fe418f8d42-00", + "User-Agent": [ + "azsdk-net-Storage.Queues/12.7.0-alpha.20210129.1", + "(.NET Framework 4.8.4250.0; Microsoft Windows 10.0.19042 )" + ], + "x-ms-client-request-id": "e1614279-f591-7bdb-6833-2745f5bca00f", + "x-ms-date": "Fri, 29 Jan 2021 20:36:40 GMT", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2018-11-09" + }, + "RequestBody": "\uFEFF\u003CQueueMessage\u003E\u003CMessageText\u003EdGVzdF9jb250ZW50\u003C/MessageText\u003E\u003C/QueueMessage\u003E", + "StatusCode": 201, + "ResponseHeaders": { + "Content-Type": "application/xml", + "Date": "Fri, 29 Jan 2021 20:36:40 GMT", + "Server": [ + "Windows-Azure-Queue/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "Transfer-Encoding": "chunked", + "x-ms-request-id": "5cb52823-b003-0011-0f7e-f663e8000000", + "x-ms-version": "2018-11-09" + }, + "ResponseBody": "\uFEFF\u003C?xml version=\u00221.0\u0022 encoding=\u0022utf-8\u0022?\u003E\u003CQueueMessagesList\u003E\u003CQueueMessage\u003E\u003CMessageId\u003Eb4305927-95c0-46f0-b913-aa07978a6bc8\u003C/MessageId\u003E\u003CInsertionTime\u003EFri, 29 Jan 2021 20:36:40 GMT\u003C/InsertionTime\u003E\u003CExpirationTime\u003EFri, 05 Feb 2021 20:36:40 GMT\u003C/ExpirationTime\u003E\u003CPopReceipt\u003EAgAAAAMAAAAAAAAAk9LIcn721gE=\u003C/PopReceipt\u003E\u003CTimeNextVisible\u003EFri, 29 Jan 2021 20:36:40 GMT\u003C/TimeNextVisible\u003E\u003C/QueueMessage\u003E\u003C/QueueMessagesList\u003E" + }, + { + "RequestUri": "https://kasoboltest.queue.core.windows.net/test-queue-46e4fbf5-03ad-b8dc-19ca-63112a6dd760/messages?numofmessages=10", + "RequestMethod": "GET", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "traceparent": "00-91e301ad3e30c64786bbf57a056003e0-b64f4eee03b8164a-00", + "User-Agent": [ + "azsdk-net-Storage.Queues/12.7.0-alpha.20210129.1", + "(.NET Framework 4.8.4250.0; Microsoft Windows 10.0.19042 )" + ], + "x-ms-client-request-id": "a29f4beb-c48b-2cdc-c79f-51bd4b694017", + "x-ms-date": "Fri, 29 Jan 2021 20:36:40 GMT", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2018-11-09" + }, + "RequestBody": null, + "StatusCode": 200, + "ResponseHeaders": { + "Cache-Control": "no-cache", + "Content-Type": "application/xml", + "Date": "Fri, 29 Jan 2021 20:36:40 GMT", + "Server": [ + "Windows-Azure-Queue/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "Transfer-Encoding": "chunked", + "Vary": "Origin", + "x-ms-request-id": "5cb52831-b003-0011-187e-f663e8000000", + "x-ms-version": "2018-11-09" + }, + "ResponseBody": "\uFEFF\u003C?xml version=\u00221.0\u0022 encoding=\u0022utf-8\u0022?\u003E\u003CQueueMessagesList\u003E\u003CQueueMessage\u003E\u003CMessageId\u003Edb63f32a-52c3-4bf7-a8ce-9cd9cc78f16e\u003C/MessageId\u003E\u003CInsertionTime\u003EFri, 29 Jan 2021 20:36:40 GMT\u003C/InsertionTime\u003E\u003CExpirationTime\u003EFri, 05 Feb 2021 20:36:40 GMT\u003C/ExpirationTime\u003E\u003CPopReceipt\u003EAgAAAAMAAAAAAAAAH7yuhH721gE=\u003C/PopReceipt\u003E\u003CTimeNextVisible\u003EFri, 29 Jan 2021 20:37:10 GMT\u003C/TimeNextVisible\u003E\u003CDequeueCount\u003E1\u003C/DequeueCount\u003E\u003CMessageText\u003Etest_content\u003C/MessageText\u003E\u003C/QueueMessage\u003E\u003CQueueMessage\u003E\u003CMessageId\u003Eb4305927-95c0-46f0-b913-aa07978a6bc8\u003C/MessageId\u003E\u003CInsertionTime\u003EFri, 29 Jan 2021 20:36:40 GMT\u003C/InsertionTime\u003E\u003CExpirationTime\u003EFri, 05 Feb 2021 20:36:40 GMT\u003C/ExpirationTime\u003E\u003CPopReceipt\u003EAgAAAAMAAAAAAAAAH7yuhH721gE=\u003C/PopReceipt\u003E\u003CTimeNextVisible\u003EFri, 29 Jan 2021 20:37:10 GMT\u003C/TimeNextVisible\u003E\u003CDequeueCount\u003E1\u003C/DequeueCount\u003E\u003CMessageText\u003EdGVzdF9jb250ZW50\u003C/MessageText\u003E\u003C/QueueMessage\u003E\u003C/QueueMessagesList\u003E" + }, + { + "RequestUri": "https://kasoboltest.queue.core.windows.net/test-queue-46e4fbf5-03ad-b8dc-19ca-63112a6dd760", + "RequestMethod": "DELETE", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "traceparent": "00-bec3b640b7f08e449134cb66472e74a3-d5728527c9941245-00", + "User-Agent": [ + "azsdk-net-Storage.Queues/12.7.0-alpha.20210129.1", + "(.NET Framework 4.8.4250.0; Microsoft Windows 10.0.19042 )" + ], + "x-ms-client-request-id": "a959f903-fe1d-3c84-38c6-95ecb299f29f", + "x-ms-date": "Fri, 29 Jan 2021 20:36:40 GMT", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2018-11-09" + }, + "RequestBody": null, + "StatusCode": 204, + "ResponseHeaders": { + "Content-Length": "0", + "Date": "Fri, 29 Jan 2021 20:36:40 GMT", + "Server": [ + "Windows-Azure-Queue/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "x-ms-request-id": "4ff536f1-8003-003b-0d7e-f616ad000000", + "x-ms-version": "2018-11-09" + }, + "ResponseBody": [] + } + ], + "Variables": { + "RandomSeed": "1369471692", + "Storage_TestConfigDefault": "ProductionTenant\nkasoboltest\nU2FuaXRpemVk\nhttps://kasoboltest.blob.core.windows.net\nhttps://kasoboltest.file.core.windows.net\nhttps://kasoboltest.queue.core.windows.net\nhttps://kasoboltest.table.core.windows.net\n\n\n\n\nhttps://kasoboltest-secondary.blob.core.windows.net\nhttps://kasoboltest-secondary.file.core.windows.net\nhttps://kasoboltest-secondary.queue.core.windows.net\nhttps://kasoboltest-secondary.table.core.windows.net\n\nSanitized\n\n\nCloud\nBlobEndpoint=https://kasoboltest.blob.core.windows.net/;QueueEndpoint=https://kasoboltest.queue.core.windows.net/;FileEndpoint=https://kasoboltest.file.core.windows.net/;BlobSecondaryEndpoint=https://kasoboltest-secondary.blob.core.windows.net/;QueueSecondaryEndpoint=https://kasoboltest-secondary.queue.core.windows.net/;FileSecondaryEndpoint=https://kasoboltest-secondary.file.core.windows.net/;AccountName=kasoboltest;AccountKey=Kg==;\nencryptionScope" + } +} \ No newline at end of file diff --git a/sdk/storage/Microsoft.Azure.WebJobs.Extensions.Storage.Scenario.Tests/tests/Microsoft.Azure.WebJobs.Extensions.Storage.Scenario.Tests.csproj b/sdk/storage/Microsoft.Azure.WebJobs.Extensions.Storage.Scenario.Tests/tests/Microsoft.Azure.WebJobs.Extensions.Storage.Scenario.Tests.csproj index 4c66a2815acd3..ddff00e6ca1eb 100644 --- a/sdk/storage/Microsoft.Azure.WebJobs.Extensions.Storage.Scenario.Tests/tests/Microsoft.Azure.WebJobs.Extensions.Storage.Scenario.Tests.csproj +++ b/sdk/storage/Microsoft.Azure.WebJobs.Extensions.Storage.Scenario.Tests/tests/Microsoft.Azure.WebJobs.Extensions.Storage.Scenario.Tests.csproj @@ -13,7 +13,6 @@ -