Skip to content

Commit 339522d

Browse files
chore(internal): add tests for breaking change detection
1 parent 417979e commit 339522d

File tree

3 files changed

+85
-1
lines changed

3 files changed

+85
-1
lines changed
Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
name: CI
2+
on:
3+
pull_request:
4+
branches:
5+
- main
6+
- next
7+
8+
jobs:
9+
detect_breaking_changes:
10+
runs-on: 'ubuntu-latest'
11+
name: detect-breaking-changes
12+
if: github.repository == 'openai/openai-go'
13+
steps:
14+
- name: Calculate fetch-depth
15+
run: |
16+
echo "FETCH_DEPTH=$(expr ${{ github.event.pull_request.commits }} + 1)" >> $GITHUB_ENV
17+
18+
- uses: actions/checkout@v4
19+
with:
20+
# Ensure we can check out the pull request base in the script below.
21+
fetch-depth: ${{ env.FETCH_DEPTH }}
22+
23+
- name: Setup go
24+
uses: actions/setup-go@v5
25+
with:
26+
go-version-file: ./go.mod
27+
28+
- name: Detect breaking changes
29+
run: ./scripts/detect-breaking-changes ${{ github.event.pull_request.base.sha }}

.stats.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
11
configured_endpoints: 97
22
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/openai%2Fopenai-ef4ecb19eb61e24c49d77fef769ee243e5279bc0bdbaee8d0f8dba4da8722559.yml
33
openapi_spec_hash: 1b8a9767c9f04e6865b06c41948cdc24
4-
config_hash: fd2af1d5eff0995bb7dc02ac9a34851d
4+
config_hash: cae2d1f187b5b9f8dfa00daa807da42a

scripts/detect-breaking-changes

Lines changed: 55 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,55 @@
1+
#!/usr/bin/env bash
2+
3+
set -e
4+
5+
cd "$(dirname "$0")/.."
6+
7+
echo "==> Detecting breaking changes"
8+
9+
TEST_PATHS=(
10+
client_test.go
11+
completion_test.go
12+
chatcompletion_test.go
13+
chatcompletionmessage_test.go
14+
embedding_test.go
15+
file_test.go
16+
image_test.go
17+
audiotranscription_test.go
18+
audiotranslation_test.go
19+
audiospeech_test.go
20+
moderation_test.go
21+
model_test.go
22+
finetuningjob_test.go
23+
finetuningjobcheckpoint_test.go
24+
finetuningcheckpointpermission_test.go
25+
finetuningalphagrader_test.go
26+
vectorstore_test.go
27+
vectorstorefile_test.go
28+
vectorstorefilebatch_test.go
29+
betaassistant_test.go
30+
betathread_test.go
31+
betathreadrun_test.go
32+
betathreadrunstep_test.go
33+
betathreadmessage_test.go
34+
batch_test.go
35+
upload_test.go
36+
uploadpart_test.go
37+
responses/response_test.go
38+
responses/inputitem_test.go
39+
container_test.go
40+
containerfile_test.go
41+
containerfilecontent_test.go
42+
usage_test.go
43+
paginationauto_test.go
44+
paginationmanual_test.go
45+
)
46+
47+
for PATHSPEC in "${TEST_PATHS[@]}"; do
48+
# Try to check out previous versions of the test files
49+
# with the current SDK.
50+
git checkout "$1" -- "${PATHSPEC}" 2>/dev/null || true
51+
done
52+
53+
# Instead of running the tests, use the linter to check if an
54+
# older test is no longer compatible with the latest SDK.
55+
./scripts/lint

0 commit comments

Comments
 (0)