diff --git a/sdk/maps/Azure.Maps.Routing/assets.json b/sdk/maps/Azure.Maps.Routing/assets.json
index 81dbcd919818..5fadd1fbab30 100644
--- a/sdk/maps/Azure.Maps.Routing/assets.json
+++ b/sdk/maps/Azure.Maps.Routing/assets.json
@@ -2,5 +2,5 @@
"AssetsRepo": "Azure/azure-sdk-assets",
"AssetsRepoPrefixPath": "net",
"TagPrefix": "net/maps/Azure.Maps.Routing",
- "Tag": "net/maps/Azure.Maps.Routing_54064ae0c1"
+ "Tag": "net/maps/Azure.Maps.Routing_0755b0a67d"
}
diff --git a/sdk/maps/Azure.Maps.Routing/src/Generated/Models/RouteMatrix.Serialization.cs b/sdk/maps/Azure.Maps.Routing/src/Generated/Models/RouteMatrix.Serialization.cs
index b4a0ee8b7ddc..a2ee0b940aa0 100644
--- a/sdk/maps/Azure.Maps.Routing/src/Generated/Models/RouteMatrix.Serialization.cs
+++ b/sdk/maps/Azure.Maps.Routing/src/Generated/Models/RouteMatrix.Serialization.cs
@@ -11,44 +11,5 @@ namespace Azure.Maps.Routing.Models
{
public partial class RouteMatrix
{
- internal static RouteMatrix DeserializeRouteMatrix(JsonElement element)
- {
- if (element.ValueKind == JsonValueKind.Null)
- {
- return null;
- }
- int? statusCode = default;
- RouteMatrixResultResponse response = default;
- foreach (var property in element.EnumerateObject())
- {
- if (property.NameEquals("statusCode"u8))
- {
- if (property.Value.ValueKind == JsonValueKind.Null)
- {
- continue;
- }
- statusCode = property.Value.GetInt32();
- continue;
- }
- if (property.NameEquals("response"u8))
- {
- if (property.Value.ValueKind == JsonValueKind.Null)
- {
- continue;
- }
- response = RouteMatrixResultResponse.DeserializeRouteMatrixResultResponse(property.Value);
- continue;
- }
- }
- return new RouteMatrix(statusCode, response);
- }
-
- /// Deserializes the model from a raw response.
- /// The response to deserialize the model from.
- internal static RouteMatrix FromResponse(Response response)
- {
- using var document = JsonDocument.Parse(response.Content);
- return DeserializeRouteMatrix(document.RootElement);
- }
}
}
diff --git a/sdk/maps/Azure.Maps.Routing/src/Models/Operation/GetRouteMatrixOperation.cs b/sdk/maps/Azure.Maps.Routing/src/Models/Operation/GetRouteMatrixOperation.cs
index 5fb4968e24d1..a6f11c876596 100644
--- a/sdk/maps/Azure.Maps.Routing/src/Models/Operation/GetRouteMatrixOperation.cs
+++ b/sdk/maps/Azure.Maps.Routing/src/Models/Operation/GetRouteMatrixOperation.cs
@@ -110,8 +110,7 @@ private async ValueTask> WaitForCompletionAsync(bool
_id = paths[paths.Length - 1];
}
- RouteMatrixResult result = null;
- return Response.FromValue(result, response);
+ return await WaitForCompletionAsync(async, cancellationToken).ConfigureAwait(false);
}
///
diff --git a/sdk/maps/Azure.Maps.Routing/src/Models/RouteMatrix.Serialization.cs b/sdk/maps/Azure.Maps.Routing/src/Models/RouteMatrix.Serialization.cs
new file mode 100644
index 000000000000..a6aa452de3c0
--- /dev/null
+++ b/sdk/maps/Azure.Maps.Routing/src/Models/RouteMatrix.Serialization.cs
@@ -0,0 +1,56 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+
+#nullable disable
+
+using System.Text.Json;
+
+namespace Azure.Maps.Routing.Models
+{
+ public partial class RouteMatrix
+ {
+ internal static RouteMatrix DeserializeRouteMatrix(JsonElement element)
+ {
+ if (element.ValueKind == JsonValueKind.Null)
+ {
+ return null;
+ }
+ int? statusCode = default;
+ RouteMatrixResultResponse response = default;
+ foreach (var property in element.EnumerateObject())
+ {
+ if (property.NameEquals("statusCode"u8))
+ {
+ if (property.Value.ValueKind == JsonValueKind.Null)
+ {
+ continue;
+ }
+ statusCode = property.Value.GetInt32();
+ continue;
+ }
+ if (property.NameEquals("response"u8))
+ {
+ if (property.Value.ValueKind == JsonValueKind.Null)
+ {
+ continue;
+ }
+ if (statusCode == 200) {
+ response = RouteMatrixResultResponse.DeserializeRouteMatrixResultResponse(property.Value);
+ } else {
+ response = new RouteMatrixResultResponse(null);
+ }
+ continue;
+ }
+ }
+ return new RouteMatrix(statusCode, response);
+ }
+
+ /// Deserializes the model from a raw response.
+ /// The response to deserialize the model from.
+ internal static RouteMatrix FromResponse(Response response)
+ {
+ using var document = JsonDocument.Parse(response.Content);
+ return DeserializeRouteMatrix(document.RootElement);
+ }
+ }
+}
diff --git a/sdk/maps/Azure.Maps.Routing/tests/RouteMatrixTests.cs b/sdk/maps/Azure.Maps.Routing/tests/RouteMatrixTests.cs
index 89946952da5e..bc3c96e39090 100644
--- a/sdk/maps/Azure.Maps.Routing/tests/RouteMatrixTests.cs
+++ b/sdk/maps/Azure.Maps.Routing/tests/RouteMatrixTests.cs
@@ -1,6 +1,7 @@
// Copyright (c) Microsoft Corporation. All rights reserved.
// Licensed under the MIT License.
+using System;
using System.Collections.Generic;
using System.Threading;
using System.Threading.Tasks;
@@ -27,15 +28,19 @@ public async Task CanSyncRequestRouteMatrix()
new GeoPosition(123.751, 45.9375),
new GeoPosition(123.791, 45.96875)
},
- Destinations = new List() { new GeoPosition(123.767, 45.90625) },
+ Destinations = new List()
+ {
+ new GeoPosition(1, 13.5471),
+ new GeoPosition(123.767, 45.90625),
+ },
};
var result = await client.GetImmediateRouteMatrixAsync(routeMatrixQuery);
Assert.AreEqual("0.0.1", result.Value.FormatVersion);
Assert.AreEqual(2, result.Value.Matrix.Count);
- Assert.AreEqual(1, result.Value.Matrix[0].Count);
+ Assert.AreEqual(2, result.Value.Matrix[0].Count);
Assert.AreEqual(2, result.Value.Summary.SuccessfulRoutes);
- Assert.AreEqual(2, result.Value.Summary.TotalRoutes);
+ Assert.AreEqual(4, result.Value.Summary.TotalRoutes);
}
[RecordedTest]