@@ -21,7 +21,7 @@ import (
2121 "github.com/stretchr/testify/assert"
2222)
2323
24- func TestVersions (t * testing.T ) {
24+ func TestVersions_Run (t * testing.T ) {
2525 fs := afero .NewMemMapFs ()
2626 opts := & Opts {
2727 basePath : "../../../test/data/base_spec.json" ,
@@ -43,7 +43,7 @@ func TestVersions(t *testing.T) {
4343 assert .Contains (t , string (b ), "2023-02-01" )
4444}
4545
46- func TestVersionWithEnv (t * testing.T ) {
46+ func TestVersion_RunWithEnv (t * testing.T ) {
4747 fs := afero .NewMemMapFs ()
4848 opts := & Opts {
4949 basePath : "../../../test/data/base_spec.json" ,
@@ -65,3 +65,77 @@ func TestVersionWithEnv(t *testing.T) {
6565 assert .NotEmpty (t , b )
6666 assert .Contains (t , string (b ), "2023-02-01" )
6767}
68+
69+ func TestVersion_RunWithPreview (t * testing.T ) {
70+ fs := afero .NewMemMapFs ()
71+ opts := & Opts {
72+ basePath : "../../../test/data/base_spec_with_preview.json" ,
73+ outputPath : "foas.json" ,
74+ fs : fs ,
75+ env : "staging" ,
76+ }
77+
78+ if err := opts .Run (); err != nil {
79+ t .Fatalf ("Run() unexpected error: %v" , err )
80+ }
81+
82+ b , err := afero .ReadFile (fs , opts .outputPath )
83+ if err != nil {
84+ t .Fatalf ("ReadFile() unexpected error: %v" , err )
85+ }
86+
87+ // Check initial versions
88+ assert .NotEmpty (t , b )
89+ assert .Contains (t , string (b ), "2023-02-01" )
90+ assert .Contains (t , string (b ), "preview" )
91+ }
92+
93+ func TestVersion_RunStabilityLevelPreview (t * testing.T ) {
94+ fs := afero .NewMemMapFs ()
95+ opts := & Opts {
96+ basePath : "../../../test/data/base_spec_with_preview.json" ,
97+ outputPath : "foas.json" ,
98+ fs : fs ,
99+ env : "staging" ,
100+ stabilityLevel : "PREVIEW" ,
101+ }
102+
103+ if err := opts .Run (); err != nil {
104+ t .Fatalf ("Run() unexpected error: %v" , err )
105+ }
106+
107+ b , err := afero .ReadFile (fs , opts .outputPath )
108+ if err != nil {
109+ t .Fatalf ("ReadFile() unexpected error: %v" , err )
110+ }
111+
112+ // Check initial versions
113+ assert .NotEmpty (t , b )
114+ assert .NotContains (t , string (b ), "2023-02-01" )
115+ assert .Contains (t , string (b ), "preview" )
116+ }
117+
118+ func TestVersion_RunStabilityLevelStable (t * testing.T ) {
119+ fs := afero .NewMemMapFs ()
120+ opts := & Opts {
121+ basePath : "../../../test/data/base_spec_with_preview.json" ,
122+ outputPath : "foas.json" ,
123+ fs : fs ,
124+ env : "staging" ,
125+ stabilityLevel : "STABLE" ,
126+ }
127+
128+ if err := opts .Run (); err != nil {
129+ t .Fatalf ("Run() unexpected error: %v" , err )
130+ }
131+
132+ b , err := afero .ReadFile (fs , opts .outputPath )
133+ if err != nil {
134+ t .Fatalf ("ReadFile() unexpected error: %v" , err )
135+ }
136+
137+ // Check initial versions
138+ assert .NotEmpty (t , b )
139+ assert .Contains (t , string (b ), "2023-02-01" )
140+ assert .NotContains (t , string (b ), "preview" )
141+ }
0 commit comments