Skip to content

Commit 87a46b1

Browse files
docs: update and fix examples
1 parent b5d6cd4 commit 87a46b1

File tree

2 files changed

+196
-86
lines changed

2 files changed

+196
-86
lines changed

arazzo/README.md

Lines changed: 86 additions & 86 deletions
Original file line numberDiff line numberDiff line change
@@ -20,20 +20,20 @@ import (
2020
)
2121

2222
func main() {
23-
ctx := context.Background()
23+
ctx := context.Background()
2424

25-
data, err := os.ReadFile("arazzo.yaml")
26-
if err != nil {
27-
panic(err)
28-
}
25+
f, err := os.Open("arazzo.yaml")
26+
if err != nil {
27+
panic(err)
28+
}
2929

30-
arazzo, validationErrs, err := arazzo.Unmarshal(ctx, data, "arazzo.yaml")
31-
if err != nil {
32-
panic(err)
33-
}
30+
arazzo, validationErrs, err := arazzo.Unmarshal(ctx, f)
31+
if err != nil {
32+
panic(err)
33+
}
3434

35-
fmt.Printf("%+v\n", arazzo)
36-
fmt.Printf("%+v\n", validationErrs)
35+
fmt.Printf("%+v\n", arazzo)
36+
fmt.Printf("%+v\n", validationErrs)
3737
}
3838
```
3939

@@ -47,29 +47,30 @@ import (
4747
"fmt"
4848

4949
"github.com/speakeasy-api/openapi/arazzo"
50+
"github.com/speakeasy-api/openapi/pointer"
5051
)
5152

5253
func main() {
53-
ctx := context.Background()
54-
55-
arazzo := &arazzo.Arazzo{
56-
Arazzo: Version,
57-
Info: arazzo.Info{
58-
Title: "My Workflow",
59-
Summary: arazzo.pointer.From("A summary"),
60-
Version: "1.0.0",
61-
},
62-
// ...
63-
}
64-
65-
buf := bytes.NewBuffer([]byte{})
66-
67-
err := arazzo.Marshal(ctx, buf)
68-
if err != nil {
69-
panic(err)
70-
}
71-
72-
fmt.Printf("%s", buf.String())
54+
ctx := context.Background()
55+
56+
arazzo := &arazzo.Arazzo{
57+
Arazzo: arazzo.Version,
58+
Info: arazzo.Info{
59+
Title: "My Workflow",
60+
Summary: pointer.From("A summary"),
61+
Version: "1.0.0",
62+
},
63+
// ...
64+
}
65+
66+
buf := bytes.NewBuffer([]byte{})
67+
68+
err := arazzo.Marshal(ctx, buf)
69+
if err != nil {
70+
panic(err)
71+
}
72+
73+
fmt.Printf("%s", buf.String())
7374
}
7475
```
7576

@@ -86,28 +87,27 @@ import (
8687
)
8788

8889
func main() {
89-
ctx := context.Background()
90+
ctx := context.Background()
9091

91-
data, err := os.ReadFile("arazzo.yaml")
92-
if err != nil {
93-
panic(err)
94-
}
92+
f, err := os.Open("arazzo.yaml")
93+
if err != nil {
94+
panic(err)
95+
}
9596

96-
arazzo, _, err := arazzo.Unmarshal(ctx, data, "arazzo.yaml")
97-
if err != nil {
98-
panic(err)
99-
}
100-
101-
arazzo.Info.Title = "My updated workflow title"
97+
arazzo, _, err := arazzo.Unmarshal(ctx, f)
98+
if err != nil {
99+
panic(err)
100+
}
102101

103-
buf := bytes.NewBuffer([]byte{})
102+
arazzo.Info.Title = "My updated workflow title"
104103

105-
err := arazzo.Marshal(ctx, buf)
106-
if err != nil {
107-
panic(err)
108-
}
104+
buf := bytes.NewBuffer([]byte{})
109105

110-
fmt.Printf("%s", buf.String())
106+
if err := arazzo.Marshal(ctx, buf); err != nil {
107+
panic(err)
108+
}
109+
110+
fmt.Printf("%s", buf.String())
111111
}
112112
```
113113

@@ -125,29 +125,29 @@ import (
125125
)
126126

127127
func main() {
128-
ctx := context.Background()
129-
130-
data, err := os.ReadFile("arazzo.yaml")
131-
if err != nil {
132-
panic(err)
133-
}
134-
135-
arazzo, _, err := arazzo.Unmarshal(ctx, data, "arazzo.yaml")
136-
if err != nil {
137-
panic(err)
138-
}
139-
140-
err = arazzo.Walk(ctx, func(ctx context.Context, node, parent arazzo.MatchFunc, arazzo *arazzo.Arazzo) error {
141-
return node(arazzo.Matcher{
142-
Workflow: func(workflow *arazzo.Workflow) error {
143-
fmt.Printf("Workflow: %s\n", workflow.WorkflowID)
144-
return nil
145-
},
146-
})
147-
})
148-
if err != nil {
149-
panic(err)
150-
}
128+
ctx := context.Background()
129+
130+
f, err := os.Open("arazzo.yaml")
131+
if err != nil {
132+
panic(err)
133+
}
134+
135+
a, _, err := arazzo.Unmarshal(ctx, f)
136+
if err != nil {
137+
panic(err)
138+
}
139+
140+
err = arazzo.Walk(ctx, a, func(ctx context.Context, node, parent arazzo.MatchFunc, a *arazzo.Arazzo) error {
141+
return node(arazzo.Matcher{
142+
Workflow: func(workflow *arazzo.Workflow) error {
143+
fmt.Printf("Workflow: %s\n", workflow.WorkflowID)
144+
return nil
145+
},
146+
})
147+
})
148+
if err != nil {
149+
panic(err)
150+
}
151151
}
152152
```
153153

@@ -165,20 +165,20 @@ import (
165165
)
166166

167167
func main() {
168-
ctx := context.Background()
169-
170-
data, err := os.ReadFile("arazzo.yaml")
171-
if err != nil {
172-
panic(err)
173-
}
174-
175-
arazzo, validationErrs, err := arazzo.Unmarshal(ctx, data, "arazzo.yaml")
176-
if err != nil {
177-
panic(err)
178-
}
179-
180-
for _, err := range validationErrs {
181-
fmt.Printf("%s\n", err.Error())
182-
}
168+
ctx := context.Background()
169+
170+
f, err := os.Open("arazzo.yaml")
171+
if err != nil {
172+
panic(err)
173+
}
174+
175+
_, validationErrs, err := arazzo.Unmarshal(ctx, f)
176+
if err != nil {
177+
panic(err)
178+
}
179+
180+
for _, err := range validationErrs {
181+
fmt.Printf("%s\n", err.Error())
182+
}
183183
}
184184
```

arazzo/arazzo_examples_test.go

Lines changed: 110 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@ import (
77
"os"
88

99
"github.com/speakeasy-api/openapi/arazzo"
10+
"github.com/speakeasy-api/openapi/pointer"
1011
)
1112

1213
func Example_readAndMutate() {
@@ -42,3 +43,112 @@ func Example_readAndMutate() {
4243

4344
fmt.Println(buf.String())
4445
}
46+
47+
// The below examples should be copied into the README.md file if every changed TODO: automate this
48+
func Example_reading() {
49+
ctx := context.Background()
50+
51+
f, err := os.Open("arazzo.yaml")
52+
if err != nil {
53+
panic(err)
54+
}
55+
56+
arazzo, validationErrs, err := arazzo.Unmarshal(ctx, f)
57+
if err != nil {
58+
panic(err)
59+
}
60+
61+
fmt.Printf("%+v\n", arazzo)
62+
fmt.Printf("%+v\n", validationErrs)
63+
}
64+
65+
func Example_creating() {
66+
ctx := context.Background()
67+
68+
arazzo := &arazzo.Arazzo{
69+
Arazzo: arazzo.Version,
70+
Info: arazzo.Info{
71+
Title: "My Workflow",
72+
Summary: pointer.From("A summary"),
73+
Version: "1.0.0",
74+
},
75+
// ...
76+
}
77+
78+
buf := bytes.NewBuffer([]byte{})
79+
80+
err := arazzo.Marshal(ctx, buf)
81+
if err != nil {
82+
panic(err)
83+
}
84+
85+
fmt.Printf("%s", buf.String())
86+
}
87+
88+
func Example_mutating() {
89+
ctx := context.Background()
90+
91+
f, err := os.Open("arazzo.yaml")
92+
if err != nil {
93+
panic(err)
94+
}
95+
96+
arazzo, _, err := arazzo.Unmarshal(ctx, f)
97+
if err != nil {
98+
panic(err)
99+
}
100+
101+
arazzo.Info.Title = "My updated workflow title"
102+
103+
buf := bytes.NewBuffer([]byte{})
104+
105+
if err := arazzo.Marshal(ctx, buf); err != nil {
106+
panic(err)
107+
}
108+
109+
fmt.Printf("%s", buf.String())
110+
}
111+
112+
func Example_walking() {
113+
ctx := context.Background()
114+
115+
f, err := os.Open("arazzo.yaml")
116+
if err != nil {
117+
panic(err)
118+
}
119+
120+
a, _, err := arazzo.Unmarshal(ctx, f)
121+
if err != nil {
122+
panic(err)
123+
}
124+
125+
err = arazzo.Walk(ctx, a, func(ctx context.Context, node, parent arazzo.MatchFunc, a *arazzo.Arazzo) error {
126+
return node(arazzo.Matcher{
127+
Workflow: func(workflow *arazzo.Workflow) error {
128+
fmt.Printf("Workflow: %s\n", workflow.WorkflowID)
129+
return nil
130+
},
131+
})
132+
})
133+
if err != nil {
134+
panic(err)
135+
}
136+
}
137+
138+
func Example_validating() {
139+
ctx := context.Background()
140+
141+
f, err := os.Open("arazzo.yaml")
142+
if err != nil {
143+
panic(err)
144+
}
145+
146+
_, validationErrs, err := arazzo.Unmarshal(ctx, f)
147+
if err != nil {
148+
panic(err)
149+
}
150+
151+
for _, err := range validationErrs {
152+
fmt.Printf("%s\n", err.Error())
153+
}
154+
}

0 commit comments

Comments
 (0)