< Summary

Class:Azure.DigitalTwins.Core.ModelData
Assembly:Azure.DigitalTwins.Core
File(s):C:\Git\azure-sdk-for-net\sdk\digitaltwins\Azure.DigitalTwins.Core\src\Customized\Models\ModelData.cs
C:\Git\azure-sdk-for-net\sdk\digitaltwins\Azure.DigitalTwins.Core\src\Customized\Models\ModelData.Serialization.cs
C:\Git\azure-sdk-for-net\sdk\digitaltwins\Azure.DigitalTwins.Core\src\Generated\Models\ModelData.cs
Covered lines:42
Uncovered lines:7
Coverable lines:49
Total lines:168
Line coverage:85.7% (42 of 49)
Covered branches:24
Total branches:24
Branch coverage:100% (24 of 24)

Metrics

MethodCyclomatic complexity Line coverage Branch coverage
get_Id()-100%100%
get_UploadTime()-0%100%
get_Decommissioned()-0%100%
.ctor(...)-100%100%
get_Model()-100%100%
get_DisplayName()-100%100%
get_Description()-0%100%
.ctor(...)-0%100%
DeserializeModelData(...)-100%100%
get_Id()-100%100%
get_UploadTime()-0%100%
get_Decommissioned()-0%100%

File(s)

C:\Git\azure-sdk-for-net\sdk\digitaltwins\Azure.DigitalTwins.Core\src\Customized\Models\ModelData.cs

#LineLine coverage
 1// Copyright (c) Microsoft Corporation. All rights reserved.
 2// Licensed under the MIT License.
 3
 4using System;
 5using System.Collections.Generic;
 6using Azure.Core;
 7
 8namespace Azure.DigitalTwins.Core
 9{
 10    [CodeGenModel("ModelData")]
 11    public partial class ModelData
 12    {
 13        // This class declaration makes the generated class of the same name declare Model as a **string** rather than a
 14        // It also changes displayName and description from objects (per swagger) to dictionaries (per swagger comment).
 15        // It also changes the namespace.
 16        // Do not remove.
 17
 7218        /// <summary> Initializes a new instance of ModelData. </summary>
 19        /// <param name="displayName"> A language map that contains the localized display names as specified in the mode
 020        /// <param name="description"> A language map that contains the localized descriptions as specified in the model
 21        /// <param name="id"> The id of the model as specified in the model definition. </param>
 022        /// <param name="uploadTime"> The time the model was uploaded to the service. </param>
 23        /// <param name="decommissioned"> Indicates if the model is decommissioned. Decommissioned models cannot be refe
 24        /// <param name="model"> The model definition. </param>
 22425        internal ModelData(IDictionary<string, string> displayName, IDictionary<string, string> description, string id, 
 26        {
 22427            DisplayName = displayName;
 22428            Description = description;
 22429            Id = id;
 22430            UploadTime = uploadTime;
 22431            Decommissioned = decommissioned;
 22432            Model = model;
 22433        }
 34
 35        /// <summary>
 36        /// The model definition.
 37        /// </summary>
 438        public string Model { get; }
 39
 40        /// <summary>
 41        /// A language map that contains the localized display names as specified in the model definition.
 42        /// </summary>
 843        public IDictionary<string, string> DisplayName { get; }
 44
 45        /// <summary>
 46        /// A language map that contains the localized descriptions as specified in the model definition.
 47        /// </summary>
 048        public IDictionary<string, string> Description { get; }
 49
 50        #region null overrides
 51
 52#pragma warning disable CA1801 // Remove unused parameter
 53
 054        private ModelData(string id)
 55        {
 056        }
 57
 58#pragma warning restore CA1801 // Remove unused parameter
 59
 60        #endregion null overrides
 61    }
 62}

C:\Git\azure-sdk-for-net\sdk\digitaltwins\Azure.DigitalTwins.Core\src\Customized\Models\ModelData.Serialization.cs

#LineLine coverage
 1// Copyright (c) Microsoft Corporation. All rights reserved.
 2// Licensed under the MIT License.
 3
 4using System;
 5using System.Collections.Generic;
 6using System.Text.Json;
 7using Azure.Core;
 8
 9namespace Azure.DigitalTwins.Core
 10{
 11    public partial class ModelData
 12    {
 13        // This class definition overrides deserialization implementation in order to turn the **object** type definitio
 14        // dictionaries, as defined in swagger comments.
 15
 16        internal static ModelData DeserializeModelData(JsonElement element)
 17        {
 22418            Dictionary<string, string> displayName = default;
 22419            Dictionary<string, string> description = default;
 22420            string id = default;
 22421            DateTimeOffset? uploadTime = default;
 22422            bool? decommissioned = default;
 22423            string model = default;
 273624            foreach (var property in element.EnumerateObject())
 25            {
 114426                if (property.NameEquals("displayName"))
 27                {
 22428                    if (property.Value.ValueKind == JsonValueKind.Null)
 29                    {
 30                        continue;
 31                    }
 32                    // manual change: deserialize as a dictionary
 22433                    displayName = JsonSerializer.Deserialize<Dictionary<string, string>>(property.Value.GetRawText());
 22434                    continue;
 35                }
 92036                if (property.NameEquals("description"))
 37                {
 22438                    if (property.Value.ValueKind == JsonValueKind.Null)
 39                    {
 40                        continue;
 41                    }
 42                    // manual change: deserialize as a dictionary
 22443                    description = JsonSerializer.Deserialize<Dictionary<string, string>>(property.Value.GetRawText());
 22444                    continue;
 45                }
 69646                if (property.NameEquals("id"))
 47                {
 22448                    id = property.Value.GetString();
 22449                    continue;
 50                }
 47251                if (property.NameEquals("uploadTime"))
 52                {
 22453                    if (property.Value.ValueKind == JsonValueKind.Null)
 54                    {
 55                        continue;
 56                    }
 22457                    uploadTime = property.Value.GetDateTimeOffset("O");
 22458                    continue;
 59                }
 24860                if (property.NameEquals("decommissioned"))
 61                {
 22462                    if (property.Value.ValueKind == JsonValueKind.Null)
 63                    {
 64                        continue;
 65                    }
 22466                    decommissioned = property.Value.GetBoolean();
 22467                    continue;
 68                }
 2469                if (property.NameEquals("model"))
 70                {
 2471                    if (property.Value.ValueKind == JsonValueKind.Null)
 72                    {
 73                        continue;
 74                    }
 2475                    model = property.Value.GetRawText();
 76                    continue;
 77                }
 78            }
 22479            return new ModelData(displayName, description, id, uploadTime, decommissioned, model);
 80        }
 81    }
 82}

C:\Git\azure-sdk-for-net\sdk\digitaltwins\Azure.DigitalTwins.Core\src\Generated\Models\ModelData.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;
 10using Azure.Core;
 11
 12namespace Azure.DigitalTwins.Core
 13{
 14    /// <summary> A model definition and metadata for that model. </summary>
 15    public partial class ModelData
 16    {
 17        /// <summary> The id of the model as specified in the model definition. </summary>
 7218        public string Id { get; }
 19        /// <summary> The time the model was uploaded to the service. </summary>
 020        public DateTimeOffset? UploadTime { get; }
 21        /// <summary> Indicates if the model is decommissioned. Decommissioned models cannot be referenced by newly crea
 022        public bool? Decommissioned { get; }
 23    }
 24}