< Summary

Class:Microsoft.Azure.EventGrid.Models.EventGridEvent
Assembly:Microsoft.Azure.EventGrid
File(s):C:\Git\azure-sdk-for-net\sdk\eventgrid\Microsoft.Azure.EventGrid\src\Generated\Models\EventGridEvent.cs
Covered lines:15
Uncovered lines:16
Coverable lines:31
Total lines:142
Line coverage:48.3% (15 of 31)
Covered branches:5
Total branches:10
Branch coverage:50% (5 of 10)

Metrics

MethodCyclomatic complexity Line coverage Branch coverage
.ctor()-100%100%
.ctor(...)-0%100%
get_Id()-100%100%
get_Topic()-100%100%
get_Subject()-100%100%
get_Data()-100%100%
get_EventType()-100%100%
get_EventTime()-100%100%
get_MetadataVersion()-0%100%
get_DataVersion()-100%100%
Validate()-54.55%50%

File(s)

C:\Git\azure-sdk-for-net\sdk\eventgrid\Microsoft.Azure.EventGrid\src\Generated\Models\EventGridEvent.cs

#LineLine coverage
 1// <auto-generated>
 2// Copyright (c) Microsoft Corporation. All rights reserved.
 3// Licensed under the MIT License. See License.txt in the project root for
 4// license information.
 5//
 6// Code generated by Microsoft (R) AutoRest Code Generator.
 7// Changes may cause incorrect behavior and will be lost if the code is
 8// regenerated.
 9// </auto-generated>
 10
 11namespace Microsoft.Azure.EventGrid.Models
 12{
 13    using Microsoft.Rest;
 14    using Newtonsoft.Json;
 15    using System.Linq;
 16
 17    /// <summary>
 18    /// Properties of an event published to an Event Grid topic.
 19    /// </summary>
 20    public partial class EventGridEvent
 21    {
 22        /// <summary>
 23        /// Initializes a new instance of the EventGridEvent class.
 24        /// </summary>
 11025        public EventGridEvent()
 26        {
 27            CustomInit();
 11028        }
 29
 30        /// <summary>
 31        /// Initializes a new instance of the EventGridEvent class.
 32        /// </summary>
 33        /// <param name="id">An unique identifier for the event.</param>
 34        /// <param name="subject">A resource path relative to the topic
 35        /// path.</param>
 36        /// <param name="data">Event data specific to the event type.</param>
 37        /// <param name="eventType">The type of the event that
 38        /// occurred.</param>
 39        /// <param name="eventTime">The time (in UTC) the event was
 40        /// generated.</param>
 41        /// <param name="dataVersion">The schema version of the data
 42        /// object.</param>
 43        /// <param name="topic">The resource path of the event source.</param>
 44        /// <param name="metadataVersion">The schema version of the event
 45        /// metadata.</param>
 046        public EventGridEvent(string id, string subject, object data, string eventType, System.DateTime eventTime, strin
 47        {
 048            Id = id;
 049            Topic = topic;
 050            Subject = subject;
 051            Data = data;
 052            EventType = eventType;
 053            EventTime = eventTime;
 054            MetadataVersion = metadataVersion;
 055            DataVersion = dataVersion;
 56            CustomInit();
 057        }
 58
 59        /// <summary>
 60        /// An initialization method that performs custom operations like setting defaults
 61        /// </summary>
 62        partial void CustomInit();
 63
 64        /// <summary>
 65        /// Gets or sets an unique identifier for the event.
 66        /// </summary>
 67        [JsonProperty(PropertyName = "id")]
 15068        public string Id { get; set; }
 69
 70        /// <summary>
 71        /// Gets or sets the resource path of the event source.
 72        /// </summary>
 73        [JsonProperty(PropertyName = "topic")]
 13074        public string Topic { get; set; }
 75
 76        /// <summary>
 77        /// Gets or sets a resource path relative to the topic path.
 78        /// </summary>
 79        [JsonProperty(PropertyName = "subject")]
 15080        public string Subject { get; set; }
 81
 82        /// <summary>
 83        /// Gets or sets event data specific to the event type.
 84        /// </summary>
 85        [JsonProperty(PropertyName = "data")]
 59386        public object Data { get; set; }
 87
 88        /// <summary>
 89        /// Gets or sets the type of the event that occurred.
 90        /// </summary>
 91        [JsonProperty(PropertyName = "eventType")]
 24892        public string EventType { get; set; }
 93
 94        /// <summary>
 95        /// Gets or sets the time (in UTC) the event was generated.
 96        /// </summary>
 97        [JsonProperty(PropertyName = "eventTime")]
 13098        public System.DateTime EventTime { get; set; }
 99
 100        /// <summary>
 101        /// Gets the schema version of the event metadata.
 102        /// </summary>
 103        [JsonProperty(PropertyName = "metadataVersion")]
 0104        public string MetadataVersion { get; private set; }
 105
 106        /// <summary>
 107        /// Gets or sets the schema version of the data object.
 108        /// </summary>
 109        [JsonProperty(PropertyName = "dataVersion")]
 142110        public string DataVersion { get; set; }
 111
 112        /// <summary>
 113        /// Validate the object.
 114        /// </summary>
 115        /// <exception cref="ValidationException">
 116        /// Thrown if validation fails
 117        /// </exception>
 118        public virtual void Validate()
 119        {
 20120            if (Id == null)
 121            {
 0122                throw new ValidationException(ValidationRules.CannotBeNull, "Id");
 123            }
 20124            if (Subject == null)
 125            {
 0126                throw new ValidationException(ValidationRules.CannotBeNull, "Subject");
 127            }
 20128            if (Data == null)
 129            {
 0130                throw new ValidationException(ValidationRules.CannotBeNull, "Data");
 131            }
 20132            if (EventType == null)
 133            {
 0134                throw new ValidationException(ValidationRules.CannotBeNull, "EventType");
 135            }
 20136            if (DataVersion == null)
 137            {
 0138                throw new ValidationException(ValidationRules.CannotBeNull, "DataVersion");
 139            }
 20140        }
 141    }
 142}