diff --git a/.config/dotnet-tools.json b/.config/dotnet-tools.json
index 3956f0ea31..c3de5a1b12 100644
--- a/.config/dotnet-tools.json
+++ b/.config/dotnet-tools.json
@@ -31,7 +31,7 @@
"rollForward": false
},
"microsoft.openapi.kiota": {
- "version": "1.23.0",
+ "version": "1.24.1",
"commands": [
"kiota"
],
diff --git a/package-versions.props b/package-versions.props
index 8e1d3aad30..a13e2c37eb 100644
--- a/package-versions.props
+++ b/package-versions.props
@@ -22,7 +22,7 @@
9.0.*
14.2.*
13.0.*
- 1.2.*
+ 2.0.*
7.*-*
9.0.*
17.12.*
diff --git a/test/OpenApiKiotaEndToEndTests/ModelStateValidation/GeneratedCode/Models/AttributesInCreateSocialMediaAccountRequest.cs b/test/OpenApiKiotaEndToEndTests/ModelStateValidation/GeneratedCode/Models/AttributesInCreateSocialMediaAccountRequest.cs
index 7d36b24c28..9ce0611f48 100644
--- a/test/OpenApiKiotaEndToEndTests/ModelStateValidation/GeneratedCode/Models/AttributesInCreateSocialMediaAccountRequest.cs
+++ b/test/OpenApiKiotaEndToEndTests/ModelStateValidation/GeneratedCode/Models/AttributesInCreateSocialMediaAccountRequest.cs
@@ -83,9 +83,9 @@ public string? NextRevalidation
}
/// The password property
- public string? Password
+ public byte[]? Password
{
- get { return BackingStore?.Get("password"); }
+ get { return BackingStore?.Get("password"); }
set { BackingStore?.Set("password", value); }
}
@@ -181,7 +181,7 @@ public virtual IDictionary> GetFieldDeserializers()
{ "firstName", n => { FirstName = n.GetStringValue(); } },
{ "lastName", n => { LastName = n.GetStringValue(); } },
{ "nextRevalidation", n => { NextRevalidation = n.GetStringValue(); } },
- { "password", n => { Password = n.GetStringValue(); } },
+ { "password", n => { Password = n.GetByteArrayValue(); } },
{ "phone", n => { Phone = n.GetStringValue(); } },
{ "planet", n => { Planet = n.GetStringValue(); } },
{ "profilePicture", n => { ProfilePicture = n.GetStringValue(); } },
@@ -209,7 +209,7 @@ public virtual void Serialize(ISerializationWriter writer)
writer.WriteStringValue("firstName", FirstName);
writer.WriteStringValue("lastName", LastName);
writer.WriteStringValue("nextRevalidation", NextRevalidation);
- writer.WriteStringValue("password", Password);
+ writer.WriteByteArrayValue("password", Password);
writer.WriteStringValue("phone", Phone);
writer.WriteStringValue("planet", Planet);
writer.WriteStringValue("profilePicture", ProfilePicture);
diff --git a/test/OpenApiKiotaEndToEndTests/ModelStateValidation/GeneratedCode/Models/AttributesInUpdateSocialMediaAccountRequest.cs b/test/OpenApiKiotaEndToEndTests/ModelStateValidation/GeneratedCode/Models/AttributesInUpdateSocialMediaAccountRequest.cs
index a9115cb007..76bd2d8888 100644
--- a/test/OpenApiKiotaEndToEndTests/ModelStateValidation/GeneratedCode/Models/AttributesInUpdateSocialMediaAccountRequest.cs
+++ b/test/OpenApiKiotaEndToEndTests/ModelStateValidation/GeneratedCode/Models/AttributesInUpdateSocialMediaAccountRequest.cs
@@ -83,9 +83,9 @@ public string? NextRevalidation
}
/// The password property
- public string? Password
+ public byte[]? Password
{
- get { return BackingStore?.Get("password"); }
+ get { return BackingStore?.Get("password"); }
set { BackingStore?.Set("password", value); }
}
@@ -181,7 +181,7 @@ public virtual IDictionary> GetFieldDeserializers()
{ "firstName", n => { FirstName = n.GetStringValue(); } },
{ "lastName", n => { LastName = n.GetStringValue(); } },
{ "nextRevalidation", n => { NextRevalidation = n.GetStringValue(); } },
- { "password", n => { Password = n.GetStringValue(); } },
+ { "password", n => { Password = n.GetByteArrayValue(); } },
{ "phone", n => { Phone = n.GetStringValue(); } },
{ "planet", n => { Planet = n.GetStringValue(); } },
{ "profilePicture", n => { ProfilePicture = n.GetStringValue(); } },
@@ -209,7 +209,7 @@ public virtual void Serialize(ISerializationWriter writer)
writer.WriteStringValue("firstName", FirstName);
writer.WriteStringValue("lastName", LastName);
writer.WriteStringValue("nextRevalidation", NextRevalidation);
- writer.WriteStringValue("password", Password);
+ writer.WriteByteArrayValue("password", Password);
writer.WriteStringValue("phone", Phone);
writer.WriteStringValue("planet", Planet);
writer.WriteStringValue("profilePicture", ProfilePicture);
diff --git a/test/OpenApiKiotaEndToEndTests/ModelStateValidation/GeneratedCode/Models/SocialMediaAccountAttributesInResponse.cs b/test/OpenApiKiotaEndToEndTests/ModelStateValidation/GeneratedCode/Models/SocialMediaAccountAttributesInResponse.cs
index 5871321052..230684eee2 100644
--- a/test/OpenApiKiotaEndToEndTests/ModelStateValidation/GeneratedCode/Models/SocialMediaAccountAttributesInResponse.cs
+++ b/test/OpenApiKiotaEndToEndTests/ModelStateValidation/GeneratedCode/Models/SocialMediaAccountAttributesInResponse.cs
@@ -83,9 +83,9 @@ public string? NextRevalidation
}
/// The password property
- public string? Password
+ public byte[]? Password
{
- get { return BackingStore?.Get("password"); }
+ get { return BackingStore?.Get("password"); }
set { BackingStore?.Set("password", value); }
}
@@ -181,7 +181,7 @@ public virtual IDictionary> GetFieldDeserializers()
{ "firstName", n => { FirstName = n.GetStringValue(); } },
{ "lastName", n => { LastName = n.GetStringValue(); } },
{ "nextRevalidation", n => { NextRevalidation = n.GetStringValue(); } },
- { "password", n => { Password = n.GetStringValue(); } },
+ { "password", n => { Password = n.GetByteArrayValue(); } },
{ "phone", n => { Phone = n.GetStringValue(); } },
{ "planet", n => { Planet = n.GetStringValue(); } },
{ "profilePicture", n => { ProfilePicture = n.GetStringValue(); } },
@@ -209,7 +209,7 @@ public virtual void Serialize(ISerializationWriter writer)
writer.WriteStringValue("firstName", FirstName);
writer.WriteStringValue("lastName", LastName);
writer.WriteStringValue("nextRevalidation", NextRevalidation);
- writer.WriteStringValue("password", Password);
+ writer.WriteByteArrayValue("password", Password);
writer.WriteStringValue("phone", Phone);
writer.WriteStringValue("planet", Planet);
writer.WriteStringValue("profilePicture", ProfilePicture);
diff --git a/test/OpenApiKiotaEndToEndTests/ModelStateValidation/ModelStateValidationTests.cs b/test/OpenApiKiotaEndToEndTests/ModelStateValidation/ModelStateValidationTests.cs
index 96e4edd89d..847d0ce971 100644
--- a/test/OpenApiKiotaEndToEndTests/ModelStateValidation/ModelStateValidationTests.cs
+++ b/test/OpenApiKiotaEndToEndTests/ModelStateValidation/ModelStateValidationTests.cs
@@ -233,7 +233,7 @@ public async Task Cannot_exceed_min_length_constraint()
{
LastName = newAccount.LastName,
// Using -3 instead of -1 to compensate for base64 padding.
- Password = Convert.ToBase64String(Enumerable.Repeat((byte)'X', SocialMediaAccount.MinPasswordChars - 3).ToArray())
+ Password = Enumerable.Repeat((byte)'X', SocialMediaAccount.MinPasswordChars - 3).ToArray()
}
}
};
@@ -271,7 +271,7 @@ public async Task Cannot_exceed_max_length_constraint()
Attributes = new AttributesInCreateSocialMediaAccountRequest
{
LastName = newAccount.LastName,
- Password = Convert.ToBase64String(Enumerable.Repeat((byte)'X', SocialMediaAccount.MaxPasswordChars + 1).ToArray())
+ Password = Enumerable.Repeat((byte)'X', SocialMediaAccount.MaxPasswordChars + 1).ToArray()
}
}
};
@@ -292,42 +292,6 @@ public async Task Cannot_exceed_max_length_constraint()
errorObject.Source.Pointer.Should().Be("/data/attributes/password");
}
- [Fact]
- public async Task Cannot_use_invalid_base64()
- {
- // Arrange
- SocialMediaAccount newAccount = _fakers.SocialMediaAccount.GenerateOne();
-
- using HttpClientRequestAdapter requestAdapter = _requestAdapterFactory.CreateAdapter(_testContext.Factory);
- ModelStateValidationClient apiClient = new(requestAdapter);
-
- var requestBody = new CreateSocialMediaAccountRequestDocument
- {
- Data = new DataInCreateSocialMediaAccountRequest
- {
- Type = SocialMediaAccountResourceType.SocialMediaAccounts,
- Attributes = new AttributesInCreateSocialMediaAccountRequest
- {
- LastName = newAccount.LastName,
- Password = "not-a-valid-base64-string"
- }
- }
- };
-
- // Act
- Func action = () => apiClient.SocialMediaAccounts.PostAsync(requestBody);
-
- // Assert
- ErrorResponseDocument document = (await action.Should().ThrowExactlyAsync()).Which;
- document.Errors.Should().HaveCount(1);
-
- ErrorObject errorObject = document.Errors.First();
- errorObject.Title.Should().Be("Input validation failed.");
- errorObject.Detail.Should().Be("The Password field is not a valid Base64 encoding.");
- errorObject.Source.Should().NotBeNull();
- errorObject.Source.Pointer.Should().Be("/data/attributes/password");
- }
-
[Theory]
[InlineData(-1)]
[InlineData(-0.56)]
@@ -572,7 +536,7 @@ public async Task Can_create_resource_with_valid_properties()
UserName = newAccount.UserName,
CreditCard = newAccount.CreditCard,
Email = newAccount.Email,
- Password = newAccount.Password,
+ Password = Convert.FromBase64String(newAccount.Password!),
Phone = newAccount.Phone,
Age = newAccount.Age,
ProfilePicture = newAccount.ProfilePicture!.ToString(),