< Summary

Class:Azure.ResourceManager.Storage.Models.StorageAccountCreateParameters
Assembly:Azure.ResourceManager.Storage
File(s):C:\Git\azure-sdk-for-net\sdk\storage\Azure.ResourceManager.Storage\src\Generated\Models\StorageAccountCreateParameters.cs
C:\Git\azure-sdk-for-net\sdk\storage\Azure.ResourceManager.Storage\src\Generated\Models\StorageAccountCreateParameters.Serialization.cs
Covered lines:61
Uncovered lines:27
Coverable lines:88
Total lines:189
Line coverage:69.3% (61 of 88)
Covered branches:23
Total branches:28
Branch coverage:82.1% (23 of 28)

Metrics

MethodCyclomatic complexity Line coverage Branch coverage
.ctor(...)-77.78%50%
.ctor(...)-0%100%
get_Sku()-100%100%
get_Kind()-100%100%
get_Location()-100%100%
get_Tags()-100%100%
get_Identity()-0%100%
get_CustomDomain()-100%100%
get_Encryption()-100%100%
get_NetworkRuleSet()-100%100%
get_AccessTier()-100%100%
get_AzureFilesIdentityBasedAuthentication()-0%100%
get_EnableHttpsTrafficOnly()-100%100%
get_IsHnsEnabled()-100%100%
get_LargeFileSharesState()-100%100%
get_RoutingPreference()-0%100%
Azure.Core.IUtf8JsonSerializable.Write(...)-87.76%87.5%

File(s)

C:\Git\azure-sdk-for-net\sdk\storage\Azure.ResourceManager.Storage\src\Generated\Models\StorageAccountCreateParameters.cs

#LineLine coverage
 1// Copyright (c) Microsoft Corporation. All rights reserved.
 2// Licensed under the MIT License.
 3
 4// <auto-generated/>
 5
 6#nullable disable
 7
 8using System;
 9using System.Collections.Generic;
 10
 11namespace Azure.ResourceManager.Storage.Models
 12{
 13    /// <summary> The parameters used when creating a storage account. </summary>
 14    public partial class StorageAccountCreateParameters
 15    {
 16        /// <summary> Initializes a new instance of StorageAccountCreateParameters. </summary>
 17        /// <param name="sku"> Required. Gets or sets the SKU name. </param>
 18        /// <param name="kind"> Required. Indicates the type of storage account. </param>
 19        /// <param name="location"> Required. Gets or sets the location of the resource. This will be one of the support
 28020        public StorageAccountCreateParameters(Sku sku, Kind kind, string location)
 21        {
 28022            if (sku == null)
 23            {
 024                throw new ArgumentNullException(nameof(sku));
 25            }
 28026            if (location == null)
 27            {
 028                throw new ArgumentNullException(nameof(location));
 29            }
 30
 28031            Sku = sku;
 28032            Kind = kind;
 28033            Location = location;
 28034        }
 35
 36        /// <summary> Initializes a new instance of StorageAccountCreateParameters. </summary>
 37        /// <param name="sku"> Required. Gets or sets the SKU name. </param>
 38        /// <param name="kind"> Required. Indicates the type of storage account. </param>
 39        /// <param name="location"> Required. Gets or sets the location of the resource. This will be one of the support
 40        /// <param name="tags"> Gets or sets a list of key value pairs that describe the resource. These tags can be use
 41        /// <param name="identity"> The identity of the resource. </param>
 42        /// <param name="customDomain"> User domain assigned to the storage account. Name is the CNAME source. Only one 
 43        /// <param name="encryption"> Not applicable. Azure Storage encryption is enabled for all storage accounts and c
 44        /// <param name="networkRuleSet"> Network rule set. </param>
 45        /// <param name="accessTier"> Required for storage accounts where kind = BlobStorage. The access tier used for b
 46        /// <param name="azureFilesIdentityBasedAuthentication"> Provides the identity based authentication settings for
 47        /// <param name="enableHttpsTrafficOnly"> Allows https traffic only to storage service if sets to true. The defa
 48        /// <param name="isHnsEnabled"> Account HierarchicalNamespace enabled if sets to true. </param>
 49        /// <param name="largeFileSharesState"> Allow large file shares if sets to Enabled. It cannot be disabled once i
 50        /// <param name="routingPreference"> Maintains information about the network routing choice opted by the user fo
 051        internal StorageAccountCreateParameters(Sku sku, Kind kind, string location, IDictionary<string, string> tags, I
 52        {
 053            Sku = sku;
 054            Kind = kind;
 055            Location = location;
 056            Tags = tags;
 057            Identity = identity;
 058            CustomDomain = customDomain;
 059            Encryption = encryption;
 060            NetworkRuleSet = networkRuleSet;
 061            AccessTier = accessTier;
 062            AzureFilesIdentityBasedAuthentication = azureFilesIdentityBasedAuthentication;
 063            EnableHttpsTrafficOnly = enableHttpsTrafficOnly;
 064            IsHnsEnabled = isHnsEnabled;
 065            LargeFileSharesState = largeFileSharesState;
 066            RoutingPreference = routingPreference;
 067        }
 68
 69        /// <summary> Required. Gets or sets the SKU name. </summary>
 58870        public Sku Sku { get; }
 71        /// <summary> Required. Indicates the type of storage account. </summary>
 58872        public Kind Kind { get; }
 73        /// <summary> Required. Gets or sets the location of the resource. This will be one of the supported and registe
 58874        public string Location { get; }
 75        /// <summary> Gets or sets a list of key value pairs that describe the resource. These tags can be used for view
 133676        public IDictionary<string, string> Tags { get; set; }
 77        /// <summary> The identity of the resource. </summary>
 078        public Identity Identity { get; set; }
 79        /// <summary> User domain assigned to the storage account. Name is the CNAME source. Only one custom domain is s
 59680        public CustomDomain CustomDomain { get; set; }
 81        /// <summary> Not applicable. Azure Storage encryption is enabled for all storage accounts and cannot be disable
 63682        public Encryption Encryption { get; set; }
 83        /// <summary> Network rule set. </summary>
 60084        public NetworkRuleSet NetworkRuleSet { get; set; }
 85        /// <summary> Required for storage accounts where kind = BlobStorage. The access tier used for billing. </summar
 66086        public AccessTier? AccessTier { get; set; }
 87        /// <summary> Provides the identity based authentication settings for Azure Files. </summary>
 088        public AzureFilesIdentityBasedAuthentication AzureFilesIdentityBasedAuthentication { get; set; }
 89        /// <summary> Allows https traffic only to storage service if sets to true. The default value is true since API 
 62490        public bool? EnableHttpsTrafficOnly { get; set; }
 91        /// <summary> Account HierarchicalNamespace enabled if sets to true. </summary>
 60092        public bool? IsHnsEnabled { get; set; }
 93        /// <summary> Allow large file shares if sets to Enabled. It cannot be disabled once it is enabled. </summary>
 64894        public LargeFileSharesState? LargeFileSharesState { get; set; }
 95        /// <summary> Maintains information about the network routing choice opted by the user for data transfer. </summ
 096        public RoutingPreference RoutingPreference { get; set; }
 97    }
 98}

C:\Git\azure-sdk-for-net\sdk\storage\Azure.ResourceManager.Storage\src\Generated\Models\StorageAccountCreateParameters.Serialization.cs

#LineLine coverage
 1// Copyright (c) Microsoft Corporation. All rights reserved.
 2// Licensed under the MIT License.
 3
 4// <auto-generated/>
 5
 6#nullable disable
 7
 8using System.Text.Json;
 9using Azure.Core;
 10
 11namespace Azure.ResourceManager.Storage.Models
 12{
 13    public partial class StorageAccountCreateParameters : IUtf8JsonSerializable
 14    {
 15        void IUtf8JsonSerializable.Write(Utf8JsonWriter writer)
 16        {
 58817            writer.WriteStartObject();
 58818            writer.WritePropertyName("sku");
 58819            writer.WriteObjectValue(Sku);
 58820            writer.WritePropertyName("kind");
 58821            writer.WriteStringValue(Kind.ToString());
 58822            writer.WritePropertyName("location");
 58823            writer.WriteStringValue(Location);
 58824            if (Tags != null)
 25            {
 50026                writer.WritePropertyName("tags");
 50027                writer.WriteStartObject();
 303228                foreach (var item in Tags)
 29                {
 101630                    writer.WritePropertyName(item.Key);
 101631                    writer.WriteStringValue(item.Value);
 32                }
 50033                writer.WriteEndObject();
 34            }
 58835            if (Identity != null)
 36            {
 037                writer.WritePropertyName("identity");
 038                writer.WriteObjectValue(Identity);
 39            }
 58840            writer.WritePropertyName("properties");
 58841            writer.WriteStartObject();
 58842            if (CustomDomain != null)
 43            {
 444                writer.WritePropertyName("customDomain");
 445                writer.WriteObjectValue(CustomDomain);
 46            }
 58847            if (Encryption != null)
 48            {
 3249                writer.WritePropertyName("encryption");
 3250                writer.WriteObjectValue(Encryption);
 51            }
 58852            if (NetworkRuleSet != null)
 53            {
 854                writer.WritePropertyName("networkAcls");
 855                writer.WriteObjectValue(NetworkRuleSet);
 56            }
 58857            if (AccessTier != null)
 58            {
 4859                writer.WritePropertyName("accessTier");
 4860                writer.WriteStringValue(AccessTier.Value.ToSerialString());
 61            }
 58862            if (AzureFilesIdentityBasedAuthentication != null)
 63            {
 064                writer.WritePropertyName("azureFilesIdentityBasedAuthentication");
 065                writer.WriteObjectValue(AzureFilesIdentityBasedAuthentication);
 66            }
 58867            if (EnableHttpsTrafficOnly != null)
 68            {
 2469                writer.WritePropertyName("supportsHttpsTrafficOnly");
 2470                writer.WriteBooleanValue(EnableHttpsTrafficOnly.Value);
 71            }
 58872            if (IsHnsEnabled != null)
 73            {
 874                writer.WritePropertyName("isHnsEnabled");
 875                writer.WriteBooleanValue(IsHnsEnabled.Value);
 76            }
 58877            if (LargeFileSharesState != null)
 78            {
 4079                writer.WritePropertyName("largeFileSharesState");
 4080                writer.WriteStringValue(LargeFileSharesState.Value.ToString());
 81            }
 58882            if (RoutingPreference != null)
 83            {
 084                writer.WritePropertyName("routingPreference");
 085                writer.WriteObjectValue(RoutingPreference);
 86            }
 58887            writer.WriteEndObject();
 58888            writer.WriteEndObject();
 58889        }
 90    }
 91}