From 96ed41a29cfa5a4ae06833a774fd87f08107109e Mon Sep 17 00:00:00 2001 From: Valentin Valchev Date: Wed, 1 Feb 2017 17:56:22 +0200 Subject: [PATCH] Fixed issue #4665 [go] required object parameters are marked omitempty. (#4682) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Fixed issue #4665 [go] required object parameters are marked omitempty. * Run ./bin/go-petstore.sh as suggested by @wing328. Please note, that there are quite few changes, that doesn’t come from the diff I’ve applied. Seems the script wasn’t run on the previous commit. --- .../src/main/resources/go/model.mustache | 2 +- .../client/petstore/go/go-petstore/README.md | 3 ++- .../client/petstore/go/go-petstore/animal.go | 2 +- .../petstore/go/go-petstore/capitalization.go | 27 +++++++++++++++++++ samples/client/petstore/go/go-petstore/cat.go | 2 +- .../petstore/go/go-petstore/configuration.go | 4 +-- .../go/go-petstore/docs/Capitalization.md | 15 +++++++++++ .../petstore/go/go-petstore/docs/FakeApi.md | 8 ++++-- .../petstore/go/go-petstore/docs/PetApi.md | 2 +- .../petstore/go/go-petstore/docs/StoreApi.md | 2 +- .../petstore/go/go-petstore/docs/UserApi.md | 2 +- samples/client/petstore/go/go-petstore/dog.go | 2 +- .../petstore/go/go-petstore/fake_api.go | 6 +++-- .../petstore/go/go-petstore/format_test.go | 8 +++--- .../client/petstore/go/go-petstore/name.go | 2 +- samples/client/petstore/go/go-petstore/pet.go | 4 +-- 16 files changed, 70 insertions(+), 21 deletions(-) create mode 100644 samples/client/petstore/go/go-petstore/capitalization.go create mode 100644 samples/client/petstore/go/go-petstore/docs/Capitalization.md diff --git a/modules/swagger-codegen/src/main/resources/go/model.mustache b/modules/swagger-codegen/src/main/resources/go/model.mustache index 7cc53fabbcef..2ed15672ac7e 100644 --- a/modules/swagger-codegen/src/main/resources/go/model.mustache +++ b/modules/swagger-codegen/src/main/resources/go/model.mustache @@ -9,7 +9,7 @@ import ({{/imports}}{{#imports}} type {{classname}} struct { {{#vars}}{{#description}} // {{{description}}}{{/description}} - {{name}} {{{datatype}}} `json:"{{baseName}},omitempty"` + {{name}} {{{datatype}}} `json:"{{baseName}}{{^required}},omitempty{{/required}}"` {{/vars}} } {{/model}}{{/models}} \ No newline at end of file diff --git a/samples/client/petstore/go/go-petstore/README.md b/samples/client/petstore/go/go-petstore/README.md index 1f00e75f05f9..265cd850ed9c 100644 --- a/samples/client/petstore/go/go-petstore/README.md +++ b/samples/client/petstore/go/go-petstore/README.md @@ -7,7 +7,7 @@ This API client was generated by the [swagger-codegen](https://github.com/swagge - API version: 1.0.0 - Package version: 1.0.0 -- Build package: class io.swagger.codegen.languages.GoClientCodegen +- Build package: io.swagger.codegen.languages.GoClientCodegen ## Installation Put the package under your project folder and add the following in import: @@ -54,6 +54,7 @@ Class | Method | HTTP request | Description - [ArrayOfArrayOfNumberOnly](docs/ArrayOfArrayOfNumberOnly.md) - [ArrayOfNumberOnly](docs/ArrayOfNumberOnly.md) - [ArrayTest](docs/ArrayTest.md) + - [Capitalization](docs/Capitalization.md) - [Cat](docs/Cat.md) - [Category](docs/Category.md) - [ClassModel](docs/ClassModel.md) diff --git a/samples/client/petstore/go/go-petstore/animal.go b/samples/client/petstore/go/go-petstore/animal.go index f385f78a41ca..0b14ac8d2c07 100644 --- a/samples/client/petstore/go/go-petstore/animal.go +++ b/samples/client/petstore/go/go-petstore/animal.go @@ -12,7 +12,7 @@ package petstore type Animal struct { - ClassName string `json:"className,omitempty"` + ClassName string `json:"className"` Color string `json:"color,omitempty"` } diff --git a/samples/client/petstore/go/go-petstore/capitalization.go b/samples/client/petstore/go/go-petstore/capitalization.go new file mode 100644 index 000000000000..0c4631e32825 --- /dev/null +++ b/samples/client/petstore/go/go-petstore/capitalization.go @@ -0,0 +1,27 @@ +/* + * Swagger Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * OpenAPI spec version: 1.0.0 + * Contact: apiteam@swagger.io + * Generated by: https://github.com/swagger-api/swagger-codegen.git + */ + +package petstore + +type Capitalization struct { + + SmallCamel string `json:"smallCamel,omitempty"` + + CapitalCamel string `json:"CapitalCamel,omitempty"` + + SmallSnake string `json:"small_Snake,omitempty"` + + CapitalSnake string `json:"Capital_Snake,omitempty"` + + SCAETHFlowPoints string `json:"SCA_ETH_Flow_Points,omitempty"` + + // Name of the pet + ATT_NAME string `json:"ATT_NAME,omitempty"` +} diff --git a/samples/client/petstore/go/go-petstore/cat.go b/samples/client/petstore/go/go-petstore/cat.go index 6469034b1fc5..72f3a77fd18d 100644 --- a/samples/client/petstore/go/go-petstore/cat.go +++ b/samples/client/petstore/go/go-petstore/cat.go @@ -12,7 +12,7 @@ package petstore type Cat struct { - ClassName string `json:"className,omitempty"` + ClassName string `json:"className"` Color string `json:"color,omitempty"` diff --git a/samples/client/petstore/go/go-petstore/configuration.go b/samples/client/petstore/go/go-petstore/configuration.go index 5311b72fa181..0c512912fa50 100644 --- a/samples/client/petstore/go/go-petstore/configuration.go +++ b/samples/client/petstore/go/go-petstore/configuration.go @@ -18,7 +18,7 @@ import ( type Configuration struct { - UserName string `json:"userName,omitempty"` + Username string `json:"userName,omitempty"` Password string `json:"password,omitempty"` APIKeyPrefix map[string]string `json:"APIKeyPrefix,omitempty"` APIKey map[string]string `json:"APIKey,omitempty"` @@ -51,7 +51,7 @@ func NewConfiguration() *Configuration { } func (c *Configuration) GetBasicAuthEncodedString() string { - return base64.StdEncoding.EncodeToString([]byte(c.UserName + ":" + c.Password)) + return base64.StdEncoding.EncodeToString([]byte(c.Username + ":" + c.Password)) } func (c *Configuration) AddDefaultHeader(key string, value string) { diff --git a/samples/client/petstore/go/go-petstore/docs/Capitalization.md b/samples/client/petstore/go/go-petstore/docs/Capitalization.md new file mode 100644 index 000000000000..760ada1db2d6 --- /dev/null +++ b/samples/client/petstore/go/go-petstore/docs/Capitalization.md @@ -0,0 +1,15 @@ +# Capitalization + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**SmallCamel** | **string** | | [optional] [default to null] +**CapitalCamel** | **string** | | [optional] [default to null] +**SmallSnake** | **string** | | [optional] [default to null] +**CapitalSnake** | **string** | | [optional] [default to null] +**SCAETHFlowPoints** | **string** | | [optional] [default to null] +**ATT_NAME** | **string** | Name of the pet | [optional] [default to null] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/samples/client/petstore/go/go-petstore/docs/FakeApi.md b/samples/client/petstore/go/go-petstore/docs/FakeApi.md index 915750589e4a..ccf43185182e 100644 --- a/samples/client/petstore/go/go-petstore/docs/FakeApi.md +++ b/samples/client/petstore/go/go-petstore/docs/FakeApi.md @@ -1,6 +1,6 @@ # \FakeApi -All URIs are relative to ** +All URIs are relative to *http://petstore.swagger.io/v2* Method | HTTP request | Description ------------- | ------------- | ------------- @@ -14,6 +14,8 @@ Method | HTTP request | Description To test \"client\" model +To test \"client\" model + ### Parameters @@ -83,6 +85,8 @@ void (empty response body) To test enum parameters +To test enum parameters + ### Parameters @@ -94,7 +98,7 @@ Name | Type | Description | Notes **enumHeaderString** | **string**| Header parameter enum test (string) | [optional] [default to -efg] **enumQueryStringArray** | [**[]string**](string.md)| Query parameter enum test (string array) | [optional] **enumQueryString** | **string**| Query parameter enum test (string) | [optional] [default to -efg] - **enumQueryInteger** | **float32**| Query parameter enum test (double) | [optional] + **enumQueryInteger** | **int32**| Query parameter enum test (double) | [optional] **enumQueryDouble** | **float64**| Query parameter enum test (double) | [optional] ### Return type diff --git a/samples/client/petstore/go/go-petstore/docs/PetApi.md b/samples/client/petstore/go/go-petstore/docs/PetApi.md index 2bccb81cd2b2..e96bdc1a15e2 100644 --- a/samples/client/petstore/go/go-petstore/docs/PetApi.md +++ b/samples/client/petstore/go/go-petstore/docs/PetApi.md @@ -1,6 +1,6 @@ # \PetApi -All URIs are relative to ** +All URIs are relative to *http://petstore.swagger.io/v2* Method | HTTP request | Description ------------- | ------------- | ------------- diff --git a/samples/client/petstore/go/go-petstore/docs/StoreApi.md b/samples/client/petstore/go/go-petstore/docs/StoreApi.md index 83841e3f3503..1ee858d2e309 100644 --- a/samples/client/petstore/go/go-petstore/docs/StoreApi.md +++ b/samples/client/petstore/go/go-petstore/docs/StoreApi.md @@ -1,6 +1,6 @@ # \StoreApi -All URIs are relative to ** +All URIs are relative to *http://petstore.swagger.io/v2* Method | HTTP request | Description ------------- | ------------- | ------------- diff --git a/samples/client/petstore/go/go-petstore/docs/UserApi.md b/samples/client/petstore/go/go-petstore/docs/UserApi.md index 88b825bb1487..4950105ca861 100644 --- a/samples/client/petstore/go/go-petstore/docs/UserApi.md +++ b/samples/client/petstore/go/go-petstore/docs/UserApi.md @@ -1,6 +1,6 @@ # \UserApi -All URIs are relative to ** +All URIs are relative to *http://petstore.swagger.io/v2* Method | HTTP request | Description ------------- | ------------- | ------------- diff --git a/samples/client/petstore/go/go-petstore/dog.go b/samples/client/petstore/go/go-petstore/dog.go index 5b404801abb7..a2d91c6e6a1f 100644 --- a/samples/client/petstore/go/go-petstore/dog.go +++ b/samples/client/petstore/go/go-petstore/dog.go @@ -12,7 +12,7 @@ package petstore type Dog struct { - ClassName string `json:"className,omitempty"` + ClassName string `json:"className"` Color string `json:"color,omitempty"` diff --git a/samples/client/petstore/go/go-petstore/fake_api.go b/samples/client/petstore/go/go-petstore/fake_api.go index 2170fe29f084..b407199cd278 100644 --- a/samples/client/petstore/go/go-petstore/fake_api.go +++ b/samples/client/petstore/go/go-petstore/fake_api.go @@ -38,6 +38,7 @@ func NewFakeApiWithBasePath(basePath string) *FakeApi { } /** + * To test \"client\" model * To test \"client\" model * * @param body client model @@ -132,7 +133,7 @@ func (a FakeApi) TestEndpointParameters(number float32, double float64, patternW var localVarFileBytes []byte // authentication '(http_basic_test)' required // http basic authentication required - if a.Configuration.UserName != "" || a.Configuration.Password != ""{ + if a.Configuration.Username != "" || a.Configuration.Password != ""{ localVarHeaderParams["Authorization"] = "Basic " + a.Configuration.GetBasicAuthEncodedString() } // add default headers if any @@ -190,6 +191,7 @@ func (a FakeApi) TestEndpointParameters(number float32, double float64, patternW } /** + * To test enum parameters * To test enum parameters * * @param enumFormStringArray Form parameter enum test (string array) @@ -202,7 +204,7 @@ func (a FakeApi) TestEndpointParameters(number float32, double float64, patternW * @param enumQueryDouble Query parameter enum test (double) * @return void */ -func (a FakeApi) TestEnumParameters(enumFormStringArray []string, enumFormString string, enumHeaderStringArray []string, enumHeaderString string, enumQueryStringArray []string, enumQueryString string, enumQueryInteger float32, enumQueryDouble float64) (*APIResponse, error) { +func (a FakeApi) TestEnumParameters(enumFormStringArray []string, enumFormString string, enumHeaderStringArray []string, enumHeaderString string, enumQueryStringArray []string, enumQueryString string, enumQueryInteger int32, enumQueryDouble float64) (*APIResponse, error) { var localVarHttpMethod = strings.ToUpper("Get") // create path and map variables diff --git a/samples/client/petstore/go/go-petstore/format_test.go b/samples/client/petstore/go/go-petstore/format_test.go index a4c8b3074433..43125b9df34c 100644 --- a/samples/client/petstore/go/go-petstore/format_test.go +++ b/samples/client/petstore/go/go-petstore/format_test.go @@ -22,7 +22,7 @@ type FormatTest struct { Int64_ int64 `json:"int64,omitempty"` - Number float32 `json:"number,omitempty"` + Number float32 `json:"number"` Float float32 `json:"float,omitempty"` @@ -30,15 +30,15 @@ type FormatTest struct { String_ string `json:"string,omitempty"` - Byte_ string `json:"byte,omitempty"` + Byte_ string `json:"byte"` Binary string `json:"binary,omitempty"` - Date time.Time `json:"date,omitempty"` + Date time.Time `json:"date"` DateTime time.Time `json:"dateTime,omitempty"` Uuid string `json:"uuid,omitempty"` - Password string `json:"password,omitempty"` + Password string `json:"password"` } diff --git a/samples/client/petstore/go/go-petstore/name.go b/samples/client/petstore/go/go-petstore/name.go index c29919ccb189..cd427f8a861a 100644 --- a/samples/client/petstore/go/go-petstore/name.go +++ b/samples/client/petstore/go/go-petstore/name.go @@ -13,7 +13,7 @@ package petstore // Model for testing model name same as property name type Name struct { - Name int32 `json:"name,omitempty"` + Name int32 `json:"name"` SnakeCase int32 `json:"snake_case,omitempty"` diff --git a/samples/client/petstore/go/go-petstore/pet.go b/samples/client/petstore/go/go-petstore/pet.go index 7e44791e180f..83763f9c2c79 100644 --- a/samples/client/petstore/go/go-petstore/pet.go +++ b/samples/client/petstore/go/go-petstore/pet.go @@ -16,9 +16,9 @@ type Pet struct { Category Category `json:"category,omitempty"` - Name string `json:"name,omitempty"` + Name string `json:"name"` - PhotoUrls []string `json:"photoUrls,omitempty"` + PhotoUrls []string `json:"photoUrls"` Tags []Tag `json:"tags,omitempty"`