Skip to content

Commit 4b5de3c

Browse files
pkg/generator: use the qualified ref filename so it can be found (#375)
1 parent b9a4d3b commit 4b5de3c

File tree

6 files changed

+48
-1
lines changed

6 files changed

+48
-1
lines changed

pkg/generator/schema_generator.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -122,7 +122,7 @@ func (g *schemaGenerator) generateReferencedType(t *schemas.Type) (codegen.Type,
122122
return nil, oerr
123123
}
124124

125-
sg = newSchemaGenerator(g.Generator, schema, fileName, output)
125+
sg = newSchemaGenerator(g.Generator, schema, qualified, output)
126126
}
127127

128128
var def *schemas.Type
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
{
2+
"$schema": "http://json-schema.org/draft-07/schema#",
3+
"$id": "http://example.com/schemas/schema-base.json",
4+
"title": "schema-base",
5+
"type": "array",
6+
"items": {
7+
"type": "integer"
8+
}
9+
}
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
{
2+
"$schema": "http://json-schema.org/draft-07/schema#",
3+
"$id": "http://example.com/schemas/schema-override.json",
4+
"title": "schema-override",
5+
"$ref": "./schema-base.json",
6+
"description": "An overridden description",
7+
"default": [1, 2, 3]
8+
}

tests/data/refWithOverridesPath/schema.go

Lines changed: 10 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
{
2+
"$schema": "http://json-schema.org/draft-07/schema#",
3+
"$id": "http://example.com/schemas/schema.json",
4+
"type": "object",
5+
"properties": {
6+
"prop": {
7+
"$ref": "./schema-override.json"
8+
}
9+
}
10+
}

tests/generation_test.go

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -223,6 +223,16 @@ func TestDeeplyNestedMinimalNames(t *testing.T) {
223223
testExamples(t, cfg, "./data/deeplyNested")
224224
}
225225

226+
func TestRefWithOverridesPath(t *testing.T) {
227+
t.Parallel()
228+
229+
cfg := basicConfig
230+
cfg.OnlyModels = true
231+
cfg.StructNameFromTitle = true
232+
233+
testExampleFile(t, cfg, "./data/refWithOverridesPath/schema.json")
234+
}
235+
226236
func testExamples(t *testing.T, cfg generator.Config, dataDir string) {
227237
t.Helper()
228238

0 commit comments

Comments
 (0)