Closed pixellos closed 3 years ago
Tested on generators:
Given:
Whe:
Then
Should:
Old behavior: Generated code with discriminators not compiling
No discriminators:
export class Base { 'str': string; 'i': number; static readonly discriminator: string | undefined = undefined; static readonly attributeTypeMap: Array<{name: string, baseName: string, type: string, format: string}> = [ { "name": "str", "baseName": "str", "type": "string", "format": "" }, { "name": "i", "baseName": "i", "type": "number", "format": "int32" } ]; static getAttributeTypeMap() { return Base.attributeTypeMap; } public constructor() { } } export class A { 'str': string; static readonly discriminator: string | undefined = undefined; static readonly attributeTypeMap: Array<{name: string, baseName: string, type: string, format: string}> = [ { "name": "str", "baseName": "str", "type": "string", "format": "" } ]; static getAttributeTypeMap() { return A.attributeTypeMap; } public constructor() { } }
Expected Behavior (current):
export class Base { 'type'?: string; 'i': number; 'l': number; static readonly discriminator: string | undefined = "type"; static readonly attributeTypeMap: Array<{name: string, baseName: string, type: string, format: string}> = [ { "name": "type", "baseName": "type", "type": "string", "format": "string" }, { "name": "i", "baseName": "i", "type": "number", "format": "int32" }, { "name": "l", "baseName": "l", "type": "number", "format": "int64" } ]; static getAttributeTypeMap() { return Base.attributeTypeMap; } public constructor() { this.type = "Base"; } } export class B { 'i': number; 'type'?: string; static readonly discriminator: string | undefined = "type"; static readonly attributeTypeMap: Array<{name: string, baseName: string, type: string, format: string}> = [ { "name": "i", "baseName": "i", "type": "number", "format": "int32" }, { "name": "type", "baseName": "type", "type": "string", "format": "string" } ]; static getAttributeTypeMap() { return B.attributeTypeMap; } public constructor() { this.type = "B"; } }
https://github.com/papsign/Ktor-OpenAPI-Generator/pull/90
PR Accepted
@Wicpar Thanks, is that possible to generate beta build from that?
Yes I'm waiting for another pr though
Tested on generators:
Given:
Whe:
Then
Should:
Old behavior: Generated code with discriminators not compiling
No discriminators:
Expected Behavior (current):
https://github.com/papsign/Ktor-OpenAPI-Generator/pull/90