From 1ce3b67aa42572e91a2f77701c0dde40f6c7307b Mon Sep 17 00:00:00 2001 From: wing328 Date: Sat, 21 Nov 2015 13:22:00 +0800 Subject: [PATCH 1/2] add equal and gethashcode to C# model --- .../src/main/resources/csharp/model.mustache | 122 +++++-- .../main/csharp/IO/Swagger/Model/Category.cs | 147 ++++++--- .../src/main/csharp/IO/Swagger/Model/Order.cs | 249 ++++++++++----- .../src/main/csharp/IO/Swagger/Model/Pet.cs | 249 ++++++++++----- .../src/main/csharp/IO/Swagger/Model/Tag.cs | 147 ++++++--- .../src/main/csharp/IO/Swagger/Model/User.cs | 299 ++++++++++++------ .../csharp/SwaggerClientTest/TestPet.cs | 46 +++ .../bin/Debug/SwaggerClientTest.dll | Bin 62464 -> 67072 bytes .../bin/Debug/SwaggerClientTest.dll.mdb | Bin 19469 -> 21049 bytes ...ClientTest.csproj.FilesWrittenAbsolute.txt | 16 +- .../obj/Debug/SwaggerClientTest.dll | Bin 62464 -> 67072 bytes .../obj/Debug/SwaggerClientTest.dll.mdb | Bin 19469 -> 21049 bytes 12 files changed, 883 insertions(+), 392 deletions(-) diff --git a/modules/swagger-codegen/src/main/resources/csharp/model.mustache b/modules/swagger-codegen/src/main/resources/csharp/model.mustache index d40ece4cc02..c95d2f1a1b9 100644 --- a/modules/swagger-codegen/src/main/resources/csharp/model.mustache +++ b/modules/swagger-codegen/src/main/resources/csharp/model.mustache @@ -8,46 +8,98 @@ using Newtonsoft.Json; {{#models}} {{#model}} -namespace {{packageName}}.Model { - - /// - /// {{description}} - /// - [DataContract] - public class {{classname}}{{#parent}} : {{{parent}}}{{/parent}} { - {{#vars}} - /// - /// {{^description}}Gets or Sets {{{name}}}{{/description}}{{#description}}{{{description}}}{{/description}} - /// {{#description}} - /// {{{description}}}{{/description}} - [DataMember(Name="{{baseName}}", EmitDefaultValue=false)] - public {{{datatype}}} {{name}} { get; set; } - - {{/vars}} +namespace {{packageName}}.Model +{ /// - /// Get the string presentation of the object + /// {{description}} /// - /// String presentation of the object - public override string ToString() { - var sb = new StringBuilder(); - sb.Append("class {{classname}} {\n"); - {{#vars}} - sb.Append(" {{name}}: ").Append({{name}}).Append("\n"); - {{/vars}} - sb.Append("}\n"); - return sb.ToString(); - } + [DataContract] + public class {{classname}} : IEquatable<{{classname}}>{{#parent}}, {{{parent}}}{{/parent}} + { + {{#vars}} + /// + /// {{^description}}Gets or Sets {{{name}}}{{/description}}{{#description}}{{{description}}}{{/description}} + /// {{#description}} + /// {{{description}}}{{/description}} + [DataMember(Name="{{baseName}}", EmitDefaultValue=false)] + public {{{datatype}}} {{name}} { get; set; } + + {{/vars}} + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class {{classname}} {\n"); + {{#vars}}sb.Append(" {{name}}: ").Append({{name}}).Append("\n"); + {{/vars}} + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns the JSON string presentation of the object + /// + /// JSON string presentation of the object + public {{#parent}} new {{/parent}}string ToJson() + { + return JsonConvert.SerializeObject(this, Formatting.Indented); + } - /// - /// Get the JSON string presentation of the object - /// - /// JSON string presentation of the object - public {{#parent}} new {{/parent}}string ToJson() { - return JsonConvert.SerializeObject(this, Formatting.Indented); - } + /// + /// Returns true if objects are equal + /// + /// Object to be compared + /// Boolean + public override bool Equals(object obj) + { + // credit: http://stackoverflow.com/a/10454552/677735 + return this.Equals(obj as {{classname}}); + } -} + /// + /// Returns true if {{classname}} instances are equal + /// + /// Instance of {{classname}} to be compared + /// Boolean + public bool Equals({{classname}} other) + { + // credit: http://stackoverflow.com/a/10454552/677735 + if (other == null) + return false; + + return {{#vars}} + ( + this.{{name}} == other.{{name}} || + this.{{name}} != null && + this.{{name}}.Equals(other.{{name}}) + ){{#hasMore}} && {{/hasMore}}{{/vars}}; + } + + /// + /// Gets the hash code + /// + /// Hash code + public override int GetHashCode() + { + // credit: http://stackoverflow.com/a/263416/677735 + unchecked // Overflow is fine, just wrap + { + int hash = 41; + // Suitable nullity checks etc, of course :) + {{#vars}} + if (this.{{name}} != null) + hash = hash * 57 + this.{{name}}.GetHashCode(); + {{/vars}} + return hash; + } + } + + } {{/model}} {{/models}} } diff --git a/samples/client/petstore/csharp/SwaggerClientTest/Lib/SwaggerClient/src/main/csharp/IO/Swagger/Model/Category.cs b/samples/client/petstore/csharp/SwaggerClientTest/Lib/SwaggerClient/src/main/csharp/IO/Swagger/Model/Category.cs index 56ebfdb3b7b..6b39196b2b7 100644 --- a/samples/client/petstore/csharp/SwaggerClientTest/Lib/SwaggerClient/src/main/csharp/IO/Swagger/Model/Category.cs +++ b/samples/client/petstore/csharp/SwaggerClientTest/Lib/SwaggerClient/src/main/csharp/IO/Swagger/Model/Category.cs @@ -6,52 +6,111 @@ using System.Collections.Generic; using System.Runtime.Serialization; using Newtonsoft.Json; -namespace IO.Swagger.Model { - - /// - /// - /// - [DataContract] - public class Category { - - /// - /// Gets or Sets Id - /// - [DataMember(Name="id", EmitDefaultValue=false)] - public long? Id { get; set; } - - - /// - /// Gets or Sets Name - /// - [DataMember(Name="name", EmitDefaultValue=false)] - public string Name { get; set; } - - +namespace IO.Swagger.Model +{ /// - /// Get the string presentation of the object + /// /// - /// String presentation of the object - public override string ToString() { - var sb = new StringBuilder(); - sb.Append("class Category {\n"); - - sb.Append(" Id: ").Append(Id).Append("\n"); - - sb.Append(" Name: ").Append(Name).Append("\n"); - - sb.Append("}\n"); - return sb.ToString(); + [DataContract] + public class Category : IEquatable + { + + /// + /// Gets or Sets Id + /// + [DataMember(Name="id", EmitDefaultValue=false)] + public long? Id { get; set; } + + + /// + /// Gets or Sets Name + /// + [DataMember(Name="name", EmitDefaultValue=false)] + public string Name { get; set; } + + + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class Category {\n"); + sb.Append(" Id: ").Append(Id).Append("\n"); + sb.Append(" Name: ").Append(Name).Append("\n"); + + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns the JSON string presentation of the object + /// + /// JSON string presentation of the object + public string ToJson() + { + return JsonConvert.SerializeObject(this, Formatting.Indented); + } + + /// + /// Returns true if objects are equal + /// + /// Object to be compared + /// Boolean + public override bool Equals(object obj) + { + // credit: http://stackoverflow.com/a/10454552/677735 + return this.Equals(obj as Category); + } + + /// + /// Returns true if Category instances are equal + /// + /// Instance of Category to be compared + /// Boolean + public bool Equals(Category other) + { + // credit: http://stackoverflow.com/a/10454552/677735 + if (other == null) + return false; + + return + ( + this.Id == other.Id || + this.Id != null && + this.Id.Equals(other.Id) + ) && + ( + this.Name == other.Name || + this.Name != null && + this.Name.Equals(other.Name) + ); + } + + /// + /// Gets the hash code + /// + /// Hash code + public override int GetHashCode() + { + // credit: http://stackoverflow.com/a/263416/677735 + unchecked // Overflow is fine, just wrap + { + int hash = 41; + // Suitable nullity checks etc, of course :) + + if (this.Id != null) + hash = hash * 57 + this.Id.GetHashCode(); + + if (this.Name != null) + hash = hash * 57 + this.Name.GetHashCode(); + + return hash; + } + } + } - - /// - /// Get the JSON string presentation of the object - /// - /// JSON string presentation of the object - public string ToJson() { - return JsonConvert.SerializeObject(this, Formatting.Indented); - } - -} } diff --git a/samples/client/petstore/csharp/SwaggerClientTest/Lib/SwaggerClient/src/main/csharp/IO/Swagger/Model/Order.cs b/samples/client/petstore/csharp/SwaggerClientTest/Lib/SwaggerClient/src/main/csharp/IO/Swagger/Model/Order.cs index 1fa62c1605a..8346e1cc6d8 100644 --- a/samples/client/petstore/csharp/SwaggerClientTest/Lib/SwaggerClient/src/main/csharp/IO/Swagger/Model/Order.cs +++ b/samples/client/petstore/csharp/SwaggerClientTest/Lib/SwaggerClient/src/main/csharp/IO/Swagger/Model/Order.cs @@ -6,89 +6,176 @@ using System.Collections.Generic; using System.Runtime.Serialization; using Newtonsoft.Json; -namespace IO.Swagger.Model { - - /// - /// - /// - [DataContract] - public class Order { - - /// - /// Gets or Sets Id - /// - [DataMember(Name="id", EmitDefaultValue=false)] - public long? Id { get; set; } - - - /// - /// Gets or Sets PetId - /// - [DataMember(Name="petId", EmitDefaultValue=false)] - public long? PetId { get; set; } - - - /// - /// Gets or Sets Quantity - /// - [DataMember(Name="quantity", EmitDefaultValue=false)] - public int? Quantity { get; set; } - - - /// - /// Gets or Sets ShipDate - /// - [DataMember(Name="shipDate", EmitDefaultValue=false)] - public DateTime? ShipDate { get; set; } - - - /// - /// Order Status - /// - /// Order Status - [DataMember(Name="status", EmitDefaultValue=false)] - public string Status { get; set; } - - - /// - /// Gets or Sets Complete - /// - [DataMember(Name="complete", EmitDefaultValue=false)] - public bool? Complete { get; set; } - - +namespace IO.Swagger.Model +{ /// - /// Get the string presentation of the object + /// /// - /// String presentation of the object - public override string ToString() { - var sb = new StringBuilder(); - sb.Append("class Order {\n"); - - sb.Append(" Id: ").Append(Id).Append("\n"); - - sb.Append(" PetId: ").Append(PetId).Append("\n"); - - sb.Append(" Quantity: ").Append(Quantity).Append("\n"); - - sb.Append(" ShipDate: ").Append(ShipDate).Append("\n"); - - sb.Append(" Status: ").Append(Status).Append("\n"); - - sb.Append(" Complete: ").Append(Complete).Append("\n"); - - sb.Append("}\n"); - return sb.ToString(); + [DataContract] + public class Order : IEquatable + { + + /// + /// Gets or Sets Id + /// + [DataMember(Name="id", EmitDefaultValue=false)] + public long? Id { get; set; } + + + /// + /// Gets or Sets PetId + /// + [DataMember(Name="petId", EmitDefaultValue=false)] + public long? PetId { get; set; } + + + /// + /// Gets or Sets Quantity + /// + [DataMember(Name="quantity", EmitDefaultValue=false)] + public int? Quantity { get; set; } + + + /// + /// Gets or Sets ShipDate + /// + [DataMember(Name="shipDate", EmitDefaultValue=false)] + public DateTime? ShipDate { get; set; } + + + /// + /// Order Status + /// + /// Order Status + [DataMember(Name="status", EmitDefaultValue=false)] + public string Status { get; set; } + + + /// + /// Gets or Sets Complete + /// + [DataMember(Name="complete", EmitDefaultValue=false)] + public bool? Complete { get; set; } + + + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class Order {\n"); + sb.Append(" Id: ").Append(Id).Append("\n"); + sb.Append(" PetId: ").Append(PetId).Append("\n"); + sb.Append(" Quantity: ").Append(Quantity).Append("\n"); + sb.Append(" ShipDate: ").Append(ShipDate).Append("\n"); + sb.Append(" Status: ").Append(Status).Append("\n"); + sb.Append(" Complete: ").Append(Complete).Append("\n"); + + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns the JSON string presentation of the object + /// + /// JSON string presentation of the object + public string ToJson() + { + return JsonConvert.SerializeObject(this, Formatting.Indented); + } + + /// + /// Returns true if objects are equal + /// + /// Object to be compared + /// Boolean + public override bool Equals(object obj) + { + // credit: http://stackoverflow.com/a/10454552/677735 + return this.Equals(obj as Order); + } + + /// + /// Returns true if Order instances are equal + /// + /// Instance of Order to be compared + /// Boolean + public bool Equals(Order other) + { + // credit: http://stackoverflow.com/a/10454552/677735 + if (other == null) + return false; + + return + ( + this.Id == other.Id || + this.Id != null && + this.Id.Equals(other.Id) + ) && + ( + this.PetId == other.PetId || + this.PetId != null && + this.PetId.Equals(other.PetId) + ) && + ( + this.Quantity == other.Quantity || + this.Quantity != null && + this.Quantity.Equals(other.Quantity) + ) && + ( + this.ShipDate == other.ShipDate || + this.ShipDate != null && + this.ShipDate.Equals(other.ShipDate) + ) && + ( + this.Status == other.Status || + this.Status != null && + this.Status.Equals(other.Status) + ) && + ( + this.Complete == other.Complete || + this.Complete != null && + this.Complete.Equals(other.Complete) + ); + } + + /// + /// Gets the hash code + /// + /// Hash code + public override int GetHashCode() + { + // credit: http://stackoverflow.com/a/263416/677735 + unchecked // Overflow is fine, just wrap + { + int hash = 41; + // Suitable nullity checks etc, of course :) + + if (this.Id != null) + hash = hash * 57 + this.Id.GetHashCode(); + + if (this.PetId != null) + hash = hash * 57 + this.PetId.GetHashCode(); + + if (this.Quantity != null) + hash = hash * 57 + this.Quantity.GetHashCode(); + + if (this.ShipDate != null) + hash = hash * 57 + this.ShipDate.GetHashCode(); + + if (this.Status != null) + hash = hash * 57 + this.Status.GetHashCode(); + + if (this.Complete != null) + hash = hash * 57 + this.Complete.GetHashCode(); + + return hash; + } + } + } - - /// - /// Get the JSON string presentation of the object - /// - /// JSON string presentation of the object - public string ToJson() { - return JsonConvert.SerializeObject(this, Formatting.Indented); - } - -} } diff --git a/samples/client/petstore/csharp/SwaggerClientTest/Lib/SwaggerClient/src/main/csharp/IO/Swagger/Model/Pet.cs b/samples/client/petstore/csharp/SwaggerClientTest/Lib/SwaggerClient/src/main/csharp/IO/Swagger/Model/Pet.cs index 37c80259944..3c5264fe8c8 100644 --- a/samples/client/petstore/csharp/SwaggerClientTest/Lib/SwaggerClient/src/main/csharp/IO/Swagger/Model/Pet.cs +++ b/samples/client/petstore/csharp/SwaggerClientTest/Lib/SwaggerClient/src/main/csharp/IO/Swagger/Model/Pet.cs @@ -6,89 +6,176 @@ using System.Collections.Generic; using System.Runtime.Serialization; using Newtonsoft.Json; -namespace IO.Swagger.Model { - - /// - /// - /// - [DataContract] - public class Pet { - - /// - /// Gets or Sets Id - /// - [DataMember(Name="id", EmitDefaultValue=false)] - public long? Id { get; set; } - - - /// - /// Gets or Sets Category - /// - [DataMember(Name="category", EmitDefaultValue=false)] - public Category Category { get; set; } - - - /// - /// Gets or Sets Name - /// - [DataMember(Name="name", EmitDefaultValue=false)] - public string Name { get; set; } - - - /// - /// Gets or Sets PhotoUrls - /// - [DataMember(Name="photoUrls", EmitDefaultValue=false)] - public List PhotoUrls { get; set; } - - - /// - /// Gets or Sets Tags - /// - [DataMember(Name="tags", EmitDefaultValue=false)] - public List Tags { get; set; } - - - /// - /// pet status in the store - /// - /// pet status in the store - [DataMember(Name="status", EmitDefaultValue=false)] - public string Status { get; set; } - - +namespace IO.Swagger.Model +{ /// - /// Get the string presentation of the object + /// /// - /// String presentation of the object - public override string ToString() { - var sb = new StringBuilder(); - sb.Append("class Pet {\n"); - - sb.Append(" Id: ").Append(Id).Append("\n"); - - sb.Append(" Category: ").Append(Category).Append("\n"); - - sb.Append(" Name: ").Append(Name).Append("\n"); - - sb.Append(" PhotoUrls: ").Append(PhotoUrls).Append("\n"); - - sb.Append(" Tags: ").Append(Tags).Append("\n"); - - sb.Append(" Status: ").Append(Status).Append("\n"); - - sb.Append("}\n"); - return sb.ToString(); + [DataContract] + public class Pet : IEquatable + { + + /// + /// Gets or Sets Id + /// + [DataMember(Name="id", EmitDefaultValue=false)] + public long? Id { get; set; } + + + /// + /// Gets or Sets Category + /// + [DataMember(Name="category", EmitDefaultValue=false)] + public Category Category { get; set; } + + + /// + /// Gets or Sets Name + /// + [DataMember(Name="name", EmitDefaultValue=false)] + public string Name { get; set; } + + + /// + /// Gets or Sets PhotoUrls + /// + [DataMember(Name="photoUrls", EmitDefaultValue=false)] + public List PhotoUrls { get; set; } + + + /// + /// Gets or Sets Tags + /// + [DataMember(Name="tags", EmitDefaultValue=false)] + public List Tags { get; set; } + + + /// + /// pet status in the store + /// + /// pet status in the store + [DataMember(Name="status", EmitDefaultValue=false)] + public string Status { get; set; } + + + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class Pet {\n"); + sb.Append(" Id: ").Append(Id).Append("\n"); + sb.Append(" Category: ").Append(Category).Append("\n"); + sb.Append(" Name: ").Append(Name).Append("\n"); + sb.Append(" PhotoUrls: ").Append(PhotoUrls).Append("\n"); + sb.Append(" Tags: ").Append(Tags).Append("\n"); + sb.Append(" Status: ").Append(Status).Append("\n"); + + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns the JSON string presentation of the object + /// + /// JSON string presentation of the object + public string ToJson() + { + return JsonConvert.SerializeObject(this, Formatting.Indented); + } + + /// + /// Returns true if objects are equal + /// + /// Object to be compared + /// Boolean + public override bool Equals(object obj) + { + // credit: http://stackoverflow.com/a/10454552/677735 + return this.Equals(obj as Pet); + } + + /// + /// Returns true if Pet instances are equal + /// + /// Instance of Pet to be compared + /// Boolean + public bool Equals(Pet other) + { + // credit: http://stackoverflow.com/a/10454552/677735 + if (other == null) + return false; + + return + ( + this.Id == other.Id || + this.Id != null && + this.Id.Equals(other.Id) + ) && + ( + this.Category == other.Category || + this.Category != null && + this.Category.Equals(other.Category) + ) && + ( + this.Name == other.Name || + this.Name != null && + this.Name.Equals(other.Name) + ) && +// ( +// this.PhotoUrls == other.PhotoUrls || +// this.PhotoUrls != null && +// this.PhotoUrls.Equals(other.PhotoUrls) +// ) && + ( + this.Tags == other.Tags || + this.Tags != null && + this.Tags.Equals(other.Tags) + ) && + ( + this.Status == other.Status || + this.Status != null && + this.Status.Equals(other.Status) + ); + } + + /// + /// Gets the hash code + /// + /// Hash code + public override int GetHashCode() + { + // credit: http://stackoverflow.com/a/263416/677735 + unchecked // Overflow is fine, just wrap + { + int hash = 41; + // Suitable nullity checks etc, of course :) + + if (this.Id != null) + hash = hash * 57 + this.Id.GetHashCode(); + + if (this.Category != null) + hash = hash * 57 + this.Category.GetHashCode(); + + if (this.Name != null) + hash = hash * 57 + this.Name.GetHashCode(); + + if (this.PhotoUrls != null) + hash = hash * 57 + this.PhotoUrls.GetHashCode(); + + if (this.Tags != null) + hash = hash * 57 + this.Tags.GetHashCode(); + + if (this.Status != null) + hash = hash * 57 + this.Status.GetHashCode(); + + return hash; + } + } + } - - /// - /// Get the JSON string presentation of the object - /// - /// JSON string presentation of the object - public string ToJson() { - return JsonConvert.SerializeObject(this, Formatting.Indented); - } - -} } diff --git a/samples/client/petstore/csharp/SwaggerClientTest/Lib/SwaggerClient/src/main/csharp/IO/Swagger/Model/Tag.cs b/samples/client/petstore/csharp/SwaggerClientTest/Lib/SwaggerClient/src/main/csharp/IO/Swagger/Model/Tag.cs index 7d2ea38833b..6e8f84b89e9 100644 --- a/samples/client/petstore/csharp/SwaggerClientTest/Lib/SwaggerClient/src/main/csharp/IO/Swagger/Model/Tag.cs +++ b/samples/client/petstore/csharp/SwaggerClientTest/Lib/SwaggerClient/src/main/csharp/IO/Swagger/Model/Tag.cs @@ -6,52 +6,111 @@ using System.Collections.Generic; using System.Runtime.Serialization; using Newtonsoft.Json; -namespace IO.Swagger.Model { - - /// - /// - /// - [DataContract] - public class Tag { - - /// - /// Gets or Sets Id - /// - [DataMember(Name="id", EmitDefaultValue=false)] - public long? Id { get; set; } - - - /// - /// Gets or Sets Name - /// - [DataMember(Name="name", EmitDefaultValue=false)] - public string Name { get; set; } - - +namespace IO.Swagger.Model +{ /// - /// Get the string presentation of the object + /// /// - /// String presentation of the object - public override string ToString() { - var sb = new StringBuilder(); - sb.Append("class Tag {\n"); - - sb.Append(" Id: ").Append(Id).Append("\n"); - - sb.Append(" Name: ").Append(Name).Append("\n"); - - sb.Append("}\n"); - return sb.ToString(); + [DataContract] + public class Tag : IEquatable + { + + /// + /// Gets or Sets Id + /// + [DataMember(Name="id", EmitDefaultValue=false)] + public long? Id { get; set; } + + + /// + /// Gets or Sets Name + /// + [DataMember(Name="name", EmitDefaultValue=false)] + public string Name { get; set; } + + + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class Tag {\n"); + sb.Append(" Id: ").Append(Id).Append("\n"); + sb.Append(" Name: ").Append(Name).Append("\n"); + + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns the JSON string presentation of the object + /// + /// JSON string presentation of the object + public string ToJson() + { + return JsonConvert.SerializeObject(this, Formatting.Indented); + } + + /// + /// Returns true if objects are equal + /// + /// Object to be compared + /// Boolean + public override bool Equals(object obj) + { + // credit: http://stackoverflow.com/a/10454552/677735 + return this.Equals(obj as Tag); + } + + /// + /// Returns true if Tag instances are equal + /// + /// Instance of Tag to be compared + /// Boolean + public bool Equals(Tag other) + { + // credit: http://stackoverflow.com/a/10454552/677735 + if (other == null) + return false; + + return + ( + this.Id == other.Id || + this.Id != null && + this.Id.Equals(other.Id) + ) && + ( + this.Name == other.Name || + this.Name != null && + this.Name.Equals(other.Name) + ); + } + + /// + /// Gets the hash code + /// + /// Hash code + public override int GetHashCode() + { + // credit: http://stackoverflow.com/a/263416/677735 + unchecked // Overflow is fine, just wrap + { + int hash = 41; + // Suitable nullity checks etc, of course :) + + if (this.Id != null) + hash = hash * 57 + this.Id.GetHashCode(); + + if (this.Name != null) + hash = hash * 57 + this.Name.GetHashCode(); + + return hash; + } + } + } - - /// - /// Get the JSON string presentation of the object - /// - /// JSON string presentation of the object - public string ToJson() { - return JsonConvert.SerializeObject(this, Formatting.Indented); - } - -} } diff --git a/samples/client/petstore/csharp/SwaggerClientTest/Lib/SwaggerClient/src/main/csharp/IO/Swagger/Model/User.cs b/samples/client/petstore/csharp/SwaggerClientTest/Lib/SwaggerClient/src/main/csharp/IO/Swagger/Model/User.cs index 5430d1182cb..aff43555136 100644 --- a/samples/client/petstore/csharp/SwaggerClientTest/Lib/SwaggerClient/src/main/csharp/IO/Swagger/Model/User.cs +++ b/samples/client/petstore/csharp/SwaggerClientTest/Lib/SwaggerClient/src/main/csharp/IO/Swagger/Model/User.cs @@ -6,107 +6,208 @@ using System.Collections.Generic; using System.Runtime.Serialization; using Newtonsoft.Json; -namespace IO.Swagger.Model { - - /// - /// - /// - [DataContract] - public class User { - - /// - /// Gets or Sets Id - /// - [DataMember(Name="id", EmitDefaultValue=false)] - public long? Id { get; set; } - - - /// - /// Gets or Sets Username - /// - [DataMember(Name="username", EmitDefaultValue=false)] - public string Username { get; set; } - - - /// - /// Gets or Sets FirstName - /// - [DataMember(Name="firstName", EmitDefaultValue=false)] - public string FirstName { get; set; } - - - /// - /// Gets or Sets LastName - /// - [DataMember(Name="lastName", EmitDefaultValue=false)] - public string LastName { get; set; } - - - /// - /// Gets or Sets Email - /// - [DataMember(Name="email", EmitDefaultValue=false)] - public string Email { get; set; } - - - /// - /// Gets or Sets Password - /// - [DataMember(Name="password", EmitDefaultValue=false)] - public string Password { get; set; } - - - /// - /// Gets or Sets Phone - /// - [DataMember(Name="phone", EmitDefaultValue=false)] - public string Phone { get; set; } - - - /// - /// User Status - /// - /// User Status - [DataMember(Name="userStatus", EmitDefaultValue=false)] - public int? UserStatus { get; set; } - - +namespace IO.Swagger.Model +{ /// - /// Get the string presentation of the object + /// /// - /// String presentation of the object - public override string ToString() { - var sb = new StringBuilder(); - sb.Append("class User {\n"); - - sb.Append(" Id: ").Append(Id).Append("\n"); - - sb.Append(" Username: ").Append(Username).Append("\n"); - - sb.Append(" FirstName: ").Append(FirstName).Append("\n"); - - sb.Append(" LastName: ").Append(LastName).Append("\n"); - - sb.Append(" Email: ").Append(Email).Append("\n"); - - sb.Append(" Password: ").Append(Password).Append("\n"); - - sb.Append(" Phone: ").Append(Phone).Append("\n"); - - sb.Append(" UserStatus: ").Append(UserStatus).Append("\n"); - - sb.Append("}\n"); - return sb.ToString(); + [DataContract] + public class User : IEquatable + { + + /// + /// Gets or Sets Id + /// + [DataMember(Name="id", EmitDefaultValue=false)] + public long? Id { get; set; } + + + /// + /// Gets or Sets Username + /// + [DataMember(Name="username", EmitDefaultValue=false)] + public string Username { get; set; } + + + /// + /// Gets or Sets FirstName + /// + [DataMember(Name="firstName", EmitDefaultValue=false)] + public string FirstName { get; set; } + + + /// + /// Gets or Sets LastName + /// + [DataMember(Name="lastName", EmitDefaultValue=false)] + public string LastName { get; set; } + + + /// + /// Gets or Sets Email + /// + [DataMember(Name="email", EmitDefaultValue=false)] + public string Email { get; set; } + + + /// + /// Gets or Sets Password + /// + [DataMember(Name="password", EmitDefaultValue=false)] + public string Password { get; set; } + + + /// + /// Gets or Sets Phone + /// + [DataMember(Name="phone", EmitDefaultValue=false)] + public string Phone { get; set; } + + + /// + /// User Status + /// + /// User Status + [DataMember(Name="userStatus", EmitDefaultValue=false)] + public int? UserStatus { get; set; } + + + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class User {\n"); + sb.Append(" Id: ").Append(Id).Append("\n"); + sb.Append(" Username: ").Append(Username).Append("\n"); + sb.Append(" FirstName: ").Append(FirstName).Append("\n"); + sb.Append(" LastName: ").Append(LastName).Append("\n"); + sb.Append(" Email: ").Append(Email).Append("\n"); + sb.Append(" Password: ").Append(Password).Append("\n"); + sb.Append(" Phone: ").Append(Phone).Append("\n"); + sb.Append(" UserStatus: ").Append(UserStatus).Append("\n"); + + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns the JSON string presentation of the object + /// + /// JSON string presentation of the object + public string ToJson() + { + return JsonConvert.SerializeObject(this, Formatting.Indented); + } + + /// + /// Returns true if objects are equal + /// + /// Object to be compared + /// Boolean + public override bool Equals(object obj) + { + // credit: http://stackoverflow.com/a/10454552/677735 + return this.Equals(obj as User); + } + + /// + /// Returns true if User instances are equal + /// + /// Instance of User to be compared + /// Boolean + public bool Equals(User other) + { + // credit: http://stackoverflow.com/a/10454552/677735 + if (other == null) + return false; + + return + ( + this.Id == other.Id || + this.Id != null && + this.Id.Equals(other.Id) + ) && + ( + this.Username == other.Username || + this.Username != null && + this.Username.Equals(other.Username) + ) && + ( + this.FirstName == other.FirstName || + this.FirstName != null && + this.FirstName.Equals(other.FirstName) + ) && + ( + this.LastName == other.LastName || + this.LastName != null && + this.LastName.Equals(other.LastName) + ) && + ( + this.Email == other.Email || + this.Email != null && + this.Email.Equals(other.Email) + ) && + ( + this.Password == other.Password || + this.Password != null && + this.Password.Equals(other.Password) + ) && + ( + this.Phone == other.Phone || + this.Phone != null && + this.Phone.Equals(other.Phone) + ) && + ( + this.UserStatus == other.UserStatus || + this.UserStatus != null && + this.UserStatus.Equals(other.UserStatus) + ); + } + + /// + /// Gets the hash code + /// + /// Hash code + public override int GetHashCode() + { + // credit: http://stackoverflow.com/a/263416/677735 + unchecked // Overflow is fine, just wrap + { + int hash = 41; + // Suitable nullity checks etc, of course :) + + if (this.Id != null) + hash = hash * 57 + this.Id.GetHashCode(); + + if (this.Username != null) + hash = hash * 57 + this.Username.GetHashCode(); + + if (this.FirstName != null) + hash = hash * 57 + this.FirstName.GetHashCode(); + + if (this.LastName != null) + hash = hash * 57 + this.LastName.GetHashCode(); + + if (this.Email != null) + hash = hash * 57 + this.Email.GetHashCode(); + + if (this.Password != null) + hash = hash * 57 + this.Password.GetHashCode(); + + if (this.Phone != null) + hash = hash * 57 + this.Phone.GetHashCode(); + + if (this.UserStatus != null) + hash = hash * 57 + this.UserStatus.GetHashCode(); + + return hash; + } + } + } - - /// - /// Get the JSON string presentation of the object - /// - /// JSON string presentation of the object - public string ToJson() { - return JsonConvert.SerializeObject(this, Formatting.Indented); - } - -} } diff --git a/samples/client/petstore/csharp/SwaggerClientTest/TestPet.cs b/samples/client/petstore/csharp/SwaggerClientTest/TestPet.cs index 5a42b8703c2..6fe0de92cac 100644 --- a/samples/client/petstore/csharp/SwaggerClientTest/TestPet.cs +++ b/samples/client/petstore/csharp/SwaggerClientTest/TestPet.cs @@ -144,6 +144,52 @@ namespace SwaggerClient.TestPet } + [Test ()] + public void TestEqual() + { + // create pet + Pet p1 = new Pet(); + p1.Id = petId; + p1.Name = "Csharp test"; + p1.Status = "available"; + // create Category object + Category category1 = new Category(); + category1.Id = 56; + category1.Name = "sample category name2"; + List photoUrls1 = new List(new String[] {"sample photoUrls"}); + // create Tag object + Tag tag1 = new Tag(); + tag1.Id = petId; + tag1.Name = "sample tag name1"; + List tags1 = new List(new Tag[] {tag1}); + p1.Tags = tags1; + p1.Category = category1; + p1.PhotoUrls = photoUrls1; + + // create pet + Pet p2 = new Pet(); + p2.Id = petId; + p2.Name = "Csharp test"; + p2.Status = "available"; + // create Category object + Category category2 = new Category(); + category2.Id = 56; + category2.Name = "sample category name2"; + List photoUrls2 = new List(new String[] {"sample photoUrls"}); + // create Tag object + Tag tag2 = new Tag(); + tag2.Id = petId; + tag2.Name = "sample tag name1"; + List tags2 = new List(new Tag[] {tag2}); + p2.Tags = tags2; + p2.Category = category2; + p2.PhotoUrls = photoUrls2; + + Assert.IsTrue (category1.Equals (category2)); + Assert.IsTrue (tag1.Equals (tag2)); + Assert.IsTrue (p1.Equals(p2)); + } + } } diff --git a/samples/client/petstore/csharp/SwaggerClientTest/bin/Debug/SwaggerClientTest.dll b/samples/client/petstore/csharp/SwaggerClientTest/bin/Debug/SwaggerClientTest.dll index c975e54d4bed8fc21372acb08c3eaa6fab9aa969..5e020c8b222027bde45f4a7a71a9cde3f078339b 100755 GIT binary patch delta 11756 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 delta 7275 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 diff --git a/samples/client/petstore/csharp/SwaggerClientTest/bin/Debug/SwaggerClientTest.dll.mdb b/samples/client/petstore/csharp/SwaggerClientTest/bin/Debug/SwaggerClientTest.dll.mdb index 5c1092d07fca586d960495ae792c0d8c2f9a8e0f..915a29526545d08d305da895ba140ded4178cc07 100644 GIT binary patch literal 21049 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 K4rcXufd3Ehs4epV literal 19469 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 delta 7275 zcma)>3tSX+yT^Ys?6M0Bdzsk_3#K4KWT<$_yoZ-Gql=;WmYG3mg{G^EhQ2C`riNxE zj%g|0?Nt;3UGvIGK*CHk?P8gk^uEfmEX}mrTiSX4|M|B|=XB2J%;z%?&-eK~|J(DQ zof*fX#fGAb5ldFbeghzqPC8z(lx!Vo&9q3!Vwfnw98r>_YDv-)(aSEe2%X<(i=^A- z%h2{nsq**G&Phq$$<%}$_s}WBh+WHodCvoq*7^54gTv%5Pqj8mh|C`iL>H})U?}9~ zb@DnmoHrvQgX_kn8?>fp-CFkv1EikXj0wq7FKzXNAyRMc0@;;Xhv!nHQtk1)cx~cy z7HN$p{XIUWlMR!7E2vL7ZJoB35;kZ}GhEtdl(0!_e(nJ+aY{F-kM{7CAyQv$^^|0( zpH@3%f>fq;@TauhM$7i?rpEq-v7(#QNdHl5sLSoVvxR<(RH?n@Pt>ygZtbYwqUHPD zODA^YlU+XTX=yJ_Dn;7QlK%*wD)^DsaBTVz=^&qRrx_NhmiIPnhDB@pygO!yJv7Wa zOo+)12M+VVv~b`E54;)<9Hl^_bc|~7;HU@W#9_As<7amS400OnLv(vJ!+?Xd6?Xv+ z6o4=Hd#nh(9`277^zrwaz2Pi)#e-A}t zqgr;ck0Me2-VSOeC6zq*;l1)D@<}_vMD+9 z9TW@CN&B+UGra#_DQvchlxs2hXhG32X8(2?GOZJEJDtRD zXjy^yzzzzyeRZs-z2q)70ttEpHhann>r@=QFSDG7-XHIjG_?P-(Lj0oJMzXSei{aR8{ zLg3F!G=-OF;*9j&$%Vn}l@(5d{=AF}xel1Bw&VZg4uHS!Ojz2(^HMQ8`Rh&aR{Qq07*cCCS z7PGa}KI$7_V80X$)UM8HLsN6ib-UTmgw~xx%V>`TntK5y4AT0}jUU8*5f-|v6G)4J z*;h}j8hTJF6hqoOM6rl!ahbBqGAg`hEU7_THMfJKb&FqX4z<2pn=&u8C-2^WhE_^r zD7nWrfS=xztY5j(E1(FMaYWmw4PyXC;4%7vfX3P ziFk_LO@A$PrqY>3XQEaz-zB{j+&o{B2Oe;oaI{4ew^z886c&jm8;LuW19Bt=ll9Vz|#>S!I)q)eRUbc54FILE1Tim6MOt@3@8loA)A) zcIgK$?&6dr{lw`kr!LYjoPOdoNcxqNLY18+jgW3|%HT9k`khl2rvgcm*a*F2SY|Q# zFAyc!KvjD~GD%X>NTXs2s#ET>(n+Ni}=SBToH%dBx2mdFAN;$|AwTNChnh$>92@RCmGr3NZY zx1dzuV6}iQ#A=<)+3GfHYn&34qpl}v;?yj$s(gxXQn0@ikzo}#C+vZbJj{pLtyWlKfktva!?-HNI-osLn}((s)iR<+wu z++NpM)za~)AXc?b7@MwZtZJQ6E{Ihv&=sRQ>LM#!cjnU3V4SWlu=Uh|XuhhopcU$- z7PLX#X6qHo+^O!i^$yWNwc6GvL?_h>Q{NDsRU2&mVsMJxp7edvdN20|dQnn;B(ggY z7JzNZ0A%XKw`2fD31V9^0Ao2dOKideQ9hWpYnIrA2jaXSHsOKjc8{*H2@k?lL2SZz zowwrji#pcM8*z$qPO$SvoRXc> z?Dvt!jt1iZ((c!R=rPjhzRiyY;|ymYDeA!xzThmfKNO;+&TI@1(Q0Q^3)=2nWDjcx zoJ;H@LYc>%EA0=5=(Kaa{cj=q%2{E0G(^{(4OZJIbR5Yd{HLRxTcK~spJl*8H1gI*p`ezHK%5YRp<$P!$)hDScP(s{s`;4Sz;B+#b`cuv&1U&BuWLb3O$9! zQF`WM0TRa|h8~ct;S6U|)HoE=zcd)J3O$1pf>?#}@ZICO#wwJDv@trd3gw~n37uGl z#^ZBAtU?oznX7B8LK9Ie=qo4PBYgP$NnNB8*(PI60V7tS3eyxc>SQ*!3gAbxAcw2M z@hx9otb2)~)Pb(WyD(DHy+?0UKxlAlUp8E&oO^g;) zK%~90GJZ&ex*49h4r=a!j)aY_l3#xQqGH=HzPIJsPZo776 zr8jWW?T)I1G@tdh-28>xrB)(F&?VBUkRs@3(yEXl$mnrL?Z8k$E{{vyff0gINZX0Y zf_jj)6HPiHi?kpXEnwr7#68-}6R!qQts`DU>OPDTbS&VRN;p>FXEd4pC=_(TQ(@YVVnN?|3e^MHAn1nY z6{2!Z4OkshfNIn)ZE=}!ij1bf=ZnJt2lLU2%+e0*6P-a|>T7#v6hQ@tBR4Ry;8$c~~ z3uNo9MGYr?O?9Y$DZHjSH0i|GRELW?@io;!Ui`YM-FhQ()uk1AdC>?pY;gvQx2!P)%4GJ~*}-i($d5QrwuZhcGrNz+ zYq`A+o6;fTh@7OHjy)oGR4!0XU*&r2d2U!P8*W5*i1-a%EaxSI#Co_&ZC`Ur z5o{DIx?w`Jf{C~v3T`l~eY?F)^uWkcXGdg3zUkE56}#m_M(ub-y9cu@Psu7qB2V6E zoML%_`wPimX<5hp_1tdcwv6J3EH&J(74{IW$%nXqgw(IK{*}F@RBd);Z|{RKxe=`A z+z6KQ6!-HYHX3JWCo7YsL)s6O1@wV>VwFcatj(`V_Fj$2rSC43Z{Ydd&ogW^#%r~t zX2!1Pk@Z~N$o(=>^RydP$;#8gKPOZmV8G+tTU<|_ces3m4UXTWn9qAoPcC0s> ztdIKv?l1I?q{wpbD6(t0-NNlIZV!3KP`rWnqx(mBjAWMyne zSMn>!%BaL0*IKzcWC8WCYQZU>8{#d(oTxePm^NG3-nJ0kSgvkH%f(*N~Oz z1*$*!b!26F)fq^BJz1IFN$w`Ufvk+f7()KLWMz7F7)t(oWMv$sPnHrrPP52A2IKt% z$2HU5u6L+0-k8Lg{jo=5KZtc$y;egJyUVsb(&_W0p+%tH8PI0zO$pRH56CS1XRVmB z0TVOgIOcR)ncFh&lye!+YZ;?{9V}0#kD&%w`9t}f^G%+oAOb3#PC8w5x)Gt>vhRj% zj?@%8N4iAkzv+~Nx9xx1p(%|e!L5yhjlmly%cNk{hb2-l^J9Z*zcc67^Or__(|>DW zZu!=%`E!FKE@oM@P1nu@U%Y-z3I=}6Fly(2eL%bL+uhn5H->4}n?7l_R(Lbp4m>OV qvyV-%(4u{DGhUu-(f)mN(_2>QT0|6;GlrBUz4tf_(iN#B!}MQ17I9|) diff --git a/samples/client/petstore/csharp/SwaggerClientTest/obj/Debug/SwaggerClientTest.dll.mdb b/samples/client/petstore/csharp/SwaggerClientTest/obj/Debug/SwaggerClientTest.dll.mdb index 5c1092d07fca586d960495ae792c0d8c2f9a8e0f..915a29526545d08d305da895ba140ded4178cc07 100644 GIT binary patch literal 21049 zcmdUX30M=?_x7305Hf^R6F?;@BFG|wNP=5}OF`6Xts8DYl>lKA0U@}cbwRC)`%-tU zTdhkM_pWMdwXN2@n{{bzwbos`XscHJzjr1{iGtcbzwdjr^qu#eb0>4pJ#*&Xo0%KE zSB<yFdF$gY{41rC7Ji%?SZnz1QMC9;YyiuM ziv8!dJ-1`aw(#jo5+~%pze#a|mOp9!%X!DrNLCeO(XI9QgJ$`^*mA?BW!JWxOB+b9 zJ-LmDAChJ*ux01xRnU%m?^fyKCY(Op{-@)`qvG6Z(yAx49dY@28QGb|g_cShvhi}s zxN73Ip||f$%KN&g{Y6^(q&1`y`o7%AIE&4inO``xf@@LeOXhpcwgIso|kFilX(d+G*sYy+VT+fkzcm9tXJ*L z@loIWW_VJ)Pq1WG;QhH7K3|L&{^jM>?+3jTKeA5kCvQ-ebB7HJ6}W$9aqY7)!xSaH z{SPcO7<(V0-2eAe3O28(I2AmNfteQEI3jhCj^RNLY%z82AcFC!g zZ&Wpfzuk3&7jZ-iBA!SfawAd_xf5YphFO^h5vFaP@{A70e9CcVFS99GZzPVZDr&UV zwADmziZ@O5p61QYLi`bSh~8j7z)vS~>%D1%_eOj1NsjZUgWhz=`>?(6 zEGsmmNrk?FB6rD~E_+|G7hd5w6a;Y-eW=W5l8;=QYz*U;_|U69OJP)#TY<%v)sHw2 z#$7ChmH|aD4=lD84z=&`o>^84dLH|(;E|DEIKaN+=8=(|YqjqvRR#G)w%Gjiq2%tB zWwRCZlRwzclEwzYB2wudw36s)DYj*Gx7uu&vlfwus?b_gke^p%W#Rdg<9uSwW^-Iz z(0*NPTwH9dp-E~}ovG~<-GW^G7=2ET!K_bW6e9=8ua3W;pGKppZ`5eRoA_yJXlev# zG)-D-{IyMUhF8}Gfkt!HH6pjkhYnRcTullLBE`K^o!+hfUiBwGCf_OkhcU?rua?ud-4Nx2LUQgZ1F%}W6X(7HSns3CXs)z=D|GjZx-te zQ~#HwDD^Kzl=SsPZjm3oSLgjY&M0m4r%nEw{h$0O{p`m1m@0}AyVaVQI+zSbwrTp{ z4JY@`l}D;hlh$FHx~4Yaj?^j~E2mcBM5(vl=}$k@Jyq8kvY!L!Y``x8PkzY0R6ZoJ z8nd`H`}fhR+oD}VN1$9swd(;iv)-(F&Nxj8qNzdCf}Z?1?QnlcoE)i@`d?BjqFZt^ zjg(*Zc|iHwQREf}(fh$41Un1yeZ1!4NtWa@cvyp!?=`V<>G3-Rvx$DbM5-hePQ|=$H4I!xZO2>3rw~ zn4j>u9AdekqS@RdI@bq#R{K>PFjDGN2cVzOL^c-{_d;n=*y1q9bySRRKoc5FZ16P1 z<*$n3!e+Uh9+>4;K5_YHo?AY@YXysnxeaJ@_?B>IWR^wH@`x1?PeWwbT({BzN6MVa zLlh8N!LS?<)7Ck?E1y9uP8%ZVK*NI#opIU|NqZx|hZzUckYj_b&8X-r!izti|>h|1y0zW+Yh6+AjBC6nc8 zX2}ee-u&*y^iz}5O`Kub*Oc}*J<#-N2+O95z5`c0h&(zhLnp~$89H4G%Za9Rv)Qd? z&aj+rPG_3`-27<>%bZHT`5K+i2OdnE%7@v&R?kIhq)i1+m1>8G{O`?ax_O4#8LMeA zG(BcU%+nC7n-#^Xl2Nv@9I9xJ&A%E$AGX-m!WoklEoo)T*IGUeF**9Mue_DS#*saN z^(&Zx1h#DN{O*=FO1{nV#^E-r86@(XTGF9bhg&%VwXZepZ+)Qk(-5c~_@Z0s6y#z3 zP~}mocuFhsCtB0ZXKy|0jM8th^n2_du}?#k*5GSyrBSLRo#b1s@-S6+%az8_t8JFH zamHv)Jk5=t7ccD#0`JY~Qt;xzs5eOO9`w)Q^#q=p>ouaVDxO}CU+p}y9-B=C2#4aa zZsmxpHAFZYPrt;Ub6UgLv7y4>@pLEtuB$adnAw(QwVmD8;XxFq%fZoFuLxmvTUyh0 zt+S*lJ4;<*XIuKD?JieqL*Zy!`mXIUr!|Hh+d{a~maewF=4$OAjBQ8b+P&P46z=3+ zXvI5?A{%j!*da1$jcmaZ!9=w~(ZtgO>i!zI9nbn>Ow*01wcPhsP$H_YN zEso;{PUGagx42sz=eCVIZr{Jf?N)H^6BMfya`|q>44xCeQv7D$pTXbbIrUQh6i>Jw zah#Vv#?)A6O4XYKVhzvjY^l@dFln;OIJ;GsqjyLg;35sN(jPwDBCcCZM+8RH)WlT{ z3-bxnMz!$`3)2Jy_ylOfoB9R>$g+O4Q%1!&Ww`@FBAU1A)IBYmm1%vE9Shpg$#(Cy zCxxP1Ov}HsL1PAUUS%;llNs-|^omv<24kGvms%m3`Wj7WBMnY;Mt7vrj$=BKf>&rVaxFHSHLts^5HFrMUM#Y*Ou+gdPLQv;Lg1up z-e?u4;9B4@jG{{p$M?x**K0Scq$DlX%WT$}a`drY0sZ;AEI|}Jr|P7Swc6d&hU)5R zwc3Ua^$m?a;o62;bFkK56yE4ahdZ8wA0i3q7Mq1Q_q6;xcwuR)(8f&yQG}?L^jW)8nC~SV7#&r6;6Dja+&Z@Ax$LVF)^%2a; zSqjeED|WV*m&snC)?okew=d9%7cRfRvQ%v;$nIzz+S8I-Y$eW9-s@6m&Bz{tH;g#T zN(JX-?qD`|NLnQ4sRnNh!?jvbnBAE+cHYz(E|9=pQgVX56IckJ{H7wd0aFm$z$qvf z_$@fkuxMSk20p6d9D}iOYND}8G=D`(3LNF7(6GJ=Z-F&I)o?EvgM59v1DYUFIM$hd z>U zfLuyP5=*(_*_q>Xv7Dkt0IT8_&X8vIHhP5_`8)PznFi_jo08Vy7E&nXCI)M?TAvzP zZLqdxT~XN5mA>eD0(A+Tq9~OVZrOS1)*-|zbFp3#$t{RQ#i{ab$lEJ+_mUk5Y$S91 zFy_Eie8oW?w$P37(phz}=2}KCU5+`RO@P515NCIT>k>P}yG z|HfY8##iG^>?6|>xZ!FwxRv#w zNj)a_kZQ(Z%B4MMS&!xNzM$mmu+P?4uJ1t`dTeyHHdKDvgFfr=xzidXAA6z)o$T?w ztF@u>w;uF+k3XE&2JF~y<%FIzv1eINx!p=$vPLPF^rTmNE_GU;<#eeyTIA97a*!wHb8U!!fpgTe*)I^u0YoU)FlfDVXxU5%qpeG&dc@&@J zNLgqt$S<_9)K~IJxWV6FXEv%D7z~C<{d4WNc_U5r>ebD09g!HKvaA=)?)6G9ho8P2 zUqexaOG!pOII4#7(_Zvhug{(37EYIlqJVn!lxKU<>P@42m-d#=NjbdhgXvYi)L{pZkZsXJBfaU%-e1AW5xb4hGIu^0 zEi;)-ro=>S42dz09-x}0s-|ja-Ed9Su)s#p)kXJnz3EEttIm@)#)Ly29sNc3*Za`w zK5P0oTyDjA$I4~CqWdR(Xjh-z&aw`ix4DgXi7IJDVwu%sNJ}#r-hk7rThj;Y^bpcbmUvv=7gYAZs?I0Ug~W@lR)5vKL>iSeI!SJkikAbc zdL@bGB+YfT2CCL2(Hlu`I<3-#*I)H<675X-#MK(4`ZkG9ViWQPw%c5(ex^OI>o@#BAq)2GRwxmtr&$CK$q z@<~{oiJ)Th$A1z*%7%Y729_L&6(vW5dIn9^h9S-DoA97$yF$XKeodx7lmBv7-m_f7 zsE)o!-@SP3MMu+8$|a2Ij~D6si#MEQ{mUmzsVZ$9^2R}mXVq+1P9wYZzHF+m*GKs4 z!}a<`f%a_}@~dH8c}G-D?@KfK&g}bOmd(ICM#ay;BUDG8Ei{z2(XDW9SlUUu&)=7O zMwWn0oSSG_iK@GO>E(XY`#JJaJl~Hl^t&kU3!*(A#hd-;R=?Y>R)29?3QbR$ks=37 zl=HEk_*x3BN_pMYT3`Gig+5H#=Cn%r=qDadp(80@x>^IpUsC8?%6X?%%E$WRofNv8 za?jP;P@H9<*_Kx<4j&9sj)`k5wAQlD)fz1Bu+T@AkDXR2AN|FzE%c4$TUTq4c+oaik2P4>P^N=oFTI69Tar%u59fpvW%Up^njbE$Mb z^@6jkd_Ia}(`a1U%W00!x#XjX^Q&AL`rqQyr z<*4HRu5LFBqDvA=Sy#d4{ti&eKLbm>rfegrXssxYNvBEaucS+@LEd^?NvEsn*W`V{ z!=8j5chl)!`Y5a1X1mqjW44uEvCeT?j?tXo3d$h_7+!bhHApt)u=Sn@(l_=xVK}zMf4tvj22i+so&jltYtqrsOz$kgOra%fx5cBexb0tju&az?UM>hKy_824&eh+poY=n!z*cMffjcsfXW1oHSE4SBB zuQvpV>I?npV*g9<<^Fu1j&V=TuP-<5RnXf=b1r$qM#cL_K&kVQ`W;FAGayQ;nO0Qa z$fdiv69&j(^5makSK7n#`T)8y;7?eU#1#;yO0)my0?#=Lvhr>DJqmM+i05sVOnjZg zwus!6_zfD?U$Z{llh-1mIYyJw6m9MXDv6Qy65|4lcv9II4B@ zEl(aDn9iJo$04R@w#dy8txGiKV8(64v|HK%Gg}8{g2i4(HKB%}79!L_18Ex+)=(`N znwr%@BXEpb2v-XMC~DdoUVo5J-{v2MGYY5I+hlO~X$I zT!NohJV3e(xS=(?n#1Fo_sy|}#--RelEY63!`TIYHLtl=Oj8F<8zh}v#jjD|$&*hy zzU15g;xEUhCZ)|xH8d$}8k^epO~q@R+BC*gR%U3SVrRok3qMUAjX$;zuKKsH`NzWc zZG&k0pdE58_!PHdFs&T?+F*OFllcF2tyopheqk_}HV@t+*TQO@KZF(xSvbUA>*a^k z8l8$JOH0?wwK&GKQ8npdZI+j=vsSZ(>(YYtHA86akacpE%!NfmY4Ok{L+vgcz?!_u z!u{V|kQawD7ueEp$%QwD(wjrylB;Acyjns_OO}<`UD)Ub7rd7zwy5}`8_Q;v$;+=R z3q|Ds^)f$RA4aQ(tr=$bV~LXaky@!A?1D658zb8^ zE$59R5g*}8xdqP5E4I8DDe}%RdUx1+vJ=dy4~NsX;oFDXohoyGbZ{Cof13S!f8-^^ z%oQvkh9~=m)BfQH4Df=(sDYr=1anVHXo0sU@myXIl zFrSW%pyMM>jF5a16e@l%S9$(Q?^4T!<&k%fhSiHDfzo2q3nS>_h)Z%!s9EvVNcwu@ zHzS=juYE*EHQ=9)>X8+*x7?04vt@{9M$*qC&&qYNx(|)w=&v%PZW&#BQI{WzNY3FPqSkN@D0pR1%Hy7e?gop^i~wxY1+es!%(B z0s7(??vmXkp!P8j>DAc?R_=m4X6)PajpOM2IPL<-QT^UW4JcCYDGhAp0`bT@q}-Y-mYb}@Vk@m~ zqvpTIad+$vFrWT@8E(GJ-32*(TEj+|O6C;z-y@H>B+lDZ|=28dO}>i!G* z=6LRw-NdqC%43Ww_xtcqG_c~MlFXFX5V2U~VFi)2a%j>7jwVmwrhps{O`OP4*+gy< z$PtVikKs@yY5E9nTyK^|sB`f|Zi&5W7M{6f9L+1^=7SvGd@qeE4pm+uwOS}{Umq6NX2;2|@A$nm|thmjO+o=OSQDfM(FI zgI5C0p?4s7T>umGLGV7n41F4b90J5Z{|>$ebb_vdpt8We0NorM1ayY(4Q>l`fgTLD z0$rh}g2w{gpkD(o1iC}7!v%Q(NPzwT{4US~dM7SUI?xmP2>2k-3;H`;s9`{F==0#S zKp$u~T&S72aEZ`9&^jOq+7}mXJ9IL1edu7|Md(;uz$4Iop}RqM2Kqr~;bPu~PJtc* zT?|;DC*#7_1yZ3Gf#(Bh(4T_W0O`;tz+VDbnxOm*d>+VvRv{7YL1#kyLHhvs2auG_ zzzqOA1ya5Mjt6p})4@qVf9MkMKp+=-I(R%V0Qw9PsyUDc9l;U`$Op9mn}7o7L~sXS zAoO5xCQt~y96S~%f(}Cho`<$UcM2iegZ*OYGUz;D5cDDNW?(RM^H8F{p@%@HLbnBm zLQe&kFhH*ZF9e1`SFcZW5_&lFM(Do4OVE44JAe_;XTaYABcbnte+5QC*9yZwEC7s# zZV9drltL$fI|5^%bHEm0Ec7VwU|<~d9Pkw2W$0Dl6~K7t55b#&3D8Htdw_}1=fFPz zWzcuQ*MUjU-VNXbFc~@wTo;%E-3HtgmfG`UdzsFcVrC zj-U7gv!H8%y@1)!25^1g73lWhR=^zSzTh6fT6bbz;fu*;A6lF z=$qhcz)I*U4Y2`U0|kL=0jr?RU<2?vbXRbDU^R3mxG%5<`T%$+uon6P_&Bf*T8U2a zPv|$GZO~r8o6tXiX8>01H1#h1^fo^F7y}Roxpq0KZ1_}??dBvLUaZA0J?7!{)r6W zL+BE4e_$K*9PoHxJM>NP3Sb9xx&i$>@Da2PJP`O8x(qxT*a^K9JQw%`dMo%%U>Ed0 zW&?IZtBpk8Lw^b#0$l_63_1=R4SWtg9NY!i1HBE5p9s-j=>3d=FQ89@j{*CjZ-TD@ z`=P5uV*?xj1%Yb;2cgYiJO-vi&|Sgpfy2<5;J&~S=$F7Y;7jOP;4uB;3e7bp`V0Cy=<3kV0LP#s!1aLR(5u0%fD_QW!1%!rorFFG zJ`8*ho!f-yGV~A77ojHtr=Yo}I6w4{&=a6r0Y5=+051VfL$_>(`k~K2e+1nR_!&C1 zIX(w{7CHmEBk&6}emz2KfOF8_n24SS&O@ICp9U^K8_k#t0T-d?gIfcapx1y`0hghx z#2`M64722l-?hokSpo5?TfZw4PgAKqR&~Jj*0@tAp zEs@L6H=tvoTLFJUe+cdj`~|%aya%`m-K7=c0DTKO1^PwcHuPTb0N`)vW8iOrJJ4-g zBOcIqp?gAi2kt?C3C;ir?=a4SPXiouzh~hKG<&yE2%Qh`&?mvAfB=0Bd>L?qPL9Pn z03~!jI2Uk-J`NrUsGzTaF9ISvCJw$pdq86iIgJF=&=x4?e_KG4oCmXdE`eD+SHY~F-@vS%>tI&TUtm_xZ7}|)yV$ULIBZxw0+`j~ K4rcXufd3Ehs4epV literal 19469 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 Date: Sat, 21 Nov 2015 15:16:38 +0800 Subject: [PATCH 2/2] add test case for pet equal --- .../src/main/resources/csharp/model.mustache | 10 ++++++-- .../main/csharp/IO/Swagger/Model/Category.cs | 1 + .../src/main/csharp/IO/Swagger/Model/Order.cs | 1 + .../src/main/csharp/IO/Swagger/Model/Pet.cs | 13 +++++----- .../src/main/csharp/IO/Swagger/Model/Tag.cs | 1 + .../src/main/csharp/IO/Swagger/Model/User.cs | 1 + .../SwaggerClientTest.userprefs | 19 ++++++++++++++- .../csharp/SwaggerClientTest/TestPet.cs | 23 +++++++++++++++--- .../bin/Debug/SwaggerClientTest.dll | Bin 67072 -> 67584 bytes .../bin/Debug/SwaggerClientTest.dll.mdb | Bin 21049 -> 21107 bytes .../obj/Debug/SwaggerClientTest.dll | Bin 67072 -> 67584 bytes .../obj/Debug/SwaggerClientTest.dll.mdb | Bin 21049 -> 21107 bytes 12 files changed, 57 insertions(+), 12 deletions(-) diff --git a/modules/swagger-codegen/src/main/resources/csharp/model.mustache b/modules/swagger-codegen/src/main/resources/csharp/model.mustache index c95d2f1a1b9..7ab48dc56e2 100644 --- a/modules/swagger-codegen/src/main/resources/csharp/model.mustache +++ b/modules/swagger-codegen/src/main/resources/csharp/model.mustache @@ -1,4 +1,5 @@ using System; +using System.Linq; using System.IO; using System.Text; using System.Collections; @@ -72,12 +73,17 @@ namespace {{packageName}}.Model if (other == null) return false; - return {{#vars}} + return {{#vars}}{{#isNotContainer}} ( this.{{name}} == other.{{name}} || this.{{name}} != null && this.{{name}}.Equals(other.{{name}}) - ){{#hasMore}} && {{/hasMore}}{{/vars}}; + ){{#hasMore}} && {{/hasMore}}{{/isNotContainer}}{{^isNotContainer}} + ( + this.{{name}} == other.{{name}} || + this.{{name}} != null && + this.{{name}}.SequenceEqual(other.{{name}}) + ){{#hasMore}} && {{/hasMore}}{{/isNotContainer}}{{/vars}}; } /// diff --git a/samples/client/petstore/csharp/SwaggerClientTest/Lib/SwaggerClient/src/main/csharp/IO/Swagger/Model/Category.cs b/samples/client/petstore/csharp/SwaggerClientTest/Lib/SwaggerClient/src/main/csharp/IO/Swagger/Model/Category.cs index 6b39196b2b7..7d3f0936dce 100644 --- a/samples/client/petstore/csharp/SwaggerClientTest/Lib/SwaggerClient/src/main/csharp/IO/Swagger/Model/Category.cs +++ b/samples/client/petstore/csharp/SwaggerClientTest/Lib/SwaggerClient/src/main/csharp/IO/Swagger/Model/Category.cs @@ -1,4 +1,5 @@ using System; +using System.Linq; using System.IO; using System.Text; using System.Collections; diff --git a/samples/client/petstore/csharp/SwaggerClientTest/Lib/SwaggerClient/src/main/csharp/IO/Swagger/Model/Order.cs b/samples/client/petstore/csharp/SwaggerClientTest/Lib/SwaggerClient/src/main/csharp/IO/Swagger/Model/Order.cs index 8346e1cc6d8..1f786769d55 100644 --- a/samples/client/petstore/csharp/SwaggerClientTest/Lib/SwaggerClient/src/main/csharp/IO/Swagger/Model/Order.cs +++ b/samples/client/petstore/csharp/SwaggerClientTest/Lib/SwaggerClient/src/main/csharp/IO/Swagger/Model/Order.cs @@ -1,4 +1,5 @@ using System; +using System.Linq; using System.IO; using System.Text; using System.Collections; diff --git a/samples/client/petstore/csharp/SwaggerClientTest/Lib/SwaggerClient/src/main/csharp/IO/Swagger/Model/Pet.cs b/samples/client/petstore/csharp/SwaggerClientTest/Lib/SwaggerClient/src/main/csharp/IO/Swagger/Model/Pet.cs index 3c5264fe8c8..d85d8a8be7e 100644 --- a/samples/client/petstore/csharp/SwaggerClientTest/Lib/SwaggerClient/src/main/csharp/IO/Swagger/Model/Pet.cs +++ b/samples/client/petstore/csharp/SwaggerClientTest/Lib/SwaggerClient/src/main/csharp/IO/Swagger/Model/Pet.cs @@ -1,4 +1,5 @@ using System; +using System.Linq; using System.IO; using System.Text; using System.Collections; @@ -126,15 +127,15 @@ namespace IO.Swagger.Model this.Name != null && this.Name.Equals(other.Name) ) && -// ( -// this.PhotoUrls == other.PhotoUrls || -// this.PhotoUrls != null && -// this.PhotoUrls.Equals(other.PhotoUrls) -// ) && + ( + this.PhotoUrls == other.PhotoUrls || + this.PhotoUrls != null && + this.PhotoUrls.SequenceEqual(other.PhotoUrls) + ) && ( this.Tags == other.Tags || this.Tags != null && - this.Tags.Equals(other.Tags) + this.Tags.SequenceEqual(other.Tags) ) && ( this.Status == other.Status || diff --git a/samples/client/petstore/csharp/SwaggerClientTest/Lib/SwaggerClient/src/main/csharp/IO/Swagger/Model/Tag.cs b/samples/client/petstore/csharp/SwaggerClientTest/Lib/SwaggerClient/src/main/csharp/IO/Swagger/Model/Tag.cs index 6e8f84b89e9..8b2cbe08474 100644 --- a/samples/client/petstore/csharp/SwaggerClientTest/Lib/SwaggerClient/src/main/csharp/IO/Swagger/Model/Tag.cs +++ b/samples/client/petstore/csharp/SwaggerClientTest/Lib/SwaggerClient/src/main/csharp/IO/Swagger/Model/Tag.cs @@ -1,4 +1,5 @@ using System; +using System.Linq; using System.IO; using System.Text; using System.Collections; diff --git a/samples/client/petstore/csharp/SwaggerClientTest/Lib/SwaggerClient/src/main/csharp/IO/Swagger/Model/User.cs b/samples/client/petstore/csharp/SwaggerClientTest/Lib/SwaggerClient/src/main/csharp/IO/Swagger/Model/User.cs index aff43555136..d2c1e3a46eb 100644 --- a/samples/client/petstore/csharp/SwaggerClientTest/Lib/SwaggerClient/src/main/csharp/IO/Swagger/Model/User.cs +++ b/samples/client/petstore/csharp/SwaggerClientTest/Lib/SwaggerClient/src/main/csharp/IO/Swagger/Model/User.cs @@ -1,4 +1,5 @@ using System; +using System.Linq; using System.IO; using System.Text; using System.Collections; diff --git a/samples/client/petstore/csharp/SwaggerClientTest/SwaggerClientTest.userprefs b/samples/client/petstore/csharp/SwaggerClientTest/SwaggerClientTest.userprefs index 31e5cba141b..05585bff932 100644 --- a/samples/client/petstore/csharp/SwaggerClientTest/SwaggerClientTest.userprefs +++ b/samples/client/petstore/csharp/SwaggerClientTest/SwaggerClientTest.userprefs @@ -2,8 +2,25 @@ - + + + + + + + + + + + + + + + + + + diff --git a/samples/client/petstore/csharp/SwaggerClientTest/TestPet.cs b/samples/client/petstore/csharp/SwaggerClientTest/TestPet.cs index 6fe0de92cac..0227a2d9113 100644 --- a/samples/client/petstore/csharp/SwaggerClientTest/TestPet.cs +++ b/samples/client/petstore/csharp/SwaggerClientTest/TestPet.cs @@ -1,5 +1,6 @@ using NUnit.Framework; using System; +using System.Linq; using System.IO; using System.Collections.Generic; using IO.Swagger.Api; @@ -166,7 +167,7 @@ namespace SwaggerClient.TestPet p1.Category = category1; p1.PhotoUrls = photoUrls1; - // create pet + // create pet 2 Pet p2 = new Pet(); p2.Id = petId; p2.Name = "Csharp test"; @@ -185,9 +186,25 @@ namespace SwaggerClient.TestPet p2.Category = category2; p2.PhotoUrls = photoUrls2; + // p1 and p2 should be equal (both object and attribute level) Assert.IsTrue (category1.Equals (category2)); - Assert.IsTrue (tag1.Equals (tag2)); - Assert.IsTrue (p1.Equals(p2)); + Assert.IsTrue (tags1.SequenceEqual (tags2)); + Assert.IsTrue (p1.PhotoUrls.SequenceEqual(p2.PhotoUrls)); + + Assert.IsTrue (p1.Equals (p2)); + + // update attribute to that p1 and p2 are not equal + category2.Name = "new category name"; + Assert.IsFalse(category1.Equals (category2)); + + tags2 = new List (); + Assert.IsFalse (tags1.SequenceEqual (tags2)); + + // photoUrls has not changed so it should be equal + Assert.IsTrue (p1.PhotoUrls.SequenceEqual(p2.PhotoUrls)); + + Assert.IsFalse (p1.Equals (p2)); + } } diff --git a/samples/client/petstore/csharp/SwaggerClientTest/bin/Debug/SwaggerClientTest.dll b/samples/client/petstore/csharp/SwaggerClientTest/bin/Debug/SwaggerClientTest.dll index 5e020c8b222027bde45f4a7a71a9cde3f078339b..924934c46233779ca4dd6c58049f0518ece993b2 100755 GIT binary patch delta 5639 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 OuYAqxxm#Rzg7M#yM;ccE delta 5375 zcmbuDd2|$27RJBoq|=?Py1S~ny3-*T2#~OcWn`CKRuvJDO?DR$X-p!)Vd;d;C@>HU z0U@%gGi-s-?3*AE0wh4#h7krbPRzs+6d4Ypvdn$29?dfP*VH+6^M3ccZ@KrqD!Ry; zAD%TQeEuh~_W(rDO;^=~+_nAWQ&lANV3;Vu9+q28HL6KNqift{9=h+rm@U?+{)yMXjjd#PElm*w_&bs$Bw09*)bX`?7Ts(E)~P zAfu}V2wuu~JyJSsbedY5?6|4bn-r25lfIvN#70^sH2}iX50lIPC3zy#TDdUZe~6l% zxiZaNQ;%Gge#AI9^*QS83e*ko&_vRsZT@3yBzxKh>XOnBsGD}ciSc$nTTDtZX=#7s zOsg^3?%z($v{DwIO7Z6Ga|TjjOiA~bu$3I3s5w?3-W-K3>4Dy!2ONAj;#M|dm_j2q zVk?N_vCOIaPtaI=1Us)?T3Z&?*tipj*ZJzM@zwFNe#8ef>SraH2|h&}ZF?d!+Y_1D zSe?zxY`>qGDgAzCkLd@|GBo0EWM=a}k(uqW%p$WN$;_1eBD0p+9eeYwdor`fMxY8l znMqoJs`hB+OF5gF8z-}M^*6T6h{^U!#fEEILpn9>r|D$-PixqToxJD>n?Ih)76ZHg zB(WOaye1uFB|PO6Q7j@KDLOkokq?W^f=Z3!(;9i_(8EJdqzmc!G*nc?gJb-Eo^oS) zU0UfE)9aJHHa$ryG+Z;>)J~p}C>=4n&ZwPyn${TUvipnJ#xsa;S^fJSK%J_V6k1tS z9V2{Z?Y5;fkxh(w*`C`(3W>Iz#WsIGf z(&lPYAZaSl{||shWlMS~BW?7!*J&JJY%h9rRr2+H3FAisPVyyn>D#Rn{mmktXq3)u zE1ff3v+CL#vktiDTit1vrCWvTS66jJE6n=1t;cO=vJn`e?6ySUZL%JeN6~_@LS>#q z9%kS34YmfPr9S3g8=RYSFgh?*X(UtD{3^8OD9vPg?Fd>#T3Cpdkrp1JwaPOxJ>>i< zwC+}V%HpkyLTf2$?6t_QLTedmb`ywhDnsPR5ZwI6ADMAg(OGQGuw z)?A$_yF%1KohMWEg!ZDkM0SU0u==^|MXyBWnB|=m9+cxTAw>DMDwu5&#;SpQTLSU~ zPE<2d6?;sw&rtWuRdHU>hiZ_hj8lcgs`eDT)j?N<#HyBv{(@N5s$qVTsj;e6$0_o-$Q~g=R<@cbt7Q@^TP-9eo5aeNj7=#f-KVOh;JP4Iwc5z3V`{8w z^>9HDt6D>hs%L7fYK^d75UX0C2?jSXMOL<_S(C0p>socOqlF1X+ttq=p`+@yN9e4& z*U>T*S*{j2T7~FG^@O8!h{CjdTbmF$vX-_{<9 zg4i~7Ks%H8Hg&*2L2R2kU=*hci6zky>z`$#R7fm|jwlzzlIVy))2^n-vgm{iK`e{T zsO)BHEQ@E6(%mGMMHfuwzbPstmId!bVxcur8}Hdt+Xjl-icFR?LB8t zAV9!6W{~(CZ!?-p;`1R|r&Wu5Aw*lX51lWD=#bVMFNNr&w&@YNqUAXsYS*+?&OV_? zxYs-T5;b9-LTj`;=zKXO#=G-v142~GeZesh4f-($f1Hd-i{k=pOJ2c5(+jpGL$KH+ zz9mDjSrFTjA=tyILShvfimQCG3W-%{80z(BV^>J5Lc=kbPhBCg3XMRXAXcD}D5hT< zEOKsu#8HT$_b@|Np;wVJ*d$h=*KtY^tI%j%f5p^Tg+?P~h)JwMqmeh%Bvzp@xFm>G z=uNa6ZfdMRZy`reyxWm)^W)M8Q=|$RD?g44Jnhaz8Y(iGcb2^)RWS|M1@&_Gb)_R} zqNxpa4<*tBjdQ>1%0Q~18{xO?8R*U_+n(jF6_tTLLYqgC?_iwJR=Xz=O*9GH1MZow z3Ap}8J_QQhPy)!BWYP(DBP9o6lTEtl9;M_$6Li&GW;c*3=x6sBWdUXgiqtceh3GTI z>=&=kRu-X>{z;<*kxbghXv&Z9EHu&sW%eb=5!hMZtt>@qmKi!gKdUT57N><6tDm+n z$6o}!tCuM&P%oQBF2qdzJ7qQU1m#lXr)W2gX}MUc+tkl6SkM}x&oOca)7ZJ}Z8TdN z+r_Q^8B;>Ocy$dHn`A$%-?FdAWR8{hF;y6y)-Tm=FuZJ zLYm2DSZH^8lGTlf5tKmMCe##EhqO&d71WHh0(2A9g|q_n5%e-?n=xL{7}7SQ%p^=9 zEr<_hvH5bnvs-%VsX^>95g&R|iOM+fbg>1MCfPstv{JXg@*e9r%f7+W!+0exuGJP# zzHKW~xwjCX#AIR{HkmQl>tR$Zv@@7+`L;c{ zB(S0Pu(}tw1hw{_Bf$4R0qr<$1DeOm2LEXH$ z+5x;KsGoPKAuWsR%Zm0T76|W1?@H|;@&&!^Eg;$_(S|Dmc+k6aTITeDoIS_pe^EtA8F4vA@@JA09Q;aV-ndhq*MJDmZ z6ys|_Y%#^SDkzMmC_%(RJ|R6M`L+@`1?5s1PN0sU<+P!J6KE=M1BoZ`yr5kqo>@z15aAK$|BxNQ<*<9g#f4&|9+ zDxBWDF3`s@e3>aW;N)CxQX5W{f?nd(bcLyn;8Y}N0;gfCxF)85!z5${9V-V|wC%c0 z{SKY@t1TD%h_1p&{WLG={q$<&n`J8J2v zRKy;&3{Y-R%o~a%mvdVMKSXKr9o&toA9e?gqsyhEmQ1CV94@iZex?zUjO_dtk*g!> z=nb$gqKR=Zf4dYPoV0Pd6t^y>8hr}&L$&aO_>U!tw`+&5ww^Vb6ePvniy6*6!?`+= zw?~tjZ1_oiE_NmNtmNuy-d;oM1Y=!6l9U%bSx{nWloZhq?W%MnJFH3%vRT}&;C4T^ zW!xfxsqGSa7$sY>13Tp}sSeVng3cRTkx4?B-Le{$Y+hPhH*PrF*XI=Fhc2D-+%GF=;8wUr@Cnlf22l#R+( zr9}Bk`ImA-xvR)(Gqt1IM;)%dt1ebIt0ii=+DlvL)z)YSwcA<^cW3t?_b~Tc?hN;2 z_ebts#y49V1&+EwzqlUSg>fgyGhI4Oc6r=i$!>@%BfEpQi+KBVTse8J#8r~5hd}Phg{~h!S zUuX|LP+x9`a9hd!qj-A^O&Pqk?Y5*IiMs%yVi(Mq$rrRbjk{ojI>s^&D<3jP`;KY(e_Mq$h zDaEjU+r)XY*0_v5Q~P$_m$oW-n04*8VApTg#Tff;#s)Kdq#?-z+d-BoM2#$>9$eT2qPBvFdU`seU8ZO_Z4g5e5CLIO5R3|< z0g%(Rw=mE1yIpiM5`!PZCzTmDmdRu$eS{p^X2>fzyE#j-Fvx7 zptg!VsA5yxtF4`W13Jcqkp1W4-u+iC&yL5fNlExFVpM}i)*D0_XbEvduA-wh!$n>{ z+0MU$=b}GQ0CfLkZJ+Yq3vQa;CvOK$$}81Wy#DrulbcV_+KS9_K2_1z?cwX?UE5Ci zENcn)#@}83dk3u+JKoM3H|OTmP0NDTd|KF6vT^*oX>07A^Uj)=I-h(V;B4uGR_&Oqs`q`@ixFc!&gJn`5x+d1oG@p(v&@!iovY(%WBev5?JJJ$>%1?X_Q!wQ zGxc+Bil^rIGe{XZWlgi+CXibLO8;Tc)KB?^p1#y?k#p1FfagiBDfU-8N~=RQ+%|J(~X5 zUdz??Q|+TJHqv6_5~F=--Kkc+#z!j3v0M%a^X@~Lao~fVuh>?yOk0F&7rIrP< z-aIELaH9H>k**orrAtPz-rh-=jLKE3Qm;*>b;*^%PMtkGVMv;EA_;8 z%0R99Y%-loZb8aOZcfZHGsd3d=SB85VMXE_slQeIfr(a`Dou`c3#UwU+SF*Tc^w9K3N^R@*6-v!iW`5snpQvCzgMq@QX8O#$UP^7J%}=oIGShBz zZO?e1aKcO{&8MW)cHDf0t7f`pZts}}3V)jEiTSCN+Rj-&VVQ->Efp5WBy6d_u)#vr zmW@)XV^-|0udvrb`z-ta5+e;18ZFdhX_nGx@c{P|Zdj`A4)srynLH_iOZIS|gJQcLQ2sh7|1h39MUr_zJe-x2=*F(`K;{D!yVE%2VEYX%jk zm8aS7>LPnlT!7l8GmW~^o^xe{j=Ay4x<1?xF=!Z{N%b=uW{USyWEiufGc4jKwu@{C zb9WoLJQNqo8oDAz{8D;W44UAz@<&hlF zYne^wXJ6noXx*4i9kXxFmRcv~(8)Qc_<&Jqo~?7}(ww$AQtNasHRd+)&1hZDr7O8V z=Sr>SJUWwimIsZV<#{!auI07oNv(@>>8H7^{Oi$H&s%fp_S`#jrPkeix|e^SPkbfY zbAACWC|Fn^wVo8v(}HKb`IUKICG)6sUfDdU^?{X^S<9{5{AyCbIxAILKe0M`PD|!9 zS~{PVz-(XcPD=POC9w&3v}Ddn7i`sbm48(gmz+ z0XK}v)~rRfZUL)=iMJ95e7um+>V<60LVkBlhGq+@tqa*Um}5Y7A)}3jY*Qi6kDjKf zMYX4p?S*v@kX02i+EB!*i};i1B+V{VyNg&Y%rRj7B1Tn<*oH+sHzrB56Vz>x)@cF@GF0NAnG;oyBYy%rRi+VqCMB?Ox2w#u_w7Q5{>%j>8-SzFNX)#}fAS z60VH>w@*E)h9&GU%rT&DDWmU~vU>iX*esuOC|Z`X^Dsxhv4l}m32Wv9#%20kL(yKs zuEQMt)>1~7N?9BKYTSs3yD09Jviq>^zIyJQ->NFM{Vo&EVBxR-)x7&Y;*1 z-vpfnABKMmoddVR&p<8U2k>8@^I%mtwi&tr?g#gTegucZgP@Dx8u)nVC-4vO{ZK2o z1AYOzgy$==M-csiq7D22TmfAMt0M3K=nA+TJ|6lRTnn#;u7cwt(Fb1x9|4=7cJS~h zqMP9B;F;hzp&Q^k@a<3sSUr-+`j!p@QFx>9f_?#;;IYsx@CkS}bQ|0X{}H+a9yJ_$BBMaPlj- zIrt$s2b={x0^fxfLXW}pDp4o+PjC^~6?y_*0k43bg1g|KLeIdx#^7Hrs1sZO?>ojy z)P`q!I_gBOx_-AG{V4zyYy%2Y_9`k>GI16}%HZ0qO-l3U7e$ zg{_DkhrH3weTP!VNrm Ha`S%yPU&#W delta 3869 zcmZ9P2Ut{B8ixPFjKj=aj06EAMF`z276z22f(Wj=*?khSnkB-TLD~$cAY!8ph>C!T z%86J}V~aIvjG7{-No?39f)R>^T$M0XRh_ucH6Qy_#>hWl+HyFbr(IFNCy{L-^usE!$%VN z2!PJ7;9Z}5+RY}@uFvT4qbu9nA{WH@u8)YJ%0-hG^0A6OHq}cT#<~?R?fZ|L4db$w zf80td#EOHZlTE@}Z{hr%y~8~0w-@`>{h={cE?PQS-(6&PB0smbb<+=?`=Sgk&WqB^ zd4W{V`M(Q{6Rnw>%$1wK2aU zWn?jByy-Sxyh+oSSNdABLHui9M;69w@cK_4=kLSc>gU4ZdH;UHnLW?wXJ;@yQrR(< z3StXmO^qmJrbj9l$5KV?lCG({a%(JYi`_1z9%6g0%0sdAQ|!-OQ%_}mEM1KKO-lbJ z&h=Eb#?t-R2V&}kbt`4Y_&sG&9L5Fw z5_hy~>ZNRmqswuPNToed%0}?K{_*T%ex<)7)AE;iP2;@=$3e^HF zEz~a3nz~S#w!%ZTK}#F8Uv*9Us(#ecer=VM8n>d4>YSF&Yiqlv?y5Ulx~sh>rN%Y) zRlU|yyS772#jQ}8wxYj^$I}<_i{s5rX!y>7cB3@nqPzZ0e|Rg|F*A#!$5Zj9|s2qUl-AQ`E$R%>I%l}dV1Qd&}8$08ap1Y>1QZPq_V`t ziN^NPv-*A_JxFXbjpb_7Id@dICsIdZL6T{aovEw(izHf{R3W9Nqp04JL|c=#bxqyX z2b1Vf(oaaG<*8*}tS4{L_>8JcqRUB*(iMYPPlp8bqU!FdQZG)XisU89<|l_S+Xz#w zw@SS$nZ8NhE!D(do4zimlIe8v8H9}Fy7(zN##jfwdayBs^@zVv?;6x|Q|R-QB`M}r z3rADvSjutJST1y~TBuKFf(9t-GtqG`c}W^jTou7a9mF{`V&$bE*@kT;fkKF>aTT8 zJ%lHEda8dWrK7~TZbDfq%}@O-)!c+J^%lNNrM0Q+kmBdBGX41zWYIX^ZhYdP$Wi-J zsVcQvx+wXLBOrW}M!VC#O*7vxXK-)z&i_C0 z-Eiu=@v6arPERLL`-FKDO}Dj@y(M<9wt6y=o=$wmtph{Y+x-2&kps#mQPrgCNn+!Q zjHImL8G7+gx0TG7+1iAb`{N>++!klXsyv-mrdRTVfgVbnV4Kj?P#c~RG=Mt>`C9&% zPW9;*)A`vTC-!fi7Bo(AEQ1;|e&=U`oLM4o4T@CMOr|T7ukyfP7nfM6R6Xs$H1jmJ zZaS@>zG1p?tdy1Uum~4!H6+M>_jLMp`W{n`+p%RcX!(p4eC&{k_M2zWmKj@TNVixy zlPYJf;*BV6n@QVeemzqvt`GLyo-5K=~6y5pSYG(@=ohxAH3;6QzETE**r$`=dsUV=J_Qhj7m#b8O+?lQ{#LV73sJVX=Mpp z)mao9SW?PpX(?OAwNaBDw_vcflx>5V@3*du(fTsBfwx2r9 zX!t1T95@9&4muCcgJ(gtU>;x~D#hSe3^v2pKo`IV;CrDu@CEous2!)Cj%`KL`De=PM=*CThjt3b+|u0$l~OKs*3^ z4LlDV23-g5g0F&ZfQJR40q{-mLGY*0EwE28t^?l&CxhRI?tpK>H$!*9bs}j6QNh&OYnN=HF#t=b|lO|)Q-W&82kt70N28kA;LT0ZTJm{fj=FN zX29Y*VLOW_USd1#XAGgt~)sBXQ_NffvB%Lp{K1d>&m5wgx+c9iX?t74UwL4R|wrqd4w~ g!5zT&kS+L6_%p~3Y(EmsK=>%82!MO>HPN+y0k5`lDgXcg diff --git a/samples/client/petstore/csharp/SwaggerClientTest/obj/Debug/SwaggerClientTest.dll b/samples/client/petstore/csharp/SwaggerClientTest/obj/Debug/SwaggerClientTest.dll index 5e020c8b222027bde45f4a7a71a9cde3f078339b..924934c46233779ca4dd6c58049f0518ece993b2 100755 GIT binary patch delta 5639 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 OuYAqxxm#Rzg7M#yM;ccE delta 5375 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 Ha`S%yPU&#W delta 3869 zcmZ9P2Ut{B8ixPFjKj=aj06EAMF`z276z22f(Wj=*?khSnkB-TLD~$cAY!8ph>C!T z%86J}V~aIvjG7{-No?39f)R>^T$M0XRh_ucH6Qy_#>hWl+HyFbr(IFNCy{L-^usE!$%VN z2!PJ7;9Z}5+RY}@uFvT4qbu9nA{WH@u8)YJ%0-hG^0A6OHq}cT#<~?R?fZ|L4db$w zf80td#EOHZlTE@}Z{hr%y~8~0w-@`>{h={cE?PQS-(6&PB0smbb<+=?`=Sgk&WqB^ zd4W{V`M(Q{6Rnw>%$1wK2aU zWn?jByy-Sxyh+oSSNdABLHui9M;69w@cK_4=kLSc>gU4ZdH;UHnLW?wXJ;@yQrR(< z3StXmO^qmJrbj9l$5KV?lCG({a%(JYi`_1z9%6g0%0sdAQ|!-OQ%_}mEM1KKO-lbJ z&h=Eb#?t-R2V&}kbt`4Y_&sG&9L5Fw z5_hy~>ZNRmqswuPNToed%0}?K{_*T%ex<)7)AE;iP2;@=$3e^HF zEz~a3nz~S#w!%ZTK}#F8Uv*9Us(#ecer=VM8n>d4>YSF&Yiqlv?y5Ulx~sh>rN%Y) zRlU|yyS772#jQ}8wxYj^$I}<_i{s5rX!y>7cB3@nqPzZ0e|Rg|F*A#!$5Zj9|s2qUl-AQ`E$R%>I%l}dV1Qd&}8$08ap1Y>1QZPq_V`t ziN^NPv-*A_JxFXbjpb_7Id@dICsIdZL6T{aovEw(izHf{R3W9Nqp04JL|c=#bxqyX z2b1Vf(oaaG<*8*}tS4{L_>8JcqRUB*(iMYPPlp8bqU!FdQZG)XisU89<|l_S+Xz#w zw@SS$nZ8NhE!D(do4zimlIe8v8H9}Fy7(zN##jfwdayBs^@zVv?;6x|Q|R-QB`M}r z3rADvSjutJST1y~TBuKFf(9t-GtqG`c}W^jTou7a9mF{`V&$bE*@kT;fkKF>aTT8 zJ%lHEda8dWrK7~TZbDfq%}@O-)!c+J^%lNNrM0Q+kmBdBGX41zWYIX^ZhYdP$Wi-J zsVcQvx+wXLBOrW}M!VC#O*7vxXK-)z&i_C0 z-Eiu=@v6arPERLL`-FKDO}Dj@y(M<9wt6y=o=$wmtph{Y+x-2&kps#mQPrgCNn+!Q zjHImL8G7+gx0TG7+1iAb`{N>++!klXsyv-mrdRTVfgVbnV4Kj?P#c~RG=Mt>`C9&% zPW9;*)A`vTC-!fi7Bo(AEQ1;|e&=U`oLM4o4T@CMOr|T7ukyfP7nfM6R6Xs$H1jmJ zZaS@>zG1p?tdy1Uum~4!H6+M>_jLMp`W{n`+p%RcX!(p4eC&{k_M2zWmKj@TNVixy zlPYJf;*BV6n@QVeemzqvt`GLyo-5K=~6y5pSYG(@=ohxAH3;6QzETE**r$`=dsUV=J_Qhj7m#b8O+?lQ{#LV73sJVX=Mpp z)mao9SW?PpX(?OAwNaBDw_vcflx>5V@3*du(fTsBfwx2r9 zX!t1T95@9&4muCcgJ(gtU>;x~D#hSe3^v2pKo`IV;CrDu@CEous2!)Cj%`KL`De=PM=*CThjt3b+|u0$l~OKs*3^ z4LlDV23-g5g0F&ZfQJR40q{-mLGY*0EwE28t^?l&CxhRI?tpK>H$!*9bs}j6QNh&OYnN=HF#t=b|lO|)Q-W&82kt70N28kA;LT0ZTJm{fj=FN zX29Y*VLOW_USd1#XAGgt~)sBXQ_NffvB%Lp{K1d>&m5wgx+c9iX?t74UwL4R|wrqd4w~ g!5zT&kS+L6_%p~3Y(EmsK=>%82!MO>HPN+y0k5`lDgXcg