Skip to content

Commit cd16fce

Browse files
authored
get account fix (#24305)
1 parent 98430d5 commit cd16fce

File tree

3 files changed

+74
-1
lines changed

3 files changed

+74
-1
lines changed
Lines changed: 72 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,72 @@
1+
using Microsoft.Azure.Management.NetApp.Models;
2+
using Microsoft.Azure.Commands.NetAppFiles.Helpers;
3+
using Xunit;
4+
using Microsoft.Azure.Commands.NetAppFiles.Models;
5+
6+
namespace Microsoft.Azure.Commands.NetAppFiles.UnitTest
7+
{
8+
public class AccountExtensionTest
9+
{
10+
[Fact]
11+
public void AccountShouldNotError()
12+
{
13+
string jsonAccountBody = @"{
14+
""id"": ""/subscriptions/xxxxx-xxxx-xxxx-xxxx-xxxxx/resourceGroups/someGroup/providers/Microsoft.NetApp/netAppAccounts/someAccount"",
15+
""name"": ""KTBNetAppProduction"",
16+
""type"": ""Microsoft.NetApp/netAppAccounts"",
17+
""etag"": ""W/\""datetime'2023-05-30T18%3A08%3A22.2706822Z'\"""",
18+
""location"": ""eastus2"",
19+
""tags"": {
20+
""App"": ""Azure NetApp Files"",
21+
""Env"": ""PRD"",
22+
""FunctionalArea"": ""Datacenter"",
23+
""Region"": ""AMER"",
24+
""SubWorkstream"": ""OPS"",
25+
""Workstream"": ""INF""
26+
},
27+
""properties"": {
28+
""provisioningState"": ""Succeeded"",
29+
""activeDirectories"": [
30+
{
31+
""backupOperators"": [
32+
""svc-ANF""
33+
],
34+
""activeDirectoryId"": ""*********-****-****-****-************"",
35+
""username"": ""svc-ANF"",
36+
""password"": ""****************"",
37+
""domain"": ""fk.fakebrand.com"",
38+
""dns"": ""10.16.0.11,10.16.0.12"",
39+
""status"": ""InUse"",
40+
""smbServerName"": ""smbServer"",
41+
""organizationalUnit"": ""OU=AzureNetAppFiles,OU=Servers,OU=fk""
42+
}
43+
],
44+
""encryption"": {
45+
""keySource"": ""Microsoft.NetApp""
46+
}
47+
}
48+
}";
49+
50+
51+
Newtonsoft.Json.JsonSerializerSettings DeserializationSettings = new Newtonsoft.Json.JsonSerializerSettings
52+
{
53+
DateFormatHandling = Newtonsoft.Json.DateFormatHandling.IsoDateFormat,
54+
DateTimeZoneHandling = Newtonsoft.Json.DateTimeZoneHandling.Utc,
55+
NullValueHandling = Newtonsoft.Json.NullValueHandling.Ignore,
56+
ReferenceLoopHandling = Newtonsoft.Json.ReferenceLoopHandling.Serialize,
57+
ContractResolver = new Microsoft.Rest.Serialization.ReadOnlyJsonContractResolver(),
58+
Converters = new System.Collections.Generic.List<Newtonsoft.Json.JsonConverter>
59+
{
60+
new Microsoft.Rest.Serialization.Iso8601TimeSpanConverter()
61+
}
62+
};
63+
64+
DeserializationSettings.Converters.Add(new Microsoft.Rest.Serialization.TransformationJsonConverter());
65+
DeserializationSettings.Converters.Add(new Microsoft.Rest.Azure.CloudErrorJsonConverter());
66+
67+
NetAppAccount netAppAccount = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject<NetAppAccount>(jsonAccountBody, DeserializationSettings);
68+
PSNetAppFilesAccount pSNetAppFilesAccount = netAppAccount.ConvertToPs();
69+
Assert.NotNull(pSNetAppFilesAccount);
70+
}
71+
}
72+
}

src/NetAppFiles/NetAppFiles/ChangeLog.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@
1818
- Additional information about change #1
1919
-->
2020
## Upcoming Release
21+
* Fixed some minor issues
2122

2223
## Version 0.15.0
2324
* Fixed some minor issues

src/NetAppFiles/NetAppFiles/Helpers/ModelExtensions.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -82,7 +82,7 @@ public static PSNetAppFilesActiveDirectory ConvertToPs(this Management.NetApp.Mo
8282
AllowLocalNfsUsersWithLdap = activeDirectory.AllowLocalNfsUsersWithLdap,
8383
Administrators = activeDirectory.Administrators,
8484
EncryptDCConnections = activeDirectory.EncryptDcConnections,
85-
LdapSearchScope = activeDirectory.LdapSearchScope.ConvertToPs(),
85+
LdapSearchScope = activeDirectory.LdapSearchScope?.ConvertToPs(),
8686
PreferredServersForLdapClient = activeDirectory.PreferredServersForLdapClient?.Split(',').ToList<string>()
8787
};
8888
return psActiveDirectory;

0 commit comments

Comments
 (0)