[Julia] add Julia tests to GitHub workflow (#16089)

* [Julia] add Julia tests to GitHub workflow

Added Julia client and server tests to GitHub workflow

* fix paths
This commit is contained in:
Tanmay Mohapatra 2023-07-13 21:49:56 +05:30 committed by GitHub
parent 1531ad48d0
commit 6a263565e7
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
5 changed files with 66 additions and 0 deletions

41
.github/workflows/samples-julia.yaml vendored Normal file
View File

@ -0,0 +1,41 @@
name: Samples Julia
on:
push:
paths:
- 'samples/client/petstore/julia/**'
- 'samples/server/petstore/julia/**'
pull_request:
paths:
- 'samples/client/petstore/julia/**'
- 'samples/server/petstore/julia/**'
jobs:
tests-julia:
name: Tests Julia
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: julia-actions/setup-julia@v1
with:
version: 1
arch: x64
- name: Test
shell: bash
working-directory: 'samples'
run: |
currdir=`pwd`
# Using a specific version of OpenAPI.jl helps avoid introducing version inter-dependencies
# and allows breaking changes to be done in either repos independently
# Using develop mode to install package so that it is easier to modify the package test files
julia -e "using Pkg; Pkg.develop(\"OpenAPI\");"
cd ~/.julia/dev/OpenAPI
git checkout v0.1.12
cd $currdir
rm -rf ~/.julia/dev/OpenAPI/test/client/petstore_v3/petstore
rm -rf ~/.julia/dev/OpenAPI/test/server/petstore_v3/petstore
cp -r client/petstore/julia ~/.julia/dev/OpenAPI/test/client/petstore_v3/petstore
cp -r server/petstore/julia ~/.julia/dev/OpenAPI/test/server/petstore_v3/petstore
# setting this env runs only the tests relevant to the openapi-generator repo
export OPENAPI_GENERATOR=true
julia -e "using Pkg; Pkg.test(\"OpenAPI\");"

View File

@ -5,3 +5,5 @@ templateDir: modules/openapi-generator/src/main/resources/julia-client
additionalProperties:
hideGenerationTimestamp: "true"
packageName: PetStoreClient
exportOperations: "true"
exportModels: "true"

View File

@ -5,3 +5,5 @@ templateDir: modules/openapi-generator/src/main/resources/julia-server
additionalProperties:
hideGenerationTimestamp: "true"
packageName: PetStoreServer
exportOperations: "true"
exportModels: "true"

View File

@ -15,4 +15,17 @@ include("apis/api_PetApi.jl")
include("apis/api_StoreApi.jl")
include("apis/api_UserApi.jl")
# export models
export ApiResponse
export Category
export Order
export Pet
export Tag
export User
# export operations
export PetApi
export StoreApi
export UserApi
end # module PetStoreClient

View File

@ -112,4 +112,12 @@ function register(router::HTTP.Router, impl; path_prefix::String="", optional_mi
return router
end
# export models
export ApiResponse
export Category
export Order
export Pet
export Tag
export User
end # module PetStoreServer