Diff of the two buildlogs: -- --- b1/build.log 2025-01-14 07:36:16.810372319 +0000 +++ b2/build.log 2025-01-14 07:38:35.588031926 +0000 @@ -1,6 +1,6 @@ I: pbuilder: network access will be disabled during build -I: Current time: Mon Jan 13 19:35:00 -12 2025 -I: pbuilder-time-stamp: 1736840100 +I: Current time: Tue Feb 17 03:59:19 +14 2026 +I: pbuilder-time-stamp: 1771250359 I: Building the build Environment I: extracting base tarball [/var/cache/pbuilder/trixie-reproducible-base.tgz] I: copying local configuration @@ -24,52 +24,84 @@ dpkg-source: info: applying 000-fix-32bit-ftbfs.patch I: Not using root during the build. I: Installing the build-deps -I: user script /srv/workspace/pbuilder/292608/tmp/hooks/D02_print_environment starting +I: user script /srv/workspace/pbuilder/2657000/tmp/hooks/D01_modify_environment starting +debug: Running on codethink01-arm64. +I: Changing host+domainname to test build reproducibility +I: Adding a custom variable just for the fun of it... +I: Changing /bin/sh to bash +'/bin/sh' -> '/bin/bash' +lrwxrwxrwx 1 root root 9 Feb 16 13:59 /bin/sh -> /bin/bash +I: Setting pbuilder2's login shell to /bin/bash +I: Setting pbuilder2's GECOS to second user,second room,second work-phone,second home-phone,second other +I: user script /srv/workspace/pbuilder/2657000/tmp/hooks/D01_modify_environment finished +I: user script /srv/workspace/pbuilder/2657000/tmp/hooks/D02_print_environment starting I: set - BUILDDIR='/build/reproducible-path' - BUILDUSERGECOS='first user,first room,first work-phone,first home-phone,first other' - BUILDUSERNAME='pbuilder1' - BUILD_ARCH='arm64' - DEBIAN_FRONTEND='noninteractive' + BASH=/bin/sh + BASHOPTS=checkwinsize:cmdhist:complete_fullquote:extquote:force_fignore:globasciiranges:globskipdots:hostcomplete:interactive_comments:patsub_replacement:progcomp:promptvars:sourcepath + BASH_ALIASES=() + BASH_ARGC=() + BASH_ARGV=() + BASH_CMDS=() + BASH_LINENO=([0]="12" [1]="0") + BASH_LOADABLES_PATH=/usr/local/lib/bash:/usr/lib/bash:/opt/local/lib/bash:/usr/pkg/lib/bash:/opt/pkg/lib/bash:. + BASH_SOURCE=([0]="/tmp/hooks/D02_print_environment" [1]="/tmp/hooks/D02_print_environment") + BASH_VERSINFO=([0]="5" [1]="2" [2]="37" [3]="1" [4]="release" [5]="aarch64-unknown-linux-gnu") + BASH_VERSION='5.2.37(1)-release' + BUILDDIR=/build/reproducible-path + BUILDUSERGECOS='second user,second room,second work-phone,second home-phone,second other' + BUILDUSERNAME=pbuilder2 + BUILD_ARCH=arm64 + DEBIAN_FRONTEND=noninteractive DEB_BUILD_OPTIONS='buildinfo=+all reproducible=+all parallel=12 ' - DISTRIBUTION='trixie' - HOME='/root' - HOST_ARCH='arm64' + DIRSTACK=() + DISTRIBUTION=trixie + EUID=0 + FUNCNAME=([0]="Echo" [1]="main") + GROUPS=() + HOME=/root + HOSTNAME=i-capture-the-hostname + HOSTTYPE=aarch64 + HOST_ARCH=arm64 IFS=' ' - INVOCATION_ID='b9cc88ffd28f47138737c41927d9f1a2' - LANG='C' - LANGUAGE='en_US:en' - LC_ALL='C' - MAIL='/var/mail/root' - OPTIND='1' - PATH='/usr/sbin:/usr/bin:/sbin:/bin:/usr/games' - PBCURRENTCOMMANDLINEOPERATION='build' - PBUILDER_OPERATION='build' - PBUILDER_PKGDATADIR='/usr/share/pbuilder' - PBUILDER_PKGLIBDIR='/usr/lib/pbuilder' - PBUILDER_SYSCONFDIR='/etc' - PPID='292608' - PS1='# ' - PS2='> ' + INVOCATION_ID=857268cde00c4a3e9979c250a7743e99 + LANG=C + LANGUAGE=nl_BE:nl + LC_ALL=C + MACHTYPE=aarch64-unknown-linux-gnu + MAIL=/var/mail/root + OPTERR=1 + OPTIND=1 + OSTYPE=linux-gnu + PATH=/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path + PBCURRENTCOMMANDLINEOPERATION=build + PBUILDER_OPERATION=build + PBUILDER_PKGDATADIR=/usr/share/pbuilder + PBUILDER_PKGLIBDIR=/usr/lib/pbuilder + PBUILDER_SYSCONFDIR=/etc + PIPESTATUS=([0]="0") + POSIXLY_CORRECT=y + PPID=2657000 PS4='+ ' - PWD='/' - SHELL='/bin/bash' - SHLVL='2' - SUDO_COMMAND='/usr/bin/timeout -k 18.1h 18h /usr/bin/ionice -c 3 /usr/bin/nice /usr/sbin/pbuilder --build --configfile /srv/reproducible-results/rbuild-debian/r-b-build.kxNOT2ca/pbuilderrc_0q8a --distribution trixie --hookdir /etc/pbuilder/first-build-hooks --debbuildopts -b --basetgz /var/cache/pbuilder/trixie-reproducible-base.tgz --buildresult /srv/reproducible-results/rbuild-debian/r-b-build.kxNOT2ca/b1 --logfile b1/build.log golang-github-grpc-ecosystem-grpc-gateway_2.20.0-2.dsc' - SUDO_GID='109' - SUDO_UID='104' - SUDO_USER='jenkins' - TERM='unknown' - TZ='/usr/share/zoneinfo/Etc/GMT+12' - USER='root' - _='/usr/bin/systemd-run' - http_proxy='http://192.168.101.4:3128' + PWD=/ + SHELL=/bin/bash + SHELLOPTS=braceexpand:errexit:hashall:interactive-comments:posix + SHLVL=3 + SUDO_COMMAND='/usr/bin/timeout -k 24.1h 24h /usr/bin/ionice -c 3 /usr/bin/nice -n 11 /usr/bin/unshare --uts -- /usr/sbin/pbuilder --build --configfile /srv/reproducible-results/rbuild-debian/r-b-build.kxNOT2ca/pbuilderrc_tvK0 --distribution trixie --hookdir /etc/pbuilder/rebuild-hooks --debbuildopts -b --basetgz /var/cache/pbuilder/trixie-reproducible-base.tgz --buildresult /srv/reproducible-results/rbuild-debian/r-b-build.kxNOT2ca/b2 --logfile b2/build.log golang-github-grpc-ecosystem-grpc-gateway_2.20.0-2.dsc' + SUDO_GID=109 + SUDO_UID=104 + SUDO_USER=jenkins + TERM=unknown + TZ=/usr/share/zoneinfo/Etc/GMT-14 + UID=0 + USER=root + _='I: set' + http_proxy=http://192.168.101.4:3128 I: uname -a - Linux codethink04-arm64 6.1.0-29-cloud-arm64 #1 SMP Debian 6.1.123-1 (2025-01-02) aarch64 GNU/Linux + Linux i-capture-the-hostname 6.1.0-29-cloud-arm64 #1 SMP Debian 6.1.123-1 (2025-01-02) aarch64 GNU/Linux I: ls -l /bin - lrwxrwxrwx 1 root root 7 Nov 22 14:40 /bin -> usr/bin -I: user script /srv/workspace/pbuilder/292608/tmp/hooks/D02_print_environment finished + lrwxrwxrwx 1 root root 7 Nov 22 2024 /bin -> usr/bin +I: user script /srv/workspace/pbuilder/2657000/tmp/hooks/D02_print_environment finished -> Attempting to satisfy build-dependencies -> Creating pbuilder-satisfydepends-dummy package Package: pbuilder-satisfydepends-dummy @@ -201,7 +233,7 @@ Get: 74 http://deb.debian.org/debian trixie/main arm64 golang-google-genproto-dev all 0.0~git20210726.e7812ac-4 [5301 kB] Get: 75 http://deb.debian.org/debian trixie/main arm64 golang-github-google-cel-go-dev all 0.18.2+ds-5 [400 kB] Get: 76 http://deb.debian.org/debian trixie/main arm64 golang-github-rogpeppe-fastuuid-dev all 0.0~git20150106.0.6724a57-2.1 [4292 B] -Fetched 86.0 MB in 0s (199 MB/s) +Fetched 86.0 MB in 1s (117 MB/s) Preconfiguring packages ... Selecting previously unselected package sensible-utils. (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 19968 files and directories currently installed.) @@ -520,7 +552,11 @@ Building tag database... -> Finished parsing the build-deps I: Building the package -I: Running cd /build/reproducible-path/golang-github-grpc-ecosystem-grpc-gateway-2.20.0/ && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games" HOME="/nonexistent/first-build" dpkg-buildpackage -us -uc -b && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games" HOME="/nonexistent/first-build" dpkg-genchanges -S > ../golang-github-grpc-ecosystem-grpc-gateway_2.20.0-2_source.changes +I: user script /srv/workspace/pbuilder/2657000/tmp/hooks/A99_set_merged_usr starting +Not re-configuring usrmerge for trixie +I: user script /srv/workspace/pbuilder/2657000/tmp/hooks/A99_set_merged_usr finished +hostname: Name or service not known +I: Running cd /build/reproducible-path/golang-github-grpc-ecosystem-grpc-gateway-2.20.0/ && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path" HOME="/nonexistent/second-build" dpkg-buildpackage -us -uc -b && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path" HOME="/nonexistent/second-build" dpkg-genchanges -S > ../golang-github-grpc-ecosystem-grpc-gateway_2.20.0-2_source.changes dpkg-buildpackage: info: source package golang-github-grpc-ecosystem-grpc-gateway dpkg-buildpackage: info: source version 2.20.0-2 dpkg-buildpackage: info: source distribution unstable @@ -540,120 +576,118 @@ dh_auto_build -O--buildsystem=golang cd obj-aarch64-linux-gnu && go install -trimpath -v -p 12 github.com/grpc-ecosystem/grpc-gateway/internal/casing github.com/grpc-ecosystem/grpc-gateway/internal/codegenerator github.com/grpc-ecosystem/grpc-gateway/internal/descriptor github.com/grpc-ecosystem/grpc-gateway/internal/descriptor/apiconfig github.com/grpc-ecosystem/grpc-gateway/internal/descriptor/openapiconfig github.com/grpc-ecosystem/grpc-gateway/internal/generator github.com/grpc-ecosystem/grpc-gateway/internal/httprule github.com/grpc-ecosystem/grpc-gateway/protoc-gen-grpc-gateway github.com/grpc-ecosystem/grpc-gateway/protoc-gen-grpc-gateway/internal/gengateway github.com/grpc-ecosystem/grpc-gateway/protoc-gen-openapiv2 github.com/grpc-ecosystem/grpc-gateway/protoc-gen-openapiv2/internal/genopenapi github.com/grpc-ecosystem/grpc-gateway/protoc-gen-openapiv2/options github.com/grpc-ecosystem/grpc-gateway/runtime github.com/grpc-ecosystem/grpc-gateway/runtime/internal/examplepb github.com/grpc-ecosystem/grpc-gateway/utilities internal/godebugs -internal/goexperiment internal/byteorder -internal/goos internal/unsafeheader +internal/race internal/goarch internal/coverage/rtcov +internal/goexperiment internal/profilerecord -internal/race -internal/runtime/syscall +internal/goos +internal/cpu unicode/utf8 cmp -math/bits sync/atomic -internal/cpu internal/abi runtime/internal/math runtime/internal/sys +math/bits +internal/chacha8rand +internal/runtime/syscall internal/asan internal/itoa internal/msan unicode -internal/chacha8rand internal/gover internal/goversion google.golang.org/protobuf/internal/flags unicode/utf16 encoding +log/internal math google.golang.org/protobuf/internal/set -log/internal internal/nettrace google.golang.org/grpc/serviceconfig container/list crypto/internal/alias crypto/subtle -vendor/golang.org/x/crypto/cryptobyte/asn1 +crypto/internal/boring/sig internal/bytealg internal/runtime/atomic +vendor/golang.org/x/crypto/cryptobyte/asn1 vendor/golang.org/x/crypto/internal/alias -crypto/internal/boring/sig -internal/stringslite internal/runtime/exithook +internal/stringslite runtime internal/reflectlite +sync iter internal/weak -sync -maps slices -internal/singleflight -google.golang.org/protobuf/internal/pragma -internal/testlog +maps internal/bisect +internal/testlog +google.golang.org/protobuf/internal/pragma +internal/singleflight runtime/cgo +internal/godebug errors sort internal/oserror io -path -internal/godebug -google.golang.org/grpc/internal/buffer -vendor/golang.org/x/net/dns/dnsmessage -math/rand/v2 +math/rand syscall crypto/internal/edwards25519/field -crypto/internal/nistec/fiat strconv -container/heap +math/rand/v2 +vendor/golang.org/x/net/dns/dnsmessage +crypto/internal/nistec/fiat +path +google.golang.org/grpc/internal/buffer +strings bytes -math/rand +container/heap hash -strings golang.org/x/text/internal/tag -internal/concurrent +crypto/internal/randutil hash/fnv hash/crc32 -crypto/internal/randutil -unique +internal/concurrent +google.golang.org/grpc/internal/grpcrand crypto/internal/edwards25519 +unique +golang.org/x/text/transform +crypto/cipher +vendor/golang.org/x/text/transform reflect -internal/types/errors -crypto -crypto/rc4 -google.golang.org/grpc/internal/grpcrand -crypto/md5 +bufio go/build/constraint go/version +internal/types/errors regexp/syntax -html net/netip -bufio -golang.org/x/text/transform -crypto/cipher -vendor/golang.org/x/text/transform +html +crypto +crypto/rc4 net/http/internal/ascii -crypto/internal/boring crypto/des +crypto/internal/boring +crypto/md5 crypto/aes crypto/sha512 crypto/hmac crypto/sha1 crypto/sha256 vendor/golang.org/x/crypto/hkdf -internal/syscall/execenv -internal/syscall/unix -time regexp -google.golang.org/grpc/backoff +time +internal/syscall/unix +internal/syscall/execenv context -io/fs -google.golang.org/grpc/keepalive internal/poll -internal/fmtsort -encoding/binary +google.golang.org/grpc/keepalive +io/fs +google.golang.org/grpc/backoff google.golang.org/grpc/internal/backoff google.golang.org/grpc/internal/grpcsync internal/filepathlite @@ -661,150 +695,152 @@ google.golang.org/protobuf/internal/editiondefaults crypto/internal/nistec os +internal/fmtsort +encoding/binary encoding/base64 -vendor/golang.org/x/crypto/internal/poly1305 -vendor/golang.org/x/crypto/chacha20 golang.org/x/sys/unix +vendor/golang.org/x/crypto/chacha20 +vendor/golang.org/x/crypto/internal/poly1305 +crypto/ecdh encoding/pem vendor/golang.org/x/crypto/chacha20poly1305 -crypto/ecdh path/filepath +google.golang.org/grpc/internal/envconfig fmt +vendor/golang.org/x/sys/cpu google.golang.org/protobuf/internal/detrand io/ioutil -google.golang.org/grpc/internal/envconfig -vendor/golang.org/x/sys/cpu net -vendor/golang.org/x/crypto/sha3 github.com/grpc-ecosystem/grpc-gateway/internal/casing +vendor/golang.org/x/crypto/sha3 go/token +go/doc/comment text/tabwriter -google.golang.org/protobuf/internal/errors +flag math/big internal/buildcfg +google.golang.org/protobuf/internal/errors +compress/flate encoding/json google.golang.org/protobuf/internal/version -go/doc/comment -compress/flate -flag golang.org/x/text/internal/language google.golang.org/protobuf/encoding/protowire golang.org/x/text/unicode/norm -google.golang.org/grpc/internal/grpclog go/scanner google.golang.org/protobuf/reflect/protoreflect +google.golang.org/grpc/internal/grpclog log -github.com/grpc-ecosystem/grpc-gateway/utilities -compress/gzip -github.com/grpc-ecosystem/grpc-gateway/internal/httprule go/ast +github.com/grpc-ecosystem/grpc-gateway/utilities gopkg.in/yaml.v3 net/url +github.com/grpc-ecosystem/grpc-gateway/internal/httprule +compress/gzip text/template/parse golang.org/x/net/internal/timeseries -golang.org/x/text/internal/language/compact google.golang.org/protobuf/internal/encoding/messageset google.golang.org/protobuf/internal/strs google.golang.org/protobuf/internal/genid google.golang.org/protobuf/internal/order google.golang.org/protobuf/reflect/protoregistry +google.golang.org/protobuf/internal/encoding/text google.golang.org/protobuf/runtime/protoiface google.golang.org/protobuf/internal/descfmt google.golang.org/protobuf/internal/descopts -google.golang.org/protobuf/internal/encoding/text google.golang.org/protobuf/internal/encoding/json -golang.org/x/text/language -encoding/hex +golang.org/x/text/internal/language/compact google.golang.org/grpc/grpclog -google.golang.org/protobuf/proto -vendor/golang.org/x/text/unicode/bidi -text/template +encoding/hex go/constant crypto/rand +google.golang.org/protobuf/proto +golang.org/x/text/language google.golang.org/protobuf/internal/encoding/defval -crypto/elliptic google.golang.org/grpc/connectivity +crypto/elliptic crypto/internal/bigmod crypto/internal/boring/bbig encoding/asn1 -golang.org/x/text/internal crypto/ed25519 crypto/internal/hpke crypto/internal/mlkem768 -crypto/dsa -golang.org/x/text/cases -google.golang.org/protobuf/encoding/prototext -google.golang.org/protobuf/internal/filedesc go/internal/typeparams go/printer -vendor/golang.org/x/text/secure/bidirule +text/template go/parser -vendor/golang.org/x/text/unicode/norm +crypto/dsa crypto/rsa +vendor/golang.org/x/text/unicode/bidi +golang.org/x/text/internal +vendor/golang.org/x/text/unicode/norm vendor/golang.org/x/net/http2/hpack +google.golang.org/protobuf/encoding/prototext +google.golang.org/protobuf/internal/filedesc +golang.org/x/text/cases +mime vendor/golang.org/x/crypto/cryptobyte crypto/x509/pkix -mime mime/quotedprintable net/http/internal +vendor/golang.org/x/text/secure/bidirule google.golang.org/grpc/attributes google.golang.org/grpc/internal/idle golang.org/x/text/unicode/bidi -crypto/ecdsa golang.org/x/net/http2/hpack +crypto/ecdsa html/template go/types go/format vendor/golang.org/x/net/idna +golang.org/x/text/secure/bidirule google.golang.org/protobuf/internal/encoding/tag google.golang.org/protobuf/encoding/protojson -golang.org/x/text/secure/bidirule golang.org/x/net/idna google.golang.org/protobuf/internal/impl +google.golang.org/protobuf/internal/filetype +google.golang.org/protobuf/runtime/protoimpl net/textproto google.golang.org/grpc/internal -vendor/golang.org/x/net/http/httpproxy -google.golang.org/grpc/internal/resolver/dns/internal crypto/x509 +vendor/golang.org/x/net/http/httpproxy google.golang.org/grpc/internal/syscall -google.golang.org/protobuf/internal/filetype -google.golang.org/grpc/codes -google.golang.org/grpc/metadata -vendor/golang.org/x/net/http/httpguts -mime/multipart -golang.org/x/net/http/httpguts -google.golang.org/grpc/internal/grpcutil -google.golang.org/grpc/internal/balancerload -google.golang.org/grpc/stats -google.golang.org/grpc/tap -google.golang.org/protobuf/runtime/protoimpl -google.golang.org/grpc/encoding +google.golang.org/grpc/internal/resolver/dns/internal google.golang.org/protobuf/types/dynamicpb -google.golang.org/protobuf/types/known/structpb +google.golang.org/protobuf/types/descriptorpb google.golang.org/protobuf/types/known/anypb +google.golang.org/protobuf/types/known/structpb google.golang.org/protobuf/protoadapt google.golang.org/protobuf/types/known/durationpb -google.golang.org/protobuf/types/descriptorpb google.golang.org/protobuf/types/known/timestamppb +google.golang.org/grpc/codes +google.golang.org/grpc/metadata +google.golang.org/grpc/internal/pretty google.golang.org/protobuf/types/known/fieldmaskpb google.golang.org/protobuf/types/known/wrapperspb -google.golang.org/grpc/encoding/proto -github.com/golang/protobuf/ptypes/duration -google.golang.org/grpc/internal/pretty +github.com/golang/protobuf/ptypes/timestamp google.golang.org/genproto/googleapis/rpc/status google.golang.org/genproto/googleapis/api/httpbody -google.golang.org/protobuf/types/known/emptypb -github.com/golang/protobuf/ptypes/timestamp +google.golang.org/grpc/internal/grpcutil +google.golang.org/grpc/internal/balancerload +vendor/golang.org/x/net/http/httpguts +mime/multipart +github.com/golang/protobuf/ptypes/duration google.golang.org/grpc/internal/status +golang.org/x/net/http/httpguts +google.golang.org/grpc/stats +google.golang.org/grpc/encoding +google.golang.org/grpc/tap +google.golang.org/protobuf/types/known/emptypb +google.golang.org/grpc/encoding/proto google.golang.org/grpc/binarylog/grpc_binarylog_v1 google.golang.org/grpc/status google.golang.org/grpc/internal/binarylog -crypto/tls google.golang.org/protobuf/types/gofeaturespb +crypto/tls google.golang.org/protobuf/types/pluginpb -google.golang.org/genproto/googleapis/api/visibility -github.com/grpc-ecosystem/grpc-gateway/protoc-gen-openapiv2/options google.golang.org/genproto/googleapis/api/annotations +github.com/grpc-ecosystem/grpc-gateway/protoc-gen-openapiv2/options +google.golang.org/genproto/googleapis/api/visibility google.golang.org/protobuf/reflect/protodesc github.com/grpc-ecosystem/grpc-gateway/internal/descriptor/apiconfig github.com/grpc-ecosystem/grpc-gateway/internal/descriptor/openapiconfig @@ -814,33 +850,33 @@ github.com/grpc-ecosystem/grpc-gateway/internal/generator github.com/grpc-ecosystem/grpc-gateway/protoc-gen-grpc-gateway/internal/gengateway github.com/grpc-ecosystem/grpc-gateway/protoc-gen-openapiv2/internal/genopenapi +github.com/grpc-ecosystem/grpc-gateway/protoc-gen-grpc-gateway net/http/httptrace google.golang.org/grpc/internal/credentials -net/http google.golang.org/grpc/credentials -github.com/grpc-ecosystem/grpc-gateway/protoc-gen-grpc-gateway +net/http +google.golang.org/grpc/internal/channelz +google.golang.org/grpc/resolver google.golang.org/grpc/credentials/insecure google.golang.org/grpc/peer -google.golang.org/grpc/resolver -google.golang.org/grpc/internal/channelz google.golang.org/grpc/internal/metadata google.golang.org/grpc/internal/resolver/passthrough -google.golang.org/grpc/balancer/grpclb/state google.golang.org/grpc/internal/transport/networktype +google.golang.org/grpc/balancer/grpclb/state google.golang.org/grpc/internal/resolver/unix google.golang.org/grpc/internal/resolver/dns -google.golang.org/grpc/resolver/dns google.golang.org/grpc/channelz +google.golang.org/grpc/resolver/dns google.golang.org/grpc/balancer +github.com/grpc-ecosystem/grpc-gateway/protoc-gen-openapiv2 google.golang.org/grpc/balancer/base google.golang.org/grpc/internal/serviceconfig +google.golang.org/grpc/internal/resolver google.golang.org/grpc/balancer/roundrobin google.golang.org/grpc/internal/balancer/gracefulswitch -google.golang.org/grpc/internal/resolver -github.com/grpc-ecosystem/grpc-gateway/protoc-gen-openapiv2 golang.org/x/net/trace -net/http/httputil golang.org/x/net/http2 +net/http/httputil google.golang.org/grpc/internal/transport google.golang.org/grpc google.golang.org/grpc/health/grpc_health_v1 @@ -861,7 +897,7 @@ --- PASS: TestCamelIdentifier/snake_case_identifier_with_digit_and_package (0.00s) --- PASS: TestCamelIdentifier/snake_case_identifier_with_digit_and_multiple_dots (0.00s) PASS -ok github.com/grpc-ecosystem/grpc-gateway/internal/casing 0.006s +ok github.com/grpc-ecosystem/grpc-gateway/internal/casing 0.044s === RUN TestParseRequest === RUN TestParseRequest/Empty_input_should_produce_empty_output === RUN TestParseRequest/Invalid_reader_should_produce_error @@ -871,7 +907,7 @@ --- PASS: TestParseRequest/Invalid_reader_should_produce_error (0.00s) --- PASS: TestParseRequest/Invalid_proto_message_should_produce_error (0.00s) PASS -ok github.com/grpc-ecosystem/grpc-gateway/internal/codegenerator 0.009s +ok github.com/grpc-ecosystem/grpc-gateway/internal/codegenerator 0.043s ? github.com/grpc-ecosystem/grpc-gateway/internal/descriptor/apiconfig [no test files] ? github.com/grpc-ecosystem/grpc-gateway/internal/descriptor/openapiconfig [no test files] ? github.com/grpc-ecosystem/grpc-gateway/internal/generator [no test files] @@ -980,7 +1016,7 @@ === RUN TestGoType --- PASS: TestGoType (0.00s) PASS -ok github.com/grpc-ecosystem/grpc-gateway/internal/descriptor 0.027s +ok github.com/grpc-ecosystem/grpc-gateway/internal/descriptor 0.078s === RUN TestCompile --- PASS: TestCompile (0.00s) === RUN TestTokenize @@ -996,9 +1032,9 @@ === RUN TestTemplateStringer --- PASS: TestTemplateStringer (0.00s) PASS -ok github.com/grpc-ecosystem/grpc-gateway/internal/httprule 0.016s +ok github.com/grpc-ecosystem/grpc-gateway/internal/httprule 0.048s === RUN TestGenerator_Generate ---- PASS: TestGenerator_Generate (0.00s) +--- PASS: TestGenerator_Generate (0.01s) === RUN TestApplyTemplateHeader --- PASS: TestApplyTemplateHeader (0.00s) === RUN TestApplyTemplateRequestWithoutClientStreaming @@ -1010,13 +1046,13 @@ === RUN TestAllowPatchFeature --- PASS: TestAllowPatchFeature (0.00s) === RUN TestIdentifierCapitalization ---- PASS: TestIdentifierCapitalization (0.00s) +--- PASS: TestIdentifierCapitalization (0.01s) === RUN TestDuplicatePathsInSameService --- PASS: TestDuplicatePathsInSameService (0.00s) === RUN TestDuplicatePathsInDifferentService --- PASS: TestDuplicatePathsInDifferentService (0.00s) PASS -ok github.com/grpc-ecosystem/grpc-gateway/protoc-gen-grpc-gateway/internal/gengateway 0.017s +ok github.com/grpc-ecosystem/grpc-gateway/protoc-gen-grpc-gateway/internal/gengateway 0.060s === RUN TestParseReqParam === RUN TestParseReqParam/Test_0 === RUN TestParseReqParam/Test_1 @@ -1046,7 +1082,7 @@ --- PASS: TestParseReqParam/Test_11 (0.00s) --- PASS: TestParseReqParam/Test_12 (0.00s) PASS -ok github.com/grpc-ecosystem/grpc-gateway/protoc-gen-openapiv2 0.025s +ok github.com/grpc-ecosystem/grpc-gateway/protoc-gen-openapiv2 0.041s ? github.com/grpc-ecosystem/grpc-gateway/protoc-gen-openapiv2/options [no test files] ? github.com/grpc-ecosystem/grpc-gateway/runtime/internal/examplepb [no test files] === RUN TestCycle @@ -1086,7 +1122,7 @@ === RUN TestMessageToQueryParametersNoRecursive --- PASS: TestMessageToQueryParametersNoRecursive (0.00s) === RUN TestMessageToQueryParametersRecursive ---- PASS: TestMessageToQueryParametersRecursive (0.06s) +--- PASS: TestMessageToQueryParametersRecursive (0.19s) === RUN TestMessageToQueryParametersWithJsonName --- PASS: TestMessageToQueryParametersWithJsonName (0.00s) === RUN TestMessageToQueryParametersWellKnownTypes @@ -1110,7 +1146,7 @@ === RUN TestApplyTemplateExtensions === RUN TestApplyTemplateExtensions/verify_template_options_set_via_proto_options === RUN TestApplyTemplateExtensions/verify_template_options_set_via_annotations ---- PASS: TestApplyTemplateExtensions (0.00s) +--- PASS: TestApplyTemplateExtensions (0.01s) --- PASS: TestApplyTemplateExtensions/verify_template_options_set_via_proto_options (0.00s) --- PASS: TestApplyTemplateExtensions/verify_template_options_set_via_annotations (0.00s) === RUN TestApplyTemplateHeaders @@ -1144,11 +1180,11 @@ === RUN TestApplyTemplateProtobufAny/protobufAny_referenced_in_message === RUN TestApplyTemplateProtobufAny/protobufAny_referenced_in_message_with_default_errors_disabled === RUN TestApplyTemplateProtobufAny/protobufAny_referenced_in_message_with_default_responses_disabled ---- PASS: TestApplyTemplateProtobufAny (0.00s) +--- PASS: TestApplyTemplateProtobufAny (0.01s) --- PASS: TestApplyTemplateProtobufAny/default_protobufAny_from_rpcStatus (0.00s) --- PASS: TestApplyTemplateProtobufAny/protobufAny_referenced_in_message (0.00s) --- PASS: TestApplyTemplateProtobufAny/protobufAny_referenced_in_message_with_default_errors_disabled (0.00s) - --- PASS: TestApplyTemplateProtobufAny/protobufAny_referenced_in_message_with_default_responses_disabled (0.00s) + --- PASS: TestApplyTemplateProtobufAny/protobufAny_referenced_in_message_with_default_responses_disabled (0.01s) === RUN TestTemplateWithJsonCamelCase --- PASS: TestTemplateWithJsonCamelCase (0.00s) === RUN TestTemplateWithoutJsonCamelCase @@ -1162,7 +1198,7 @@ === RUN TestFQMNtoOpenAPIName --- PASS: TestFQMNtoOpenAPIName (0.00s) === RUN TestSchemaOfField ---- PASS: TestSchemaOfField (0.01s) +--- PASS: TestSchemaOfField (0.07s) === RUN TestRenderMessagesAsDefinition === RUN TestRenderMessagesAsDefinition/no_OpenAPI_options === RUN TestRenderMessagesAsDefinition/example_option @@ -1238,28 +1274,28 @@ --- PASS: TestMessageOptionsWithGoTemplate/registered_OpenAPIOption (0.00s) --- PASS: TestMessageOptionsWithGoTemplate/registered_OpenAPIOption_with_go_template_args (0.00s) === RUN TestTagsWithGoTemplate -2025/01/14 07:35:54 ERROR: no message found: Status +2026/02/16 14:01:02 ERROR: no message found: Status --- PASS: TestTagsWithGoTemplate (0.00s) === RUN TestTemplateWithoutErrorDefinition -2025/01/14 07:35:54 ERROR: no message found: Status ---- PASS: TestTemplateWithoutErrorDefinition (0.00s) +2026/02/16 14:01:02 ERROR: no message found: Status +--- PASS: TestTemplateWithoutErrorDefinition (0.01s) === RUN TestSingleServiceTemplateWithDuplicateHttp1Operations -2025/01/14 07:35:54 ERROR: no message found: Status +2026/02/16 14:01:02 ERROR: no message found: Status --- PASS: TestSingleServiceTemplateWithDuplicateHttp1Operations (0.00s) === RUN TestSingleServiceTemplateWithDuplicateInAllSupportedHttp1Operations -2025/01/14 07:35:54 ERROR: no message found: Status -2025/01/14 07:35:54 ERROR: no message found: Status -2025/01/14 07:35:54 ERROR: no message found: Status -2025/01/14 07:35:54 ERROR: no message found: Status -2025/01/14 07:35:54 ERROR: no message found: Status -2025/01/14 07:35:54 ERROR: no message found: Status -2025/01/14 07:35:54 ERROR: no message found: Status ---- PASS: TestSingleServiceTemplateWithDuplicateInAllSupportedHttp1Operations (0.00s) +2026/02/16 14:01:02 ERROR: no message found: Status +2026/02/16 14:01:02 ERROR: no message found: Status +2026/02/16 14:01:02 ERROR: no message found: Status +2026/02/16 14:01:02 ERROR: no message found: Status +2026/02/16 14:01:02 ERROR: no message found: Status +2026/02/16 14:01:02 ERROR: no message found: Status +2026/02/16 14:01:02 ERROR: no message found: Status +--- PASS: TestSingleServiceTemplateWithDuplicateInAllSupportedHttp1Operations (0.01s) === RUN TestSingleServiceTemplateWithDuplicateHttp1UnsupportedOperations -2025/01/14 07:35:54 ERROR: no message found: Status +2026/02/16 14:01:02 ERROR: no message found: Status --- PASS: TestSingleServiceTemplateWithDuplicateHttp1UnsupportedOperations (0.00s) === RUN TestTemplateWithDuplicateHttp1Operations -2025/01/14 07:35:54 ERROR: no message found: Status +2026/02/16 14:01:02 ERROR: no message found: Status --- PASS: TestTemplateWithDuplicateHttp1Operations (0.00s) === RUN Test_getReservedJsonName === RUN Test_getReservedJsonName/test_case_1:_single_dot_use_case @@ -1272,59 +1308,59 @@ --- PASS: Test_getReservedJsonName/test_case_3:_double_dot_use_case (0.00s) --- PASS: Test_getReservedJsonName/test_case_4:_double_dot_use_case_with_a_not_existed_field (0.00s) === RUN TestParseIncompleteSecurityRequirement -2025/01/14 07:35:54 ERROR: no message found: Status +2026/02/16 14:01:02 ERROR: no message found: Status --- PASS: TestParseIncompleteSecurityRequirement (0.00s) === RUN TestSubPathParams --- PASS: TestSubPathParams (0.00s) === RUN TestRenderServicesParameterDescriptionNoFieldBody -2025/01/14 07:35:54 ERROR: no message found: Status +2026/02/16 14:01:02 ERROR: no message found: Status --- PASS: TestRenderServicesParameterDescriptionNoFieldBody (0.00s) === RUN TestRenderServicesWithBodyFieldNameInCamelCase -2025/01/14 07:35:54 ERROR: no message found: Status +2026/02/16 14:01:02 ERROR: no message found: Status --- PASS: TestRenderServicesWithBodyFieldNameInCamelCase (0.00s) === RUN TestRenderServicesWithBodyFieldHasFieldMask -2025/01/14 07:35:54 ERROR: no message found: Status +2026/02/16 14:01:02 ERROR: no message found: Status --- PASS: TestRenderServicesWithBodyFieldHasFieldMask (0.00s) === RUN TestRenderServicesWithColonInPath -2025/01/14 07:35:54 ERROR: no message found: Status +2026/02/16 14:01:02 ERROR: no message found: Status --- PASS: TestRenderServicesWithColonInPath (0.00s) === RUN TestRenderServicesWithDoubleColonInPath -2025/01/14 07:35:54 ERROR: no message found: Status +2026/02/16 14:01:02 ERROR: no message found: Status --- PASS: TestRenderServicesWithDoubleColonInPath (0.00s) === RUN TestRenderServicesWithColonLastInPath -2025/01/14 07:35:54 ERROR: no message found: Status +2026/02/16 14:01:02 ERROR: no message found: Status --- PASS: TestRenderServicesWithColonLastInPath (0.00s) === RUN TestRenderServicesWithColonInSegment -2025/01/14 07:35:54 ERROR: no message found: Status +2026/02/16 14:01:02 ERROR: no message found: Status --- PASS: TestRenderServicesWithColonInSegment (0.00s) === RUN TestRenderServiceWithHeaderParameters -=== RUN TestRenderServiceWithHeaderParameters/type_string_with_format -2025/01/14 07:35:54 ERROR: no message found: Status -=== RUN TestRenderServiceWithHeaderParameters/type_integer -2025/01/14 07:35:54 ERROR: no message found: Status -=== RUN TestRenderServiceWithHeaderParameters/type_number -2025/01/14 07:35:54 ERROR: no message found: Status === RUN TestRenderServiceWithHeaderParameters/type_boolean -2025/01/14 07:35:54 ERROR: no message found: Status +2026/02/16 14:01:02 ERROR: no message found: Status === RUN TestRenderServiceWithHeaderParameters/header_required -2025/01/14 07:35:54 ERROR: no message found: Status +2026/02/16 14:01:02 ERROR: no message found: Status === RUN TestRenderServiceWithHeaderParameters/type_string -2025/01/14 07:35:54 ERROR: no message found: Status +2026/02/16 14:01:02 ERROR: no message found: Status +=== RUN TestRenderServiceWithHeaderParameters/type_string_with_format +2026/02/16 14:01:02 ERROR: no message found: Status +=== RUN TestRenderServiceWithHeaderParameters/type_integer +2026/02/16 14:01:02 ERROR: no message found: Status +=== RUN TestRenderServiceWithHeaderParameters/type_number +2026/02/16 14:01:02 ERROR: no message found: Status --- PASS: TestRenderServiceWithHeaderParameters (0.00s) - --- PASS: TestRenderServiceWithHeaderParameters/type_string_with_format (0.00s) - --- PASS: TestRenderServiceWithHeaderParameters/type_integer (0.00s) - --- PASS: TestRenderServiceWithHeaderParameters/type_number (0.00s) --- PASS: TestRenderServiceWithHeaderParameters/type_boolean (0.00s) --- PASS: TestRenderServiceWithHeaderParameters/header_required (0.00s) --- PASS: TestRenderServiceWithHeaderParameters/type_string (0.00s) + --- PASS: TestRenderServiceWithHeaderParameters/type_string_with_format (0.00s) + --- PASS: TestRenderServiceWithHeaderParameters/type_integer (0.00s) + --- PASS: TestRenderServiceWithHeaderParameters/type_number (0.00s) === RUN TestRenderServicesOpenapiPathsOrderPreserved -2025/01/14 07:35:54 ERROR: no message found: Status +2026/02/16 14:01:02 ERROR: no message found: Status --- PASS: TestRenderServicesOpenapiPathsOrderPreserved (0.00s) === RUN TestRenderServicesOpenapiPathsOrderPreservedMultipleServices -2025/01/14 07:35:54 ERROR: no message found: Status +2026/02/16 14:01:02 ERROR: no message found: Status --- PASS: TestRenderServicesOpenapiPathsOrderPreservedMultipleServices (0.00s) === RUN TestRenderServicesOpenapiPathsOrderPreservedAdditionalBindings -2025/01/14 07:35:54 ERROR: no message found: Status +2026/02/16 14:01:02 ERROR: no message found: Status --- PASS: TestRenderServicesOpenapiPathsOrderPreservedAdditionalBindings (0.00s) === RUN TestArrayMessageItemsType --- PASS: TestArrayMessageItemsType (0.00s) @@ -1377,7 +1413,7 @@ --- PASS: TestMergeTags/Merge_external_docs (0.00s) --- PASS: TestMergeTags/Merge_extensions (0.00s) === RUN TestApiVisibilityOption -2025/01/14 07:35:54 ERROR: no message found: Status +2026/02/16 14:01:02 ERROR: no message found: Status --- PASS: TestApiVisibilityOption (0.00s) === RUN TestRawExample === PAUSE TestRawExample @@ -1394,8 +1430,8 @@ === RUN TestGenerateYAML === PAUSE TestGenerateYAML === RUN TestGeneratedYAMLIndent -2025/01/14 07:35:54 ERROR: no message found: Status ---- PASS: TestGeneratedYAMLIndent (0.00s) +2026/02/16 14:01:02 ERROR: no message found: Status +--- PASS: TestGeneratedYAMLIndent (0.01s) === RUN TestGenerateRPCOrderPreserved === PAUSE TestGenerateRPCOrderPreserved === RUN TestGenerateRPCOrderNotPreserved @@ -1437,428 +1473,44 @@ === PAUSE TestFindExpectedPaths/Multiple_potential_paths_present === CONT TestFindExpectedPaths/One_potential_path_present === CONT TestGenerateRPCOrderNotPreservedMergeFilesAdditionalBindingsMultipleServices -=== CONT TestGenerateRPCOrderPreserved -=== CONT TestFormatValidate -=== RUN TestFormatValidate/json -=== PAUSE TestFormatValidate/json -=== RUN TestFormatValidate/yaml -=== PAUSE TestFormatValidate/yaml -=== RUN TestFormatValidate/unknown -=== PAUSE TestFormatValidate/unknown -=== RUN TestFormatValidate/#00 -=== PAUSE TestFormatValidate/#00 -=== CONT TestFormatValidate/json -=== CONT TestGenerateYAML -=== RUN TestGenerateYAML/path_item_object -=== PAUSE TestGenerateYAML/path_item_object -=== CONT TestGenerateYAML/path_item_object -=== RUN TestGenerateRPCOrderPreserved/json -=== PAUSE TestGenerateRPCOrderPreserved/json -=== RUN TestGenerateRPCOrderPreserved/yaml -=== PAUSE TestGenerateRPCOrderPreserved/yaml -=== CONT TestGenerateRPCOrderPreserved/json -your/service/v1/your_service.proto descriptor.File should not contain nil SourceCodeInfo -your/service/v1/your_service.proto descriptor.File should not contain nil SourceCodeInfo -2025/01/14 07:35:54 ERROR: no message found: Status -your/service/v1/your_service.proto descriptor.File should not contain nil SourceCodeInfo -your/service/v1/your_service.proto descriptor.File should not contain nil SourceCodeInfo -your/service/v1/your_service.proto descriptor.File should not contain nil SourceCodeInfo +=== RUN TestGenerateRPCOrderNotPreservedMergeFilesAdditionalBindingsMultipleServices/json +=== PAUSE TestGenerateRPCOrderNotPreservedMergeFilesAdditionalBindingsMultipleServices/json +=== RUN TestGenerateRPCOrderNotPreservedMergeFilesAdditionalBindingsMultipleServices/yaml +=== PAUSE TestGenerateRPCOrderNotPreservedMergeFilesAdditionalBindingsMultipleServices/yaml +=== CONT TestGenerateRPCOrderNotPreservedMergeFilesAdditionalBindingsMultipleServices/json exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -2025/01/14 07:35:54 ERROR: no message found: Status exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo ---- PASS: TestGenerateYAML (0.00s) - --- PASS: TestGenerateYAML/path_item_object (0.00s) -=== CONT TestGenerateExtension -=== RUN TestGenerateExtension/json -=== PAUSE TestGenerateExtension/json -=== RUN TestGenerateExtension/yaml -=== PAUSE TestGenerateExtension/yaml -=== CONT TestGenerateExtension/json -2025/01/14 07:35:54 ERROR: no message found: Status exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo - generator_test.go:116: { - "swagger": "2.0", - "info": { - "title": "exampleproto/v1/example.proto", - "version": "version not set" - }, - "tags": [ - { - "name": "TestService" - } - ], - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "paths": {}, - "definitions": { - "v1Foo": { - "type": "object", - "properties": { - "bar": { - "type": "string", - "description": "This is bar", - "x-go-default": "0.5s" - } - } - } - } - } - -=== CONT TestGenerate_YAML -2025/01/14 07:35:54 ERROR: no message found: Status -file.proto descriptor.File should not contain nil SourceCodeInfo -=== NAME TestGenerateRPCOrderPreserved/json - generator_test.go:394: { - "swagger": "2.0", - "info": { - "title": "exampleproto/v1/example.proto", - "version": "version not set" - }, - "tags": [ - { - "name": "TestService" - } - ], - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "paths": { - "/b/first": { - "get": { - "operationId": "TestService_Test1", - "responses": { - "200": { - "description": "A successful response.", - "schema": { - "$ref": "#/definitions/v1Foo" - } - } - }, - "parameters": [ - { - "name": "bar", - "in": "query", - "required": false, - "type": "string" - } - ], - "tags": [ - "TestService" - ] - } - }, - "/a/second": { - "get": { - "operationId": "TestService_Test2", - "responses": { - "200": { - "description": "A successful response.", - "schema": { - "$ref": "#/definitions/v1Foo" - } - } - }, - "parameters": [ - { - "name": "bar", - "in": "query", - "required": false, - "type": "string" - } - ], - "tags": [ - "TestService" - ] - } - }, - "/c/third": { - "get": { - "operationId": "TestService_Test3", - "responses": { - "200": { - "description": "A successful response.", - "schema": { - "$ref": "#/definitions/v1Foo" - } - } - }, - "parameters": [ - { - "name": "bar", - "in": "query", - "required": false, - "type": "string" - } - ], - "tags": [ - "TestService" - ] - } - } - }, - "definitions": { - "v1Foo": { - "type": "object", - "properties": { - "bar": { - "type": "string" - } - } - } - } - } - -=== RUN TestGenerateRPCOrderNotPreservedMergeFilesAdditionalBindingsMultipleServices/json -=== PAUSE TestGenerateRPCOrderNotPreservedMergeFilesAdditionalBindingsMultipleServices/json -=== RUN TestGenerateRPCOrderNotPreservedMergeFilesAdditionalBindingsMultipleServices/yaml -=== PAUSE TestGenerateRPCOrderNotPreservedMergeFilesAdditionalBindingsMultipleServices/yaml -=== CONT TestGenerateRPCOrderNotPreservedMergeFilesAdditionalBindingsMultipleServices/json -=== CONT TestRawExample/{"hello":"worldr"} +exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo === CONT TestGenerateRPCOrderPreservedMergeFilesAdditionalBindingsMultipleServices -=== CONT TestGenerateRPCOrderNotPreserved -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo ---- PASS: TestGenerate_YAML (0.00s) -=== CONT TestGenerateRPCOrderPreserved/yaml +=== RUN TestGenerateRPCOrderPreservedMergeFilesAdditionalBindingsMultipleServices/json === CONT TestGenerateRPCOrderNotPreservedAdditionalBindings -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -=== CONT TestGenerateRPCOrderNotPreservedMergeFilesAdditionalBindingsMultipleServices/yaml === RUN TestGenerateRPCOrderNotPreservedAdditionalBindings/json -=== RUN TestGenerateRPCOrderNotPreserved/json -=== PAUSE TestGenerateRPCOrderNotPreserved/json -=== PAUSE TestGenerateRPCOrderNotPreservedAdditionalBindings/json -=== RUN TestGenerateRPCOrderNotPreservedAdditionalBindings/yaml -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +=== CONT TestGenerateRPCOneOfFieldBodyAdditionalBindings +=== RUN TestGenerateRPCOneOfFieldBodyAdditionalBindings/json === CONT TestGenerateRPCOrderPreservedAdditionalBindings -=== PAUSE TestGenerateRPCOrderNotPreservedAdditionalBindings/yaml -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -=== CONT TestGenerateRPCOrderPreservedMergeFiles -=== CONT TestGenerateRPCOrderNotPreservedMergeFiles -=== CONT TestGenerateRPCOrderNotPreservedMultipleServices -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -=== CONT TestGenerateRPCOrderPreservedMultipleServices === RUN TestGenerateRPCOrderPreservedAdditionalBindings/json -=== RUN TestGenerateRPCOrderNotPreserved/yaml +=== CONT TestGenerateRPCOrderNotPreservedMergeFiles === RUN TestGenerateRPCOrderNotPreservedMergeFiles/json -=== CONT TestGenerateRPCOneOfFieldBodyAdditionalBindings +=== CONT TestGenerateRPCOrderPreservedMergeFiles === RUN TestGenerateRPCOrderPreservedMergeFiles/json +=== CONT TestGenerateRPCOrderNotPreservedMultipleServices === RUN TestGenerateRPCOrderNotPreservedMultipleServices/json -=== RUN TestGenerateRPCOneOfFieldBodyAdditionalBindings/json +=== CONT TestGenerateRPCOrderPreservedMultipleServices === RUN TestGenerateRPCOrderPreservedMultipleServices/json -=== PAUSE TestGenerateRPCOrderPreservedMultipleServices/json -=== CONT TestOpenapiSchemaObjectProperties -=== RUN TestGenerateRPCOrderPreservedMultipleServices/yaml -=== PAUSE TestGenerateRPCOrderPreservedMultipleServices/yaml -=== PAUSE TestGenerateRPCOrderNotPreserved/yaml -=== PAUSE TestGenerateRPCOrderNotPreservedMergeFiles/json -=== PAUSE TestGenerateRPCOrderPreservedMergeFiles/json -=== PAUSE TestGenerateRPCOrderNotPreservedMultipleServices/json -=== PAUSE TestGenerateRPCOneOfFieldBodyAdditionalBindings/json -=== RUN TestGenerateRPCOrderPreservedMergeFilesAdditionalBindingsMultipleServices/json -=== PAUSE TestGenerateRPCOrderPreservedMergeFilesAdditionalBindingsMultipleServices/json -=== RUN TestGenerateRPCOrderPreservedMergeFilesAdditionalBindingsMultipleServices/yaml -=== PAUSE TestGenerateRPCOrderPreservedMergeFilesAdditionalBindingsMultipleServices/yaml -=== CONT TestFindExpectedPaths/Multiple_potential_paths_present -=== PAUSE TestGenerateRPCOrderPreservedAdditionalBindings/json -=== CONT TestFindExpectedPaths/No_potential_Paths_present -=== CONT TestRawExample/"1" ---- PASS: TestFindExpectedPaths (0.00s) - --- PASS: TestFindExpectedPaths/One_potential_path_present (0.00s) - --- PASS: TestFindExpectedPaths/Multiple_potential_paths_present (0.00s) - --- PASS: TestFindExpectedPaths/No_potential_Paths_present (0.00s) -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -=== RUN TestOpenapiSchemaObjectProperties/yaml -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -=== CONT TestFormatValidate/unknown -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -=== PAUSE TestOpenapiSchemaObjectProperties/yaml -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo -=== RUN TestGenerateRPCOrderPreservedAdditionalBindings/yaml -exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo -2025/01/14 07:35:54 ERROR: no message found: Status -=== CONT TestFormatValidate/yaml -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -=== RUN TestOpenapiSchemaObjectProperties/json -exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo -2025/01/14 07:35:54 ERROR: no message found: Status ---- PASS: TestRawExample (0.00s) - --- PASS: TestRawExample/1 (0.00s) - --- PASS: TestRawExample/{"hello":"worldr"} (0.00s) - --- PASS: TestRawExample/"1" (0.00s) -=== PAUSE TestOpenapiSchemaObjectProperties/json -=== RUN TestGenerateRPCOrderPreservedMergeFiles/yaml -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -=== RUN TestGenerateRPCOrderNotPreservedMergeFiles/yaml -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -=== PAUSE TestGenerateRPCOrderPreservedMergeFiles/yaml -=== CONT TestFormatEncode -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -=== RUN TestGenerateRPCOneOfFieldBodyAdditionalBindings/yaml -=== RUN TestFormatEncode/json -=== PAUSE TestFormatEncode/json -=== CONT TestGenerateExtension/yaml -=== PAUSE TestGenerateRPCOrderPreservedAdditionalBindings/yaml -=== RUN TestFormatEncode/yaml -=== CONT TestFormatValidate/#00 -=== PAUSE TestFormatEncode/yaml -=== PAUSE TestGenerateRPCOneOfFieldBodyAdditionalBindings/yaml ---- PASS: TestFormatValidate (0.00s) - --- PASS: TestFormatValidate/json (0.00s) - --- PASS: TestFormatValidate/unknown (0.00s) - --- PASS: TestFormatValidate/yaml (0.00s) - --- PASS: TestFormatValidate/#00 (0.00s) -=== CONT TestGenerateRPCOrderPreservedMultipleServices/json -=== CONT TestGenerateRPCOrderNotPreserved/json -2025/01/14 07:35:54 ERROR: no message found: Status -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -=== PAUSE TestGenerateRPCOrderNotPreservedMergeFiles/yaml -=== CONT TestGenerateRPCOrderPreservedMergeFilesAdditionalBindingsMultipleServices/yaml -=== RUN TestGenerateRPCOrderNotPreservedMultipleServices/yaml -=== PAUSE TestGenerateRPCOrderNotPreservedMultipleServices/yaml -=== CONT TestGenerateRPCOrderPreservedMultipleServices/yaml -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -=== NAME TestGenerateExtension/yaml -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo - generator_test.go:116: swagger: "2.0" - info: - title: exampleproto/v1/example.proto - version: version not set - tags: - - name: TestService - consumes: - - application/json - produces: - - application/json - paths: {} - definitions: - v1Foo: - type: object - properties: - bar: - type: string - description: This is bar - x-go-default: 0.5s - -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo ---- PASS: TestGenerateExtension (0.00s) - --- PASS: TestGenerateExtension/json (0.00s) - --- PASS: TestGenerateExtension/yaml (0.00s) -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -=== CONT TestOpenapiSchemaObjectProperties/yaml -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -=== CONT TestGenerateRPCOrderNotPreservedAdditionalBindings/yaml -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -2025/01/14 07:35:54 ERROR: no message found: Status -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -=== CONT TestOpenapiSchemaObjectProperties/json ---- PASS: TestOpenapiSchemaObjectProperties (0.00s) - --- PASS: TestOpenapiSchemaObjectProperties/yaml (0.00s) - --- PASS: TestOpenapiSchemaObjectProperties/json (0.00s) -=== CONT TestGenerateRPCOrderPreservedMergeFilesAdditionalBindingsMultipleServices/json -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -2025/01/14 07:35:54 ERROR: no message found: Status -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -2025/01/14 07:35:54 ERROR: no message found: Status -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo +=== CONT TestGenerateRPCOrderNotPreserved +=== RUN TestGenerateRPCOrderNotPreserved/json +=== CONT TestGenerateRPCOrderPreserved +=== RUN TestGenerateRPCOrderPreserved/json exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo @@ -1870,24 +1522,14 @@ exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo -2025/01/14 07:35:54 ERROR: no message found: Status +2026/02/16 14:01:02 ERROR: no message found: Status exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -=== CONT TestGenerateRPCOrderNotPreservedAdditionalBindings/json -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -=== NAME TestGenerateRPCOrderPreservedMergeFilesAdditionalBindingsMultipleServices/json - generator_test.go:1574: { +=== NAME TestGenerateRPCOrderNotPreservedMergeFilesAdditionalBindingsMultipleServices/json + generator_test.go:1774: { "swagger": "2.0", "info": { "title": "exampleproto/v1/example.proto", @@ -1911,14 +1553,14 @@ "application/json" ], "paths": { - "/d/first": { + "/a/additional": { "get": { - "operationId": "TestServiceOne_Test1", + "operationId": "TestService_Test12", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/examplev1Foo" + "$ref": "#/definitions/examplev2Foo" } } }, @@ -1931,18 +1573,18 @@ } ], "tags": [ - "TestServiceOne" + "TestService" ] } }, - "/e/second": { + "/a/apath": { "get": { - "operationId": "TestServiceOne_Test2", + "operationId": "TestService_Test2", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/examplev1Foo" + "$ref": "#/definitions/examplev2Foo" } } }, @@ -1955,13 +1597,13 @@ } ], "tags": [ - "TestServiceOne" + "TestService" ] } }, - "/c/third": { + "/a/second": { "get": { - "operationId": "TestServiceOne_Test3", + "operationId": "TestServiceTwo_Test2", "responses": { "200": { "description": "A successful response.", @@ -1979,18 +1621,18 @@ } ], "tags": [ - "TestServiceOne" + "TestServiceTwo" ] } }, - "/b/first": { + "/b/bAdditional": { "get": { - "operationId": "TestServiceTwo_Test1", + "operationId": "TestService_Test32", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/examplev1Foo" + "$ref": "#/definitions/examplev2Foo" } } }, @@ -2003,18 +1645,18 @@ } ], "tags": [ - "TestServiceTwo" + "TestService" ] } }, - "/a/second": { + "/b/bpath": { "get": { - "operationId": "TestServiceTwo_Test2", + "operationId": "TestService_Test1", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/examplev1Foo" + "$ref": "#/definitions/examplev2Foo" } } }, @@ -2027,13 +1669,13 @@ } ], "tags": [ - "TestServiceTwo" + "TestService" ] } }, - "/g/third": { + "/b/first": { "get": { - "operationId": "TestServiceTwo_Test3", + "operationId": "TestServiceTwo_Test1", "responses": { "200": { "description": "A successful response.", @@ -2055,9 +1697,9 @@ ] } }, - "/b/bpath": { + "/c/cpath": { "get": { - "operationId": "TestService_Test1", + "operationId": "TestService_Test3", "responses": { "200": { "description": "A successful response.", @@ -2079,14 +1721,14 @@ ] } }, - "/a/additional": { + "/c/third": { "get": { - "operationId": "TestService_Test12", + "operationId": "TestServiceOne_Test3", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/examplev2Foo" + "$ref": "#/definitions/examplev1Foo" } } }, @@ -2099,18 +1741,18 @@ } ], "tags": [ - "TestService" + "TestServiceOne" ] } }, - "/a/apath": { + "/d/first": { "get": { - "operationId": "TestService_Test2", + "operationId": "TestServiceOne_Test1", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/examplev2Foo" + "$ref": "#/definitions/examplev1Foo" } } }, @@ -2123,18 +1765,18 @@ } ], "tags": [ - "TestService" + "TestServiceOne" ] } }, - "/z/zAdditional": { + "/e/second": { "get": { - "operationId": "TestService_Test22", + "operationId": "TestServiceOne_Test2", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/examplev2Foo" + "$ref": "#/definitions/examplev1Foo" } } }, @@ -2147,18 +1789,18 @@ } ], "tags": [ - "TestService" + "TestServiceOne" ] } }, - "/c/cpath": { + "/g/third": { "get": { - "operationId": "TestService_Test3", + "operationId": "TestServiceTwo_Test3", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/examplev2Foo" + "$ref": "#/definitions/examplev1Foo" } } }, @@ -2171,13 +1813,13 @@ } ], "tags": [ - "TestService" + "TestServiceTwo" ] } }, - "/b/bAdditional": { + "/z/zAdditional": { "get": { - "operationId": "TestService_Test32", + "operationId": "TestService_Test22", "responses": { "200": { "description": "A successful response.", @@ -2220,142 +1862,108 @@ } } +=== PAUSE TestGenerateRPCOrderPreservedMergeFilesAdditionalBindingsMultipleServices/json +=== RUN TestGenerateRPCOrderPreservedMergeFilesAdditionalBindingsMultipleServices/yaml +=== PAUSE TestGenerateRPCOrderPreservedMergeFilesAdditionalBindingsMultipleServices/yaml +=== CONT TestGenerateExtension +=== RUN TestGenerateExtension/json +=== PAUSE TestGenerateExtension/json +=== RUN TestGenerateExtension/yaml +=== PAUSE TestGenerateExtension/yaml +=== PAUSE TestGenerateRPCOrderNotPreservedAdditionalBindings/json +=== RUN TestGenerateRPCOrderNotPreservedAdditionalBindings/yaml +=== PAUSE TestGenerateRPCOrderNotPreservedAdditionalBindings/yaml +=== CONT TestGenerate_YAML +2026/02/16 14:01:02 ERROR: no message found: Status +file.proto descriptor.File should not contain nil SourceCodeInfo +--- PASS: TestGenerate_YAML (0.00s) +=== CONT TestOpenapiSchemaObjectProperties +=== RUN TestOpenapiSchemaObjectProperties/yaml +=== PAUSE TestOpenapiSchemaObjectProperties/yaml +=== RUN TestOpenapiSchemaObjectProperties/json +=== PAUSE TestOpenapiSchemaObjectProperties/json +=== CONT TestFormatEncode +=== RUN TestFormatEncode/json +=== PAUSE TestFormatEncode/json +=== RUN TestFormatEncode/yaml +=== PAUSE TestFormatEncode/yaml +=== PAUSE TestGenerateRPCOneOfFieldBodyAdditionalBindings/json +=== RUN TestGenerateRPCOneOfFieldBodyAdditionalBindings/yaml +=== PAUSE TestGenerateRPCOneOfFieldBodyAdditionalBindings/yaml +=== CONT TestFormatValidate +=== RUN TestFormatValidate/json +=== PAUSE TestFormatValidate/json +=== RUN TestFormatValidate/yaml +=== PAUSE TestFormatValidate/yaml +=== RUN TestFormatValidate/unknown +=== PAUSE TestFormatValidate/unknown +=== RUN TestFormatValidate/#00 +=== PAUSE TestFormatValidate/#00 +=== CONT TestRawExample/{"hello":"worldr"} +=== CONT TestGenerateRPCOrderNotPreservedMergeFilesAdditionalBindingsMultipleServices/yaml exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -2025/01/14 07:35:54 ERROR: no message found: Status exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -=== NAME TestGenerateRPCOrderPreservedMultipleServices/yaml - generator_test.go:620: swagger: "2.0" - info: - title: exampleproto/v1/example.proto - version: version not set - tags: - - name: TestServiceOne - - name: TestServiceTwo - consumes: - - application/json - produces: - - application/json - paths: - /d/first: - get: - operationId: TestServiceOne_Test1 - responses: - "200": - description: A successful response. - schema: - $ref: '#/definitions/v1Foo' - parameters: - - name: bar - in: query - required: false - type: string - tags: - - TestServiceOne - /e/second: - get: - operationId: TestServiceOne_Test2 - responses: - "200": - description: A successful response. - schema: - $ref: '#/definitions/v1Foo' - parameters: - - name: bar - in: query - required: false - type: string - tags: - - TestServiceOne - /c/third: - get: - operationId: TestServiceOne_Test3 - responses: - "200": - description: A successful response. - schema: - $ref: '#/definitions/v1Foo' - parameters: - - name: bar - in: query - required: false - type: string - tags: - - TestServiceOne - /b/first: - get: - operationId: TestServiceTwo_Test1 - responses: - "200": - description: A successful response. - schema: - $ref: '#/definitions/v1Foo' - parameters: - - name: bar - in: query - required: false - type: string - tags: - - TestServiceTwo - /a/second: - get: - operationId: TestServiceTwo_Test2 - responses: - "200": - description: A successful response. - schema: - $ref: '#/definitions/v1Foo' - parameters: - - name: bar - in: query - required: false - type: string - tags: - - TestServiceTwo - /g/third: - get: - operationId: TestServiceTwo_Test3 - responses: - "200": - description: A successful response. - schema: - $ref: '#/definitions/v1Foo' - parameters: - - name: bar - in: query - required: false - type: string - tags: - - TestServiceTwo - definitions: - v1Foo: - type: object - properties: - bar: - type: string - -=== CONT TestFormatEncode/json exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -=== CONT TestGenerateRPCOneOfFieldBodyAdditionalBindings/json +exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo +2026/02/16 14:01:02 ERROR: no message found: Status exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +=== CONT TestFindExpectedPaths/Multiple_potential_paths_present +=== CONT TestGenerateRPCOrderPreservedMergeFilesAdditionalBindingsMultipleServices/json exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -2025/01/14 07:35:54 ERROR: no message found: Status exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -=== NAME TestGenerateRPCOrderNotPreservedAdditionalBindings/json - generator_test.go:1375: { +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo +2026/02/16 14:01:02 ERROR: no message found: Status +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo + generator_test.go:1574: { "swagger": "2.0", "info": { "title": "exampleproto/v1/example.proto", @@ -2363,6 +1971,12 @@ }, "tags": [ { + "name": "TestServiceOne" + }, + { + "name": "TestServiceTwo" + }, + { "name": "TestService" } ], @@ -2373,14 +1987,14 @@ "application/json" ], "paths": { - "/a/additional": { + "/d/first": { "get": { - "operationId": "TestService_Test12", + "operationId": "TestServiceOne_Test1", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/v1Foo" + "$ref": "#/definitions/examplev1Foo" } } }, @@ -2393,18 +2007,18 @@ } ], "tags": [ - "TestService" + "TestServiceOne" ] } }, - "/a/second": { + "/e/second": { "get": { - "operationId": "TestService_Test2", + "operationId": "TestServiceOne_Test2", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/v1Foo" + "$ref": "#/definitions/examplev1Foo" } } }, @@ -2417,18 +2031,18 @@ } ], "tags": [ - "TestService" + "TestServiceOne" ] } }, - "/b/bAdditional": { + "/c/third": { "get": { - "operationId": "TestService_Test32", + "operationId": "TestServiceOne_Test3", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/v1Foo" + "$ref": "#/definitions/examplev1Foo" } } }, @@ -2441,18 +2055,18 @@ } ], "tags": [ - "TestService" + "TestServiceOne" ] } }, "/b/first": { "get": { - "operationId": "TestService_Test1", + "operationId": "TestServiceTwo_Test1", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/v1Foo" + "$ref": "#/definitions/examplev1Foo" } } }, @@ -2465,18 +2079,18 @@ } ], "tags": [ - "TestService" + "TestServiceTwo" ] } }, - "/c/third": { + "/a/second": { "get": { - "operationId": "TestService_Test3", + "operationId": "TestServiceTwo_Test2", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/v1Foo" + "$ref": "#/definitions/examplev1Foo" } } }, @@ -2489,18 +2103,18 @@ } ], "tags": [ - "TestService" + "TestServiceTwo" ] } }, - "/z/zAdditional": { + "/g/third": { "get": { - "operationId": "TestService_Test22", + "operationId": "TestServiceTwo_Test3", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/v1Foo" + "$ref": "#/definitions/examplev1Foo" } } }, @@ -2513,100 +2127,27 @@ } ], "tags": [ - "TestService" - ] - } - } - }, - "definitions": { - "v1Foo": { - "type": "object", - "properties": { - "bar": { - "type": "string" - } - } - } - } - } - -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -2025/01/14 07:35:54 ERROR: no message found: Status -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -=== NAME TestGenerateRPCOneOfFieldBodyAdditionalBindings/json - generator_test.go:1265: { - "swagger": "2.0", - "info": { - "title": "exampleproto/v1/example.proto", - "version": "version not set" - }, - "tags": [ - { - "name": "TestService" - } - ], - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "paths": { - "/b/foo": { - "post": { - "operationId": "TestService_Test1", - "responses": { - "200": { - "description": "A successful response.", - "schema": { - "$ref": "#/definitions/v1Foo" - } - } - }, - "parameters": [ - { - "name": "body", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/v1Foo" - } - } - ], - "tags": [ - "TestService" + "TestServiceTwo" ] } }, - "/b/foo/bar": { - "post": { - "operationId": "TestService_Test12", + "/b/bpath": { + "get": { + "operationId": "TestService_Test1", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/v1Foo" + "$ref": "#/definitions/examplev2Foo" } } }, "parameters": [ { "name": "bar", - "in": "body", - "required": true, - "schema": { - "type": "string" - } + "in": "query", + "required": false, + "type": "string" } ], "tags": [ @@ -2614,74 +2155,6 @@ ] } }, - "/b/foo/baz": { - "post": { - "operationId": "TestService_Test13", - "responses": { - "200": { - "description": "A successful response.", - "schema": { - "$ref": "#/definitions/v1Foo" - } - } - }, - "parameters": [ - { - "name": "baz", - "in": "body", - "required": true, - "schema": { - "type": "string" - } - } - ], - "tags": [ - "TestService" - ] - } - } - }, - "definitions": { - "v1Foo": { - "type": "object", - "properties": { - "bar": { - "type": "string" - }, - "baz": { - "type": "string" - } - } - } - } - } - -=== CONT TestGenerateRPCOrderPreservedMergeFiles/json -=== NAME TestGenerateRPCOrderNotPreservedMergeFilesAdditionalBindingsMultipleServices/json - generator_test.go:1774: { - "swagger": "2.0", - "info": { - "title": "exampleproto/v1/example.proto", - "version": "version not set" - }, - "tags": [ - { - "name": "TestServiceOne" - }, - { - "name": "TestServiceTwo" - }, - { - "name": "TestService" - } - ], - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "paths": { "/a/additional": { "get": { "operationId": "TestService_Test12", @@ -2730,14 +2203,14 @@ ] } }, - "/a/second": { + "/z/zAdditional": { "get": { - "operationId": "TestServiceTwo_Test2", + "operationId": "TestService_Test22", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/examplev1Foo" + "$ref": "#/definitions/examplev2Foo" } } }, @@ -2750,13 +2223,13 @@ } ], "tags": [ - "TestServiceTwo" + "TestService" ] } }, - "/b/bAdditional": { + "/c/cpath": { "get": { - "operationId": "TestService_Test32", + "operationId": "TestService_Test3", "responses": { "200": { "description": "A successful response.", @@ -2778,9 +2251,9 @@ ] } }, - "/b/bpath": { + "/b/bAdditional": { "get": { - "operationId": "TestService_Test1", + "operationId": "TestService_Test32", "responses": { "200": { "description": "A successful response.", @@ -2801,39 +2274,91 @@ "TestService" ] } - }, - "/b/first": { - "get": { - "operationId": "TestServiceTwo_Test1", - "responses": { - "200": { - "description": "A successful response.", - "schema": { - "$ref": "#/definitions/examplev1Foo" - } - } - }, - "parameters": [ - { - "name": "bar", - "in": "query", - "required": false, - "type": "string" - } - ], - "tags": [ - "TestServiceTwo" - ] + } + }, + "definitions": { + "examplev1Foo": { + "type": "object", + "properties": { + "bar": { + "type": "string" + } } }, - "/c/cpath": { + "examplev2Foo": { + "type": "object", + "properties": { + "bar": { + "type": "string" + } + } + } + } + } + +=== CONT TestFindExpectedPaths/No_potential_Paths_present +=== PAUSE TestGenerateRPCOrderPreservedAdditionalBindings/json +--- PASS: TestFindExpectedPaths (0.00s) + --- PASS: TestFindExpectedPaths/One_potential_path_present (0.00s) + --- PASS: TestFindExpectedPaths/Multiple_potential_paths_present (0.00s) + --- PASS: TestFindExpectedPaths/No_potential_Paths_present (0.00s) +=== CONT TestRawExample/"1" +--- PASS: TestRawExample (0.00s) + --- PASS: TestRawExample/1 (0.00s) + --- PASS: TestRawExample/{"hello":"worldr"} (0.00s) + --- PASS: TestRawExample/"1" (0.00s) +=== CONT TestGenerateRPCOrderNotPreservedAdditionalBindings/json +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +=== PAUSE TestGenerateRPCOrderPreservedMergeFiles/json +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +=== RUN TestGenerateRPCOrderPreservedMergeFiles/yaml +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +=== PAUSE TestGenerateRPCOrderPreservedMergeFiles/yaml +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +2026/02/16 14:01:02 ERROR: no message found: Status +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +=== CONT TestOpenapiSchemaObjectProperties/yaml +=== PAUSE TestGenerateRPCOrderNotPreservedMultipleServices/json +=== RUN TestGenerateRPCOrderNotPreservedMultipleServices/yaml +=== PAUSE TestGenerateRPCOrderNotPreservedMultipleServices/yaml +=== CONT TestGenerateRPCOrderPreservedMergeFilesAdditionalBindingsMultipleServices/yaml +=== NAME TestGenerateRPCOrderNotPreservedAdditionalBindings/json + generator_test.go:1375: { + "swagger": "2.0", + "info": { + "title": "exampleproto/v1/example.proto", + "version": "version not set" + }, + "tags": [ + { + "name": "TestService" + } + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/a/additional": { "get": { - "operationId": "TestService_Test3", + "operationId": "TestService_Test12", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/examplev2Foo" + "$ref": "#/definitions/v1Foo" } } }, @@ -2850,14 +2375,14 @@ ] } }, - "/c/third": { + "/a/second": { "get": { - "operationId": "TestServiceOne_Test3", + "operationId": "TestService_Test2", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/examplev1Foo" + "$ref": "#/definitions/v1Foo" } } }, @@ -2870,18 +2395,18 @@ } ], "tags": [ - "TestServiceOne" + "TestService" ] } }, - "/d/first": { + "/b/bAdditional": { "get": { - "operationId": "TestServiceOne_Test1", + "operationId": "TestService_Test32", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/examplev1Foo" + "$ref": "#/definitions/v1Foo" } } }, @@ -2894,18 +2419,18 @@ } ], "tags": [ - "TestServiceOne" + "TestService" ] } }, - "/e/second": { + "/b/first": { "get": { - "operationId": "TestServiceOne_Test2", + "operationId": "TestService_Test1", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/examplev1Foo" + "$ref": "#/definitions/v1Foo" } } }, @@ -2918,18 +2443,18 @@ } ], "tags": [ - "TestServiceOne" + "TestService" ] } }, - "/g/third": { + "/c/third": { "get": { - "operationId": "TestServiceTwo_Test3", + "operationId": "TestService_Test3", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/examplev1Foo" + "$ref": "#/definitions/v1Foo" } } }, @@ -2942,7 +2467,7 @@ } ], "tags": [ - "TestServiceTwo" + "TestService" ] } }, @@ -2953,7 +2478,7 @@ "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/examplev2Foo" + "$ref": "#/definitions/v1Foo" } } }, @@ -2972,15 +2497,7 @@ } }, "definitions": { - "examplev1Foo": { - "type": "object", - "properties": { - "bar": { - "type": "string" - } - } - }, - "examplev2Foo": { + "v1Foo": { "type": "object", "properties": { "bar": { @@ -2991,28 +2508,29 @@ } } -=== CONT TestFormatEncode/yaml -=== CONT TestGenerateRPCOrderNotPreserved/yaml -=== NAME TestGenerateRPCOrderPreserved/yaml - generator_test.go:394: swagger: "2.0" +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +=== NAME TestGenerateRPCOrderNotPreservedMergeFilesAdditionalBindingsMultipleServices/yaml + generator_test.go:1774: swagger: "2.0" info: title: exampleproto/v1/example.proto version: version not set tags: + - name: TestServiceOne + - name: TestServiceTwo - name: TestService consumes: - application/json produces: - application/json paths: - /b/first: + /a/additional: get: - operationId: TestService_Test1 + operationId: TestService_Test12 responses: "200": description: A successful response. schema: - $ref: '#/definitions/v1Foo' + $ref: '#/definitions/examplev2Foo' parameters: - name: bar in: query @@ -3020,14 +2538,14 @@ type: string tags: - TestService - /a/second: + /a/apath: get: operationId: TestService_Test2 responses: "200": description: A successful response. schema: - $ref: '#/definitions/v1Foo' + $ref: '#/definitions/examplev2Foo' parameters: - name: bar in: query @@ -3035,14 +2553,149 @@ type: string tags: - TestService - /c/third: + /a/second: + get: + operationId: TestServiceTwo_Test2 + responses: + "200": + description: A successful response. + schema: + $ref: '#/definitions/examplev1Foo' + parameters: + - name: bar + in: query + required: false + type: string + tags: + - TestServiceTwo + /b/bAdditional: + get: + operationId: TestService_Test32 + responses: + "200": + description: A successful response. + schema: + $ref: '#/definitions/examplev2Foo' + parameters: + - name: bar + in: query + required: false + type: string + tags: + - TestService + /b/bpath: + get: + operationId: TestService_Test1 + responses: + "200": + description: A successful response. + schema: + $ref: '#/definitions/examplev2Foo' + parameters: + - name: bar + in: query + required: false + type: string + tags: + - TestService + /b/first: + get: + operationId: TestServiceTwo_Test1 + responses: + "200": + description: A successful response. + schema: + $ref: '#/definitions/examplev1Foo' + parameters: + - name: bar + in: query + required: false + type: string + tags: + - TestServiceTwo + /c/cpath: get: operationId: TestService_Test3 responses: "200": description: A successful response. schema: - $ref: '#/definitions/v1Foo' + $ref: '#/definitions/examplev2Foo' + parameters: + - name: bar + in: query + required: false + type: string + tags: + - TestService + /c/third: + get: + operationId: TestServiceOne_Test3 + responses: + "200": + description: A successful response. + schema: + $ref: '#/definitions/examplev1Foo' + parameters: + - name: bar + in: query + required: false + type: string + tags: + - TestServiceOne + /d/first: + get: + operationId: TestServiceOne_Test1 + responses: + "200": + description: A successful response. + schema: + $ref: '#/definitions/examplev1Foo' + parameters: + - name: bar + in: query + required: false + type: string + tags: + - TestServiceOne + /e/second: + get: + operationId: TestServiceOne_Test2 + responses: + "200": + description: A successful response. + schema: + $ref: '#/definitions/examplev1Foo' + parameters: + - name: bar + in: query + required: false + type: string + tags: + - TestServiceOne + /g/third: + get: + operationId: TestServiceTwo_Test3 + responses: + "200": + description: A successful response. + schema: + $ref: '#/definitions/examplev1Foo' + parameters: + - name: bar + in: query + required: false + type: string + tags: + - TestServiceTwo + /z/zAdditional: + get: + operationId: TestService_Test22 + responses: + "200": + description: A successful response. + schema: + $ref: '#/definitions/examplev2Foo' parameters: - name: bar in: query @@ -3051,41 +2704,101 @@ tags: - TestService definitions: - v1Foo: + examplev1Foo: + type: object + properties: + bar: + type: string + examplev2Foo: type: object properties: bar: type: string ---- PASS: TestFormatEncode (0.00s) - --- PASS: TestFormatEncode/json (0.00s) - --- PASS: TestFormatEncode/yaml (0.00s) exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -=== CONT TestGenerateRPCOrderPreservedAdditionalBindings/yaml ---- PASS: TestGenerateRPCOrderPreserved (0.00s) - --- PASS: TestGenerateRPCOrderPreserved/json (0.00s) - --- PASS: TestGenerateRPCOrderPreserved/yaml (0.01s) exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -=== CONT TestGenerateRPCOneOfFieldBodyAdditionalBindings/yaml exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -=== CONT TestGenerateRPCOrderPreservedAdditionalBindings/json exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -=== CONT TestGenerateRPCOrderPreservedMergeFiles/yaml exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -2025/01/14 07:35:54 ERROR: no message found: Status exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo +2026/02/16 14:01:02 ERROR: no message found: Status exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +--- PASS: TestGenerateRPCOrderNotPreservedMergeFilesAdditionalBindingsMultipleServices (0.00s) + --- PASS: TestGenerateRPCOrderNotPreservedMergeFilesAdditionalBindingsMultipleServices/json (0.01s) + --- PASS: TestGenerateRPCOrderNotPreservedMergeFilesAdditionalBindingsMultipleServices/yaml (0.02s) +=== CONT TestGenerateExtension/json +2026/02/16 14:01:02 ERROR: no message found: Status exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -=== NAME TestGenerateRPCOrderNotPreserved/json - generator_test.go:491: { +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo + generator_test.go:116: { + "swagger": "2.0", + "info": { + "title": "exampleproto/v1/example.proto", + "version": "version not set" + }, + "tags": [ + { + "name": "TestService" + } + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": {}, + "definitions": { + "v1Foo": { + "type": "object", + "properties": { + "bar": { + "type": "string", + "description": "This is bar", + "x-go-default": "0.5s" + } + } + } + } + } + +=== CONT TestGenerateRPCOneOfFieldBodyAdditionalBindings/json +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +2026/02/16 14:01:02 ERROR: no message found: Status +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo + generator_test.go:1265: { "swagger": "2.0", "info": { "title": "exampleproto/v1/example.proto", @@ -3103,9 +2816,9 @@ "application/json" ], "paths": { - "/a/second": { - "get": { - "operationId": "TestService_Test2", + "/b/foo": { + "post": { + "operationId": "TestService_Test1", "responses": { "200": { "description": "A successful response.", @@ -3116,10 +2829,12 @@ }, "parameters": [ { - "name": "bar", - "in": "query", - "required": false, - "type": "string" + "name": "body", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/v1Foo" + } } ], "tags": [ @@ -3127,9 +2842,9 @@ ] } }, - "/b/first": { - "get": { - "operationId": "TestService_Test1", + "/b/foo/bar": { + "post": { + "operationId": "TestService_Test12", "responses": { "200": { "description": "A successful response.", @@ -3141,9 +2856,11 @@ "parameters": [ { "name": "bar", - "in": "query", - "required": false, - "type": "string" + "in": "body", + "required": true, + "schema": { + "type": "string" + } } ], "tags": [ @@ -3151,9 +2868,9 @@ ] } }, - "/c/third": { - "get": { - "operationId": "TestService_Test3", + "/b/foo/baz": { + "post": { + "operationId": "TestService_Test13", "responses": { "200": { "description": "A successful response.", @@ -3164,10 +2881,12 @@ }, "parameters": [ { - "name": "bar", - "in": "query", - "required": false, - "type": "string" + "name": "baz", + "in": "body", + "required": true, + "schema": { + "type": "string" + } } ], "tags": [ @@ -3182,12 +2901,17 @@ "properties": { "bar": { "type": "string" + }, + "baz": { + "type": "string" } } } } } +=== CONT TestFormatValidate/json +=== CONT TestGenerateRPCOrderNotPreservedAdditionalBindings/yaml exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo @@ -3195,9 +2919,15 @@ exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -=== CONT TestGenerateRPCOrderNotPreservedMergeFiles/json -=== CONT TestGenerateRPCOrderNotPreservedMultipleServices/json -=== NAME TestGenerateRPCOrderNotPreservedAdditionalBindings/yaml +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +2026/02/16 14:01:02 ERROR: no message found: Status +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo generator_test.go:1375: swagger: "2.0" info: title: exampleproto/v1/example.proto @@ -3306,9 +3036,62 @@ bar: type: string +=== CONT TestFormatEncode/json +=== CONT TestGenerateExtension/yaml +2026/02/16 14:01:02 ERROR: no message found: Status exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -=== NAME TestGenerateRPCOrderPreservedMultipleServices/json - generator_test.go:620: { +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo + generator_test.go:116: swagger: "2.0" + info: + title: exampleproto/v1/example.proto + version: version not set + tags: + - name: TestService + consumes: + - application/json + produces: + - application/json + paths: {} + definitions: + v1Foo: + type: object + properties: + bar: + type: string + description: This is bar + x-go-default: 0.5s + +=== PAUSE TestGenerateRPCOrderNotPreserved/json +=== RUN TestGenerateRPCOrderNotPreserved/yaml +=== PAUSE TestGenerateRPCOrderNotPreserved/yaml +=== PAUSE TestGenerateRPCOrderPreserved/json +=== RUN TestGenerateRPCOrderPreserved/yaml +=== PAUSE TestGenerateRPCOrderPreserved/yaml +=== CONT TestFormatValidate/yaml +=== CONT TestGenerateYAML +=== RUN TestGenerateYAML/path_item_object +=== PAUSE TestGenerateYAML/path_item_object +=== CONT TestGenerateRPCOrderPreservedMergeFiles/json +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo +2026/02/16 14:01:02 ERROR: no message found: Status +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo + generator_test.go:906: { "swagger": "2.0", "info": { "title": "exampleproto/v1/example.proto", @@ -3316,10 +3099,7 @@ }, "tags": [ { - "name": "TestServiceOne" - }, - { - "name": "TestServiceTwo" + "name": "TestService" } ], "consumes": [ @@ -3329,14 +3109,14 @@ "application/json" ], "paths": { - "/d/first": { + "/c/cpath": { "get": { - "operationId": "TestServiceOne_Test1", + "operationId": "TestService_Test1", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/v1Foo" + "$ref": "#/definitions/examplev1Foo" } } }, @@ -3349,18 +3129,18 @@ } ], "tags": [ - "TestServiceOne" + "TestService" ] } }, - "/e/second": { + "/b/bpath": { "get": { - "operationId": "TestServiceOne_Test2", + "operationId": "TestService_Test2", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/v1Foo" + "$ref": "#/definitions/examplev1Foo" } } }, @@ -3373,18 +3153,18 @@ } ], "tags": [ - "TestServiceOne" + "TestService" ] } }, - "/c/third": { + "/a/apath": { "get": { - "operationId": "TestServiceOne_Test3", + "operationId": "TestService_Test3", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/v1Foo" + "$ref": "#/definitions/examplev1Foo" } } }, @@ -3397,18 +3177,18 @@ } ], "tags": [ - "TestServiceOne" + "TestService" ] } }, - "/b/first": { + "/f/fpath": { "get": { - "operationId": "TestServiceTwo_Test1", + "operationId": "TestService_Test1", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/v1Foo" + "$ref": "#/definitions/examplev2Foo" } } }, @@ -3421,18 +3201,18 @@ } ], "tags": [ - "TestServiceTwo" + "TestService" ] } }, - "/a/second": { + "/e/epath": { "get": { - "operationId": "TestServiceTwo_Test2", + "operationId": "TestService_Test2", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/v1Foo" + "$ref": "#/definitions/examplev2Foo" } } }, @@ -3445,18 +3225,18 @@ } ], "tags": [ - "TestServiceTwo" + "TestService" ] } }, - "/g/third": { + "/d/dpath": { "get": { - "operationId": "TestServiceTwo_Test3", + "operationId": "TestService_Test3", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/v1Foo" + "$ref": "#/definitions/examplev2Foo" } } }, @@ -3469,13 +3249,21 @@ } ], "tags": [ - "TestServiceTwo" + "TestService" ] } } }, "definitions": { - "v1Foo": { + "examplev1Foo": { + "type": "object", + "properties": { + "bar": { + "type": "string" + } + } + }, + "examplev2Foo": { "type": "object", "properties": { "bar": { @@ -3486,149 +3274,23 @@ } } +=== CONT TestGenerateRPCOrderNotPreservedMultipleServices/json exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -=== CONT TestGenerateRPCOrderNotPreservedMergeFiles/yaml ---- PASS: TestGenerateRPCOrderNotPreservedAdditionalBindings (0.00s) - --- PASS: TestGenerateRPCOrderNotPreservedAdditionalBindings/json (0.00s) - --- PASS: TestGenerateRPCOrderNotPreservedAdditionalBindings/yaml (0.01s) -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo ---- PASS: TestGenerateRPCOrderPreservedMultipleServices (0.00s) - --- PASS: TestGenerateRPCOrderPreservedMultipleServices/yaml (0.00s) - --- PASS: TestGenerateRPCOrderPreservedMultipleServices/json (0.01s) -=== CONT TestGenerateRPCOrderNotPreservedMultipleServices/yaml -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -=== NAME TestGenerateRPCOrderNotPreserved/yaml -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo - generator_test.go:491: swagger: "2.0" - info: - title: exampleproto/v1/example.proto - version: version not set - tags: - - name: TestService - consumes: - - application/json - produces: - - application/json - paths: - /a/second: - get: - operationId: TestService_Test2 - responses: - "200": - description: A successful response. - schema: - $ref: '#/definitions/v1Foo' - parameters: - - name: bar - in: query - required: false - type: string - tags: - - TestService - /b/first: - get: - operationId: TestService_Test1 - responses: - "200": - description: A successful response. - schema: - $ref: '#/definitions/v1Foo' - parameters: - - name: bar - in: query - required: false - type: string - tags: - - TestService - /c/third: - get: - operationId: TestService_Test3 - responses: - "200": - description: A successful response. - schema: - $ref: '#/definitions/v1Foo' - parameters: - - name: bar - in: query - required: false - type: string - tags: - - TestService - definitions: - v1Foo: - type: object - properties: - bar: - type: string - -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo ---- PASS: TestGenerateRPCOrderNotPreserved (0.00s) - --- PASS: TestGenerateRPCOrderNotPreserved/json (0.01s) - --- PASS: TestGenerateRPCOrderNotPreserved/yaml (0.00s) -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -2025/01/14 07:35:54 ERROR: no message found: Status -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo -2025/01/14 07:35:54 ERROR: no message found: Status exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +2026/02/16 14:01:02 ERROR: no message found: Status exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo -=== NAME TestGenerateRPCOrderNotPreservedMultipleServices/json generator_test.go:749: { "swagger": "2.0", "info": { @@ -3807,81 +3469,191 @@ } } +=== PAUSE TestGenerateRPCOrderNotPreservedMergeFiles/json +=== RUN TestGenerateRPCOrderNotPreservedMergeFiles/yaml +=== PAUSE TestGenerateRPCOrderNotPreservedMergeFiles/yaml +=== CONT TestGenerateRPCOrderPreservedMergeFiles/yaml +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo -2025/01/14 07:35:54 ERROR: no message found: Status +2026/02/16 14:01:02 ERROR: no message found: Status exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo + generator_test.go:906: swagger: "2.0" + info: + title: exampleproto/v1/example.proto + version: version not set + tags: + - name: TestService + consumes: + - application/json + produces: + - application/json + paths: + /c/cpath: + get: + operationId: TestService_Test1 + responses: + "200": + description: A successful response. + schema: + $ref: '#/definitions/examplev1Foo' + parameters: + - name: bar + in: query + required: false + type: string + tags: + - TestService + /b/bpath: + get: + operationId: TestService_Test2 + responses: + "200": + description: A successful response. + schema: + $ref: '#/definitions/examplev1Foo' + parameters: + - name: bar + in: query + required: false + type: string + tags: + - TestService + /a/apath: + get: + operationId: TestService_Test3 + responses: + "200": + description: A successful response. + schema: + $ref: '#/definitions/examplev1Foo' + parameters: + - name: bar + in: query + required: false + type: string + tags: + - TestService + /f/fpath: + get: + operationId: TestService_Test1 + responses: + "200": + description: A successful response. + schema: + $ref: '#/definitions/examplev2Foo' + parameters: + - name: bar + in: query + required: false + type: string + tags: + - TestService + /e/epath: + get: + operationId: TestService_Test2 + responses: + "200": + description: A successful response. + schema: + $ref: '#/definitions/examplev2Foo' + parameters: + - name: bar + in: query + required: false + type: string + tags: + - TestService + /d/dpath: + get: + operationId: TestService_Test3 + responses: + "200": + description: A successful response. + schema: + $ref: '#/definitions/examplev2Foo' + parameters: + - name: bar + in: query + required: false + type: string + tags: + - TestService + definitions: + examplev1Foo: + type: object + properties: + bar: + type: string + examplev2Foo: + type: object + properties: + bar: + type: string + +--- PASS: TestGenerateRPCOrderPreservedMergeFiles (0.03s) + --- PASS: TestGenerateRPCOrderPreservedMergeFiles/json (0.00s) + --- PASS: TestGenerateRPCOrderPreservedMergeFiles/yaml (0.00s) +=== CONT TestGenerateRPCOrderNotPreservedMultipleServices/yaml exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -2025/01/14 07:35:54 ERROR: no message found: Status exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -2025/01/14 07:35:54 ERROR: no message found: Status exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo +2026/02/16 14:01:02 ERROR: no message found: Status exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -2025/01/14 07:35:54 ERROR: no message found: Status +=== CONT TestGenerateRPCOrderPreserved/json +=== CONT TestGenerateRPCOrderNotPreserved/json exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo -2025/01/14 07:35:54 ERROR: no message found: Status exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo -2025/01/14 07:35:54 ERROR: no message found: Status +2026/02/16 14:01:02 ERROR: no message found: Status exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo -=== NAME TestGenerateRPCOrderNotPreservedMergeFiles/json - generator_test.go:1062: { +=== RUN TestGenerateRPCOrderPreservedAdditionalBindings/yaml +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +=== PAUSE TestGenerateRPCOrderPreservedAdditionalBindings/yaml +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +=== PAUSE TestGenerateRPCOrderPreservedMultipleServices/json +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +=== RUN TestGenerateRPCOrderPreservedMultipleServices/yaml +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +=== PAUSE TestGenerateRPCOrderPreservedMultipleServices/yaml +=== CONT TestGenerateYAML/path_item_object +2026/02/16 14:01:02 ERROR: no message found: Status +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +your/service/v1/your_service.proto descriptor.File should not contain nil SourceCodeInfo +=== NAME TestGenerateRPCOrderNotPreserved/json + generator_test.go:491: { "swagger": "2.0", "info": { "title": "exampleproto/v1/example.proto", @@ -3899,14 +3671,14 @@ "application/json" ], "paths": { - "/a/apath": { + "/a/second": { "get": { - "operationId": "TestService_Test3", + "operationId": "TestService_Test2", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/examplev1Foo" + "$ref": "#/definitions/v1Foo" } } }, @@ -3923,14 +3695,14 @@ ] } }, - "/b/bpath": { + "/b/first": { "get": { - "operationId": "TestService_Test2", + "operationId": "TestService_Test1", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/examplev1Foo" + "$ref": "#/definitions/v1Foo" } } }, @@ -3947,14 +3719,14 @@ ] } }, - "/c/cpath": { + "/c/third": { "get": { - "operationId": "TestService_Test1", + "operationId": "TestService_Test3", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/examplev1Foo" + "$ref": "#/definitions/v1Foo" } } }, @@ -3970,15 +3742,53 @@ "TestService" ] } - }, - "/d/dpath": { + } + }, + "definitions": { + "v1Foo": { + "type": "object", + "properties": { + "bar": { + "type": "string" + } + } + } + } + } + +your/service/v1/your_service.proto descriptor.File should not contain nil SourceCodeInfo +2026/02/16 14:01:02 ERROR: no message found: Status +your/service/v1/your_service.proto descriptor.File should not contain nil SourceCodeInfo +your/service/v1/your_service.proto descriptor.File should not contain nil SourceCodeInfo +your/service/v1/your_service.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +=== NAME TestGenerateRPCOrderPreserved/json + generator_test.go:394: { + "swagger": "2.0", + "info": { + "title": "exampleproto/v1/example.proto", + "version": "version not set" + }, + "tags": [ + { + "name": "TestService" + } + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/b/first": { "get": { - "operationId": "TestService_Test3", + "operationId": "TestService_Test1", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/examplev2Foo" + "$ref": "#/definitions/v1Foo" } } }, @@ -3995,14 +3805,14 @@ ] } }, - "/e/epath": { + "/a/second": { "get": { "operationId": "TestService_Test2", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/examplev2Foo" + "$ref": "#/definitions/v1Foo" } } }, @@ -4019,14 +3829,14 @@ ] } }, - "/f/fpath": { + "/c/third": { "get": { - "operationId": "TestService_Test1", + "operationId": "TestService_Test3", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/examplev2Foo" + "$ref": "#/definitions/v1Foo" } } }, @@ -4045,15 +3855,7 @@ } }, "definitions": { - "examplev1Foo": { - "type": "object", - "properties": { - "bar": { - "type": "string" - } - } - }, - "examplev2Foo": { + "v1Foo": { "type": "object", "properties": { "bar": { @@ -4064,8 +3866,31 @@ } } +=== CONT TestGenerateRPCOrderNotPreservedMergeFiles/json +--- PASS: TestGenerateYAML (0.00s) + --- PASS: TestGenerateYAML/path_item_object (0.00s) +--- PASS: TestGenerateExtension (0.02s) + --- PASS: TestGenerateExtension/json (0.00s) + --- PASS: TestGenerateExtension/yaml (0.00s) +=== CONT TestFormatValidate/unknown +=== CONT TestGenerateRPCOrderPreserved/yaml +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +=== CONT TestGenerateRPCOrderPreservedMultipleServices/json +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo +2026/02/16 14:01:02 ERROR: no message found: Status exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +=== CONT TestGenerateRPCOrderPreservedAdditionalBindings/json exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo @@ -4077,28 +3902,155 @@ exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +2026/02/16 14:01:02 ERROR: no message found: Status +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +=== CONT TestFormatValidate/#00 +--- PASS: TestFormatValidate (0.00s) + --- PASS: TestFormatValidate/json (0.00s) + --- PASS: TestFormatValidate/yaml (0.00s) + --- PASS: TestFormatValidate/unknown (0.00s) + --- PASS: TestFormatValidate/#00 (0.00s) +=== CONT TestGenerateRPCOrderPreservedAdditionalBindings/yaml +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -2025/01/14 07:35:54 ERROR: no message found: Status -exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +2026/02/16 14:01:02 ERROR: no message found: Status exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -2025/01/14 07:35:54 ERROR: no message found: Status exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo -2025/01/14 07:35:54 ERROR: no message found: Status +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +2026/02/16 14:01:02 ERROR: no message found: Status +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo + generator_test.go:1168: swagger: "2.0" + info: + title: exampleproto/v1/example.proto + version: version not set + tags: + - name: TestService + consumes: + - application/json + produces: + - application/json + paths: + /b/first: + get: + operationId: TestService_Test1 + responses: + "200": + description: A successful response. + schema: + $ref: '#/definitions/v1Foo' + parameters: + - name: bar + in: query + required: false + type: string + tags: + - TestService + /a/additional: + get: + operationId: TestService_Test12 + responses: + "200": + description: A successful response. + schema: + $ref: '#/definitions/v1Foo' + parameters: + - name: bar + in: query + required: false + type: string + tags: + - TestService + /a/second: + get: + operationId: TestService_Test2 + responses: + "200": + description: A successful response. + schema: + $ref: '#/definitions/v1Foo' + parameters: + - name: bar + in: query + required: false + type: string + tags: + - TestService + /z/zAdditional: + get: + operationId: TestService_Test22 + responses: + "200": + description: A successful response. + schema: + $ref: '#/definitions/v1Foo' + parameters: + - name: bar + in: query + required: false + type: string + tags: + - TestService + /c/third: + get: + operationId: TestService_Test3 + responses: + "200": + description: A successful response. + schema: + $ref: '#/definitions/v1Foo' + parameters: + - name: bar + in: query + required: false + type: string + tags: + - TestService + /b/bAdditional: + get: + operationId: TestService_Test32 + responses: + "200": + description: A successful response. + schema: + $ref: '#/definitions/v1Foo' + parameters: + - name: bar + in: query + required: false + type: string + tags: + - TestService + definitions: + v1Foo: + type: object + properties: + bar: + type: string + +=== CONT TestGenerateRPCOrderNotPreservedMergeFiles/yaml exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo @@ -4278,120 +4230,12 @@ } } -=== NAME TestGenerateRPCOrderPreservedAdditionalBindings/yaml - generator_test.go:1168: swagger: "2.0" - info: - title: exampleproto/v1/example.proto - version: version not set - tags: - - name: TestService - consumes: - - application/json - produces: - - application/json - paths: - /b/first: - get: - operationId: TestService_Test1 - responses: - "200": - description: A successful response. - schema: - $ref: '#/definitions/v1Foo' - parameters: - - name: bar - in: query - required: false - type: string - tags: - - TestService - /a/additional: - get: - operationId: TestService_Test12 - responses: - "200": - description: A successful response. - schema: - $ref: '#/definitions/v1Foo' - parameters: - - name: bar - in: query - required: false - type: string - tags: - - TestService - /a/second: - get: - operationId: TestService_Test2 - responses: - "200": - description: A successful response. - schema: - $ref: '#/definitions/v1Foo' - parameters: - - name: bar - in: query - required: false - type: string - tags: - - TestService - /z/zAdditional: - get: - operationId: TestService_Test22 - responses: - "200": - description: A successful response. - schema: - $ref: '#/definitions/v1Foo' - parameters: - - name: bar - in: query - required: false - type: string - tags: - - TestService - /c/third: - get: - operationId: TestService_Test3 - responses: - "200": - description: A successful response. - schema: - $ref: '#/definitions/v1Foo' - parameters: - - name: bar - in: query - required: false - type: string - tags: - - TestService - /b/bAdditional: - get: - operationId: TestService_Test32 - responses: - "200": - description: A successful response. - schema: - $ref: '#/definitions/v1Foo' - parameters: - - name: bar - in: query - required: false - type: string - tags: - - TestService - definitions: - v1Foo: - type: object - properties: - bar: - type: string - ---- PASS: TestGenerateRPCOrderPreservedAdditionalBindings (0.00s) - --- PASS: TestGenerateRPCOrderPreservedAdditionalBindings/json (0.01s) +--- PASS: TestGenerateRPCOrderPreservedAdditionalBindings (0.07s) --- PASS: TestGenerateRPCOrderPreservedAdditionalBindings/yaml (0.01s) -=== NAME TestGenerateRPCOrderPreservedMergeFiles/json - generator_test.go:906: { + --- PASS: TestGenerateRPCOrderPreservedAdditionalBindings/json (0.01s) +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +=== NAME TestGenerateRPCOrderPreservedMultipleServices/json + generator_test.go:620: { "swagger": "2.0", "info": { "title": "exampleproto/v1/example.proto", @@ -4399,7 +4243,10 @@ }, "tags": [ { - "name": "TestService" + "name": "TestServiceOne" + }, + { + "name": "TestServiceTwo" } ], "consumes": [ @@ -4409,14 +4256,14 @@ "application/json" ], "paths": { - "/c/cpath": { + "/d/first": { "get": { - "operationId": "TestService_Test1", + "operationId": "TestServiceOne_Test1", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/examplev1Foo" + "$ref": "#/definitions/v1Foo" } } }, @@ -4429,18 +4276,18 @@ } ], "tags": [ - "TestService" + "TestServiceOne" ] } }, - "/b/bpath": { + "/e/second": { "get": { - "operationId": "TestService_Test2", + "operationId": "TestServiceOne_Test2", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/examplev1Foo" + "$ref": "#/definitions/v1Foo" } } }, @@ -4453,18 +4300,18 @@ } ], "tags": [ - "TestService" + "TestServiceOne" ] } }, - "/a/apath": { + "/c/third": { "get": { - "operationId": "TestService_Test3", + "operationId": "TestServiceOne_Test3", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/examplev1Foo" + "$ref": "#/definitions/v1Foo" } } }, @@ -4477,18 +4324,18 @@ } ], "tags": [ - "TestService" + "TestServiceOne" ] } }, - "/f/fpath": { + "/b/first": { "get": { - "operationId": "TestService_Test1", + "operationId": "TestServiceTwo_Test1", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/examplev2Foo" + "$ref": "#/definitions/v1Foo" } } }, @@ -4501,18 +4348,18 @@ } ], "tags": [ - "TestService" + "TestServiceTwo" ] } }, - "/e/epath": { + "/a/second": { "get": { - "operationId": "TestService_Test2", + "operationId": "TestServiceTwo_Test2", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/examplev2Foo" + "$ref": "#/definitions/v1Foo" } } }, @@ -4525,18 +4372,18 @@ } ], "tags": [ - "TestService" + "TestServiceTwo" ] } }, - "/d/dpath": { + "/g/third": { "get": { - "operationId": "TestService_Test3", + "operationId": "TestServiceTwo_Test3", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/examplev2Foo" + "$ref": "#/definitions/v1Foo" } } }, @@ -4549,21 +4396,13 @@ } ], "tags": [ - "TestService" + "TestServiceTwo" ] } } }, "definitions": { - "examplev1Foo": { - "type": "object", - "properties": { - "bar": { - "type": "string" - } - } - }, - "examplev2Foo": { + "v1Foo": { "type": "object", "properties": { "bar": { @@ -4574,21 +4413,64 @@ } } -=== NAME TestGenerateRPCOrderPreservedMergeFiles/yaml - generator_test.go:906: swagger: "2.0" +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo +2026/02/16 14:01:02 ERROR: no message found: Status +=== CONT TestGenerateRPCOrderNotPreserved/yaml +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +2026/02/16 14:01:02 ERROR: no message found: Status +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +2026/02/16 14:01:02 ERROR: no message found: Status +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +=== CONT TestGenerateRPCOneOfFieldBodyAdditionalBindings/yaml +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +=== CONT TestFormatEncode/yaml +=== CONT TestOpenapiSchemaObjectProperties/json +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +=== CONT TestGenerateRPCOrderPreservedMultipleServices/yaml +=== NAME TestGenerateRPCOrderPreservedMergeFilesAdditionalBindingsMultipleServices/yaml + generator_test.go:1574: swagger: "2.0" info: title: exampleproto/v1/example.proto version: version not set tags: + - name: TestServiceOne + - name: TestServiceTwo - name: TestService consumes: - application/json produces: - application/json paths: - /c/cpath: + /d/first: get: - operationId: TestService_Test1 + operationId: TestServiceOne_Test1 responses: "200": description: A successful response. @@ -4600,10 +4482,10 @@ required: false type: string tags: - - TestService - /b/bpath: + - TestServiceOne + /e/second: get: - operationId: TestService_Test2 + operationId: TestServiceOne_Test2 responses: "200": description: A successful response. @@ -4615,10 +4497,10 @@ required: false type: string tags: - - TestService - /a/apath: + - TestServiceOne + /c/third: get: - operationId: TestService_Test3 + operationId: TestServiceOne_Test3 responses: "200": description: A successful response. @@ -4630,8 +4512,53 @@ required: false type: string tags: - - TestService - /f/fpath: + - TestServiceOne + /b/first: + get: + operationId: TestServiceTwo_Test1 + responses: + "200": + description: A successful response. + schema: + $ref: '#/definitions/examplev1Foo' + parameters: + - name: bar + in: query + required: false + type: string + tags: + - TestServiceTwo + /a/second: + get: + operationId: TestServiceTwo_Test2 + responses: + "200": + description: A successful response. + schema: + $ref: '#/definitions/examplev1Foo' + parameters: + - name: bar + in: query + required: false + type: string + tags: + - TestServiceTwo + /g/third: + get: + operationId: TestServiceTwo_Test3 + responses: + "200": + description: A successful response. + schema: + $ref: '#/definitions/examplev1Foo' + parameters: + - name: bar + in: query + required: false + type: string + tags: + - TestServiceTwo + /b/bpath: get: operationId: TestService_Test1 responses: @@ -4646,9 +4573,9 @@ type: string tags: - TestService - /e/epath: + /a/additional: get: - operationId: TestService_Test2 + operationId: TestService_Test12 responses: "200": description: A successful response. @@ -4661,9 +4588,9 @@ type: string tags: - TestService - /d/dpath: + /a/apath: get: - operationId: TestService_Test3 + operationId: TestService_Test2 responses: "200": description: A successful response. @@ -4676,106 +4603,81 @@ type: string tags: - TestService - definitions: - examplev1Foo: - type: object - properties: - bar: - type: string - examplev2Foo: - type: object - properties: - bar: - type: string - -=== NAME TestGenerateRPCOneOfFieldBodyAdditionalBindings/yaml - generator_test.go:1265: swagger: "2.0" - info: - title: exampleproto/v1/example.proto - version: version not set - tags: - - name: TestService - consumes: - - application/json - produces: - - application/json - paths: - /b/foo: - post: - operationId: TestService_Test1 + /z/zAdditional: + get: + operationId: TestService_Test22 responses: "200": description: A successful response. schema: - $ref: '#/definitions/v1Foo' + $ref: '#/definitions/examplev2Foo' parameters: - - name: body - in: body - required: true - schema: - $ref: '#/definitions/v1Foo' + - name: bar + in: query + required: false + type: string tags: - TestService - /b/foo/bar: - post: - operationId: TestService_Test12 + /c/cpath: + get: + operationId: TestService_Test3 responses: "200": description: A successful response. schema: - $ref: '#/definitions/v1Foo' + $ref: '#/definitions/examplev2Foo' parameters: - name: bar - in: body - required: true - schema: - type: string + in: query + required: false + type: string tags: - TestService - /b/foo/baz: - post: - operationId: TestService_Test13 + /b/bAdditional: + get: + operationId: TestService_Test32 responses: "200": description: A successful response. schema: - $ref: '#/definitions/v1Foo' + $ref: '#/definitions/examplev2Foo' parameters: - - name: baz - in: body - required: true - schema: - type: string + - name: bar + in: query + required: false + type: string tags: - TestService definitions: - v1Foo: + examplev1Foo: type: object properties: bar: type: string - baz: + examplev2Foo: + type: object + properties: + bar: type: string ---- PASS: TestGenerateRPCOneOfFieldBodyAdditionalBindings (0.00s) - --- PASS: TestGenerateRPCOneOfFieldBodyAdditionalBindings/json (0.00s) - --- PASS: TestGenerateRPCOneOfFieldBodyAdditionalBindings/yaml (0.01s) -=== NAME TestGenerateRPCOrderNotPreservedMultipleServices/yaml - generator_test.go:749: swagger: "2.0" +--- PASS: TestGenerateRPCOrderPreservedMergeFilesAdditionalBindingsMultipleServices (0.01s) + --- PASS: TestGenerateRPCOrderPreservedMergeFilesAdditionalBindingsMultipleServices/json (0.02s) + --- PASS: TestGenerateRPCOrderPreservedMergeFilesAdditionalBindingsMultipleServices/yaml (0.06s) +=== NAME TestGenerateRPCOrderPreserved/yaml + generator_test.go:394: swagger: "2.0" info: title: exampleproto/v1/example.proto version: version not set tags: - - name: TestServiceOne - - name: TestServiceTwo + - name: TestService consumes: - application/json produces: - application/json paths: - /a/second: + /b/first: get: - operationId: TestServiceTwo_Test2 + operationId: TestService_Test1 responses: "200": description: A successful response. @@ -4787,10 +4689,10 @@ required: false type: string tags: - - TestServiceTwo - /b/first: + - TestService + /a/second: get: - operationId: TestServiceTwo_Test1 + operationId: TestService_Test2 responses: "200": description: A successful response. @@ -4802,10 +4704,10 @@ required: false type: string tags: - - TestServiceTwo + - TestService /c/third: get: - operationId: TestServiceOne_Test3 + operationId: TestService_Test3 responses: "200": description: A successful response. @@ -4817,10 +4719,32 @@ required: false type: string tags: - - TestServiceOne - /d/first: + - TestService + definitions: + v1Foo: + type: object + properties: + bar: + type: string + +--- PASS: TestGenerateRPCOrderPreserved (0.06s) + --- PASS: TestGenerateRPCOrderPreserved/json (0.00s) + --- PASS: TestGenerateRPCOrderPreserved/yaml (0.03s) +=== NAME TestGenerateRPCOrderNotPreserved/yaml + generator_test.go:491: swagger: "2.0" + info: + title: exampleproto/v1/example.proto + version: version not set + tags: + - name: TestService + consumes: + - application/json + produces: + - application/json + paths: + /a/second: get: - operationId: TestServiceOne_Test1 + operationId: TestService_Test2 responses: "200": description: A successful response. @@ -4832,10 +4756,10 @@ required: false type: string tags: - - TestServiceOne - /e/second: + - TestService + /b/first: get: - operationId: TestServiceOne_Test2 + operationId: TestService_Test1 responses: "200": description: A successful response. @@ -4847,10 +4771,10 @@ required: false type: string tags: - - TestServiceOne - /g/third: + - TestService + /c/third: get: - operationId: TestServiceTwo_Test3 + operationId: TestService_Test3 responses: "200": description: A successful response. @@ -4862,7 +4786,7 @@ required: false type: string tags: - - TestServiceTwo + - TestService definitions: v1Foo: type: object @@ -4870,9 +4794,9 @@ bar: type: string ---- PASS: TestGenerateRPCOrderNotPreservedMultipleServices (0.00s) - --- PASS: TestGenerateRPCOrderNotPreservedMultipleServices/json (0.00s) - --- PASS: TestGenerateRPCOrderNotPreservedMultipleServices/yaml (0.01s) +--- PASS: TestGenerateRPCOrderNotPreserved (0.06s) + --- PASS: TestGenerateRPCOrderNotPreserved/json (0.00s) + --- PASS: TestGenerateRPCOrderNotPreserved/yaml (0.02s) === NAME TestGenerateRPCOrderNotPreservedMergeFiles/yaml generator_test.go:1062: swagger: "2.0" info: @@ -4987,101 +4911,83 @@ bar: type: string ---- PASS: TestGenerateRPCOrderNotPreservedMergeFiles (0.00s) - --- PASS: TestGenerateRPCOrderNotPreservedMergeFiles/json (0.00s) - --- PASS: TestGenerateRPCOrderNotPreservedMergeFiles/yaml (0.01s) ---- PASS: TestGenerateRPCOrderPreservedMergeFiles (0.00s) - --- PASS: TestGenerateRPCOrderPreservedMergeFiles/json (0.01s) - --- PASS: TestGenerateRPCOrderPreservedMergeFiles/yaml (0.01s) -=== NAME TestGenerateRPCOrderNotPreservedMergeFilesAdditionalBindingsMultipleServices/yaml - generator_test.go:1774: swagger: "2.0" +--- PASS: TestFormatEncode (0.00s) + --- PASS: TestFormatEncode/json (0.00s) + --- PASS: TestFormatEncode/yaml (0.00s) +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +2026/02/16 14:01:02 ERROR: no message found: Status +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +=== NAME TestGenerateRPCOrderPreservedMultipleServices/yaml + generator_test.go:620: swagger: "2.0" info: title: exampleproto/v1/example.proto version: version not set tags: - name: TestServiceOne - name: TestServiceTwo - - name: TestService consumes: - application/json produces: - application/json paths: - /a/additional: - get: - operationId: TestService_Test12 - responses: - "200": - description: A successful response. - schema: - $ref: '#/definitions/examplev2Foo' - parameters: - - name: bar - in: query - required: false - type: string - tags: - - TestService - /a/apath: - get: - operationId: TestService_Test2 - responses: - "200": - description: A successful response. - schema: - $ref: '#/definitions/examplev2Foo' - parameters: - - name: bar - in: query - required: false - type: string - tags: - - TestService - /a/second: + /d/first: get: - operationId: TestServiceTwo_Test2 + operationId: TestServiceOne_Test1 responses: "200": description: A successful response. schema: - $ref: '#/definitions/examplev1Foo' + $ref: '#/definitions/v1Foo' parameters: - name: bar in: query required: false type: string tags: - - TestServiceTwo - /b/bAdditional: + - TestServiceOne + /e/second: get: - operationId: TestService_Test32 + operationId: TestServiceOne_Test2 responses: "200": description: A successful response. schema: - $ref: '#/definitions/examplev2Foo' + $ref: '#/definitions/v1Foo' parameters: - name: bar in: query required: false type: string tags: - - TestService - /b/bpath: + - TestServiceOne + /c/third: get: - operationId: TestService_Test1 + operationId: TestServiceOne_Test3 responses: "200": description: A successful response. schema: - $ref: '#/definitions/examplev2Foo' + $ref: '#/definitions/v1Foo' parameters: - name: bar in: query required: false type: string tags: - - TestService + - TestServiceOne /b/first: get: operationId: TestServiceTwo_Test1 @@ -5089,7 +4995,7 @@ "200": description: A successful response. schema: - $ref: '#/definitions/examplev1Foo' + $ref: '#/definitions/v1Foo' parameters: - name: bar in: query @@ -5097,155 +5003,369 @@ type: string tags: - TestServiceTwo - /c/cpath: + /a/second: get: - operationId: TestService_Test3 + operationId: TestServiceTwo_Test2 responses: "200": description: A successful response. schema: - $ref: '#/definitions/examplev2Foo' + $ref: '#/definitions/v1Foo' parameters: - name: bar in: query required: false type: string tags: - - TestService - /c/third: + - TestServiceTwo + /g/third: get: - operationId: TestServiceOne_Test3 + operationId: TestServiceTwo_Test3 responses: "200": description: A successful response. schema: - $ref: '#/definitions/examplev1Foo' + $ref: '#/definitions/v1Foo' parameters: - name: bar in: query required: false type: string tags: - - TestServiceOne - /d/first: - get: - operationId: TestServiceOne_Test1 + - TestServiceTwo + definitions: + v1Foo: + type: object + properties: + bar: + type: string + +--- PASS: TestGenerateRPCOrderPreservedMultipleServices (0.07s) + --- PASS: TestGenerateRPCOrderPreservedMultipleServices/json (0.01s) + --- PASS: TestGenerateRPCOrderPreservedMultipleServices/yaml (0.00s) +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +2026/02/16 14:01:02 ERROR: no message found: Status +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v2/example.proto descriptor.File should not contain nil SourceCodeInfo +exampleproto/v1/example.proto descriptor.File should not contain nil SourceCodeInfo +=== NAME TestGenerateRPCOneOfFieldBodyAdditionalBindings/yaml + generator_test.go:1265: swagger: "2.0" + info: + title: exampleproto/v1/example.proto + version: version not set + tags: + - name: TestService + consumes: + - application/json + produces: + - application/json + paths: + /b/foo: + post: + operationId: TestService_Test1 responses: "200": description: A successful response. schema: - $ref: '#/definitions/examplev1Foo' + $ref: '#/definitions/v1Foo' parameters: - - name: bar - in: query - required: false - type: string - tags: - - TestServiceOne - /e/second: - get: - operationId: TestServiceOne_Test2 - responses: - "200": - description: A successful response. + - name: body + in: body + required: true schema: - $ref: '#/definitions/examplev1Foo' - parameters: - - name: bar - in: query - required: false - type: string + $ref: '#/definitions/v1Foo' tags: - - TestServiceOne - /g/third: - get: - operationId: TestServiceTwo_Test3 + - TestService + /b/foo/bar: + post: + operationId: TestService_Test12 responses: "200": description: A successful response. schema: - $ref: '#/definitions/examplev1Foo' + $ref: '#/definitions/v1Foo' parameters: - name: bar - in: query - required: false - type: string + in: body + required: true + schema: + type: string tags: - - TestServiceTwo - /z/zAdditional: - get: - operationId: TestService_Test22 + - TestService + /b/foo/baz: + post: + operationId: TestService_Test13 responses: "200": description: A successful response. schema: - $ref: '#/definitions/examplev2Foo' + $ref: '#/definitions/v1Foo' parameters: - - name: bar - in: query - required: false - type: string + - name: baz + in: body + required: true + schema: + type: string tags: - TestService definitions: - examplev1Foo: + v1Foo: type: object properties: bar: type: string - examplev2Foo: - type: object - properties: - bar: + baz: type: string ---- PASS: TestGenerateRPCOrderNotPreservedMergeFilesAdditionalBindingsMultipleServices (0.00s) - --- PASS: TestGenerateRPCOrderNotPreservedMergeFilesAdditionalBindingsMultipleServices/json (0.01s) - --- PASS: TestGenerateRPCOrderNotPreservedMergeFilesAdditionalBindingsMultipleServices/yaml (0.02s) -=== NAME TestGenerateRPCOrderPreservedMergeFilesAdditionalBindingsMultipleServices/yaml - generator_test.go:1574: swagger: "2.0" +=== NAME TestGenerateRPCOrderNotPreservedMergeFiles/json + generator_test.go:1062: { + "swagger": "2.0", + "info": { + "title": "exampleproto/v1/example.proto", + "version": "version not set" + }, + "tags": [ + { + "name": "TestService" + } + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/a/apath": { + "get": { + "operationId": "TestService_Test3", + "responses": { + "200": { + "description": "A successful response.", + "schema": { + "$ref": "#/definitions/examplev1Foo" + } + } + }, + "parameters": [ + { + "name": "bar", + "in": "query", + "required": false, + "type": "string" + } + ], + "tags": [ + "TestService" + ] + } + }, + "/b/bpath": { + "get": { + "operationId": "TestService_Test2", + "responses": { + "200": { + "description": "A successful response.", + "schema": { + "$ref": "#/definitions/examplev1Foo" + } + } + }, + "parameters": [ + { + "name": "bar", + "in": "query", + "required": false, + "type": "string" + } + ], + "tags": [ + "TestService" + ] + } + }, + "/c/cpath": { + "get": { + "operationId": "TestService_Test1", + "responses": { + "200": { + "description": "A successful response.", + "schema": { + "$ref": "#/definitions/examplev1Foo" + } + } + }, + "parameters": [ + { + "name": "bar", + "in": "query", + "required": false, + "type": "string" + } + ], + "tags": [ + "TestService" + ] + } + }, + "/d/dpath": { + "get": { + "operationId": "TestService_Test3", + "responses": { + "200": { + "description": "A successful response.", + "schema": { + "$ref": "#/definitions/examplev2Foo" + } + } + }, + "parameters": [ + { + "name": "bar", + "in": "query", + "required": false, + "type": "string" + } + ], + "tags": [ + "TestService" + ] + } + }, + "/e/epath": { + "get": { + "operationId": "TestService_Test2", + "responses": { + "200": { + "description": "A successful response.", + "schema": { + "$ref": "#/definitions/examplev2Foo" + } + } + }, + "parameters": [ + { + "name": "bar", + "in": "query", + "required": false, + "type": "string" + } + ], + "tags": [ + "TestService" + ] + } + }, + "/f/fpath": { + "get": { + "operationId": "TestService_Test1", + "responses": { + "200": { + "description": "A successful response.", + "schema": { + "$ref": "#/definitions/examplev2Foo" + } + } + }, + "parameters": [ + { + "name": "bar", + "in": "query", + "required": false, + "type": "string" + } + ], + "tags": [ + "TestService" + ] + } + } + }, + "definitions": { + "examplev1Foo": { + "type": "object", + "properties": { + "bar": { + "type": "string" + } + } + }, + "examplev2Foo": { + "type": "object", + "properties": { + "bar": { + "type": "string" + } + } + } + } + } + +--- PASS: TestGenerateRPCOrderNotPreservedAdditionalBindings (0.07s) + --- PASS: TestGenerateRPCOrderNotPreservedAdditionalBindings/json (0.01s) + --- PASS: TestGenerateRPCOrderNotPreservedAdditionalBindings/yaml (0.01s) +--- PASS: TestGenerateRPCOneOfFieldBodyAdditionalBindings (0.02s) + --- PASS: TestGenerateRPCOneOfFieldBodyAdditionalBindings/json (0.00s) + --- PASS: TestGenerateRPCOneOfFieldBodyAdditionalBindings/yaml (0.00s) +--- PASS: TestGenerateRPCOrderNotPreservedMergeFiles (0.06s) + --- PASS: TestGenerateRPCOrderNotPreservedMergeFiles/yaml (0.02s) + --- PASS: TestGenerateRPCOrderNotPreservedMergeFiles/json (0.04s) +=== NAME TestGenerateRPCOrderNotPreservedMultipleServices/yaml + generator_test.go:749: swagger: "2.0" info: title: exampleproto/v1/example.proto version: version not set tags: - name: TestServiceOne - name: TestServiceTwo - - name: TestService consumes: - application/json produces: - application/json paths: - /d/first: + /a/second: get: - operationId: TestServiceOne_Test1 + operationId: TestServiceTwo_Test2 responses: "200": description: A successful response. schema: - $ref: '#/definitions/examplev1Foo' + $ref: '#/definitions/v1Foo' parameters: - name: bar in: query required: false type: string tags: - - TestServiceOne - /e/second: + - TestServiceTwo + /b/first: get: - operationId: TestServiceOne_Test2 + operationId: TestServiceTwo_Test1 responses: "200": description: A successful response. schema: - $ref: '#/definitions/examplev1Foo' + $ref: '#/definitions/v1Foo' parameters: - name: bar in: query required: false type: string tags: - - TestServiceOne + - TestServiceTwo /c/third: get: operationId: TestServiceOne_Test3 @@ -5253,7 +5373,7 @@ "200": description: A successful response. schema: - $ref: '#/definitions/examplev1Foo' + $ref: '#/definitions/v1Foo' parameters: - name: bar in: query @@ -5261,36 +5381,36 @@ type: string tags: - TestServiceOne - /b/first: + /d/first: get: - operationId: TestServiceTwo_Test1 + operationId: TestServiceOne_Test1 responses: "200": description: A successful response. schema: - $ref: '#/definitions/examplev1Foo' + $ref: '#/definitions/v1Foo' parameters: - name: bar in: query required: false type: string tags: - - TestServiceTwo - /a/second: + - TestServiceOne + /e/second: get: - operationId: TestServiceTwo_Test2 + operationId: TestServiceOne_Test2 responses: "200": description: A successful response. schema: - $ref: '#/definitions/examplev1Foo' + $ref: '#/definitions/v1Foo' parameters: - name: bar in: query required: false type: string tags: - - TestServiceTwo + - TestServiceOne /g/third: get: operationId: TestServiceTwo_Test3 @@ -5298,7 +5418,7 @@ "200": description: A successful response. schema: - $ref: '#/definitions/examplev1Foo' + $ref: '#/definitions/v1Foo' parameters: - name: bar in: query @@ -5306,111 +5426,19 @@ type: string tags: - TestServiceTwo - /b/bpath: - get: - operationId: TestService_Test1 - responses: - "200": - description: A successful response. - schema: - $ref: '#/definitions/examplev2Foo' - parameters: - - name: bar - in: query - required: false - type: string - tags: - - TestService - /a/additional: - get: - operationId: TestService_Test12 - responses: - "200": - description: A successful response. - schema: - $ref: '#/definitions/examplev2Foo' - parameters: - - name: bar - in: query - required: false - type: string - tags: - - TestService - /a/apath: - get: - operationId: TestService_Test2 - responses: - "200": - description: A successful response. - schema: - $ref: '#/definitions/examplev2Foo' - parameters: - - name: bar - in: query - required: false - type: string - tags: - - TestService - /z/zAdditional: - get: - operationId: TestService_Test22 - responses: - "200": - description: A successful response. - schema: - $ref: '#/definitions/examplev2Foo' - parameters: - - name: bar - in: query - required: false - type: string - tags: - - TestService - /c/cpath: - get: - operationId: TestService_Test3 - responses: - "200": - description: A successful response. - schema: - $ref: '#/definitions/examplev2Foo' - parameters: - - name: bar - in: query - required: false - type: string - tags: - - TestService - /b/bAdditional: - get: - operationId: TestService_Test32 - responses: - "200": - description: A successful response. - schema: - $ref: '#/definitions/examplev2Foo' - parameters: - - name: bar - in: query - required: false - type: string - tags: - - TestService definitions: - examplev1Foo: - type: object - properties: - bar: - type: string - examplev2Foo: + v1Foo: type: object properties: bar: type: string ---- PASS: TestGenerateRPCOrderPreservedMergeFilesAdditionalBindingsMultipleServices (0.00s) - --- PASS: TestGenerateRPCOrderPreservedMergeFilesAdditionalBindingsMultipleServices/json (0.00s) - --- PASS: TestGenerateRPCOrderPreservedMergeFilesAdditionalBindingsMultipleServices/yaml (0.02s) +--- PASS: TestGenerateRPCOrderNotPreservedMultipleServices (0.03s) + --- PASS: TestGenerateRPCOrderNotPreservedMultipleServices/json (0.00s) + --- PASS: TestGenerateRPCOrderNotPreservedMultipleServices/yaml (0.06s) +--- PASS: TestOpenapiSchemaObjectProperties (0.00s) + --- PASS: TestOpenapiSchemaObjectProperties/yaml (0.00s) + --- PASS: TestOpenapiSchemaObjectProperties/json (0.00s) === RUN FuzzRemoveInternalComments === RUN FuzzRemoveInternalComments/seed#0 === RUN FuzzRemoveInternalComments/seed#1 @@ -5424,7 +5452,7 @@ --- PASS: FuzzRemoveInternalComments/seed#3 (0.00s) --- PASS: FuzzRemoveInternalComments/seed#4 (0.00s) PASS -ok github.com/grpc-ecosystem/grpc-gateway/protoc-gen-openapiv2/internal/genopenapi 0.148s +ok github.com/grpc-ecosystem/grpc-gateway/protoc-gen-openapiv2/internal/genopenapi 0.535s === RUN TestFieldMaskFromRequestBody === RUN TestFieldMaskFromRequestBody/empty === RUN TestFieldMaskFromRequestBody/EmptyMessage @@ -5470,19 +5498,19 @@ === RUN TestNewPattern --- PASS: TestNewPattern (0.00s) === RUN TestNewPatternWithWrongOp -2025/01/14 07:35:54 ERROR: invalid opcode: -1 -2025/01/14 07:35:54 ERROR: invalid opcode: 6 -2025/01/14 07:35:54 ERROR: odd number of ops codes: 1 -2025/01/14 07:35:54 ERROR: negative literal index: -1 -2025/01/14 07:35:54 ERROR: negative literal index: 1 -2025/01/14 07:35:54 ERROR: negative concat size: -1 -2025/01/14 07:35:54 ERROR: variable name index out of bound: -1 -2025/01/14 07:35:54 ERROR: variable name index out of bound: 1 -2025/01/14 07:35:54 ERROR: pushM appears twice +2026/02/16 14:01:01 ERROR: invalid opcode: -1 +2026/02/16 14:01:01 ERROR: invalid opcode: 6 +2026/02/16 14:01:01 ERROR: odd number of ops codes: 1 +2026/02/16 14:01:01 ERROR: negative literal index: -1 +2026/02/16 14:01:01 ERROR: negative literal index: 1 +2026/02/16 14:01:01 ERROR: negative concat size: -1 +2026/02/16 14:01:01 ERROR: variable name index out of bound: -1 +2026/02/16 14:01:01 ERROR: variable name index out of bound: 1 +2026/02/16 14:01:01 ERROR: pushM appears twice --- PASS: TestNewPatternWithWrongOp (0.00s) === RUN TestNewPatternWithStackUnderflow -2025/01/14 07:35:54 ERROR: stack underflow -2025/01/14 07:35:54 ERROR: stack underflow +2026/02/16 14:01:01 ERROR: stack underflow +2026/02/16 14:01:01 ERROR: stack underflow --- PASS: TestNewPatternWithStackUnderflow (0.00s) === RUN TestMatch --- PASS: TestMatch (0.00s) @@ -5544,15 +5572,15 @@ --- PASS: TestConvertDuration/JSON_bool (0.00s) === RUN TestDefaultHTTPError === RUN TestDefaultHTTPError/0 -2025/01/14 07:35:54 ERROR: Failed to extract ServerMetadata from context +2026/02/16 14:01:01 ERROR: Failed to extract ServerMetadata from context === RUN TestDefaultHTTPError/1 -2025/01/14 07:35:54 ERROR: Failed to extract ServerMetadata from context +2026/02/16 14:01:01 ERROR: Failed to extract ServerMetadata from context === RUN TestDefaultHTTPError/2 -2025/01/14 07:35:54 ERROR: Failed to extract ServerMetadata from context +2026/02/16 14:01:01 ERROR: Failed to extract ServerMetadata from context === RUN TestDefaultHTTPError/3 -2025/01/14 07:35:54 ERROR: Failed to extract ServerMetadata from context +2026/02/16 14:01:01 ERROR: Failed to extract ServerMetadata from context === RUN TestDefaultHTTPError/4 -2025/01/14 07:35:54 ERROR: Failed to extract ServerMetadata from context +2026/02/16 14:01:01 ERROR: Failed to extract ServerMetadata from context --- PASS: TestDefaultHTTPError (0.00s) --- PASS: TestDefaultHTTPError/0 (0.00s) --- PASS: TestDefaultHTTPError/1 (0.00s) @@ -5641,7 +5669,7 @@ === RUN TestJSONPbUnmarshalFields --- PASS: TestJSONPbUnmarshalFields (0.00s) === RUN TestJSONPbEncoder ---- PASS: TestJSONPbEncoder (0.00s) +--- PASS: TestJSONPbEncoder (0.02s) === RUN TestJSONPbEncoderFields --- PASS: TestJSONPbEncoderFields (0.00s) === RUN TestJSONPbDecoder @@ -5688,51 +5716,51 @@ --- PASS: TestMarshalerForRequest (0.00s) === RUN TestMuxServeHTTP === RUN TestMuxServeHTTP/0 -2025/01/14 07:35:54 ERROR: Failed to extract ServerMetadata from context +2026/02/16 14:01:01 ERROR: Failed to extract ServerMetadata from context === RUN TestMuxServeHTTP/1 === RUN TestMuxServeHTTP/2 -2025/01/14 07:35:54 ERROR: Failed to extract ServerMetadata from context +2026/02/16 14:01:01 ERROR: Failed to extract ServerMetadata from context === RUN TestMuxServeHTTP/3 === RUN TestMuxServeHTTP/4 === RUN TestMuxServeHTTP/5 -2025/01/14 07:35:54 ERROR: Failed to extract ServerMetadata from context +2026/02/16 14:01:01 ERROR: Failed to extract ServerMetadata from context === RUN TestMuxServeHTTP/6 -2025/01/14 07:35:54 ERROR: Failed to extract ServerMetadata from context +2026/02/16 14:01:01 ERROR: Failed to extract ServerMetadata from context === RUN TestMuxServeHTTP/7 === RUN TestMuxServeHTTP/8 -2025/01/14 07:35:54 ERROR: Failed to extract ServerMetadata from context +2026/02/16 14:01:01 ERROR: Failed to extract ServerMetadata from context === RUN TestMuxServeHTTP/9 === RUN TestMuxServeHTTP/10 === RUN TestMuxServeHTTP/11 === RUN TestMuxServeHTTP/12 -2025/01/14 07:35:54 ERROR: Failed to extract ServerMetadata from context +2026/02/16 14:01:01 ERROR: Failed to extract ServerMetadata from context === RUN TestMuxServeHTTP/13 -2025/01/14 07:35:54 ERROR: Failed to extract ServerMetadata from context +2026/02/16 14:01:01 ERROR: Failed to extract ServerMetadata from context === RUN TestMuxServeHTTP/14 === RUN TestMuxServeHTTP/15 === RUN TestMuxServeHTTP/16 === RUN TestMuxServeHTTP/17 === RUN TestMuxServeHTTP/18 === RUN TestMuxServeHTTP/19 -2025/01/14 07:35:54 ERROR: Failed to extract ServerMetadata from context +2026/02/16 14:01:01 ERROR: Failed to extract ServerMetadata from context === RUN TestMuxServeHTTP/20 === RUN TestMuxServeHTTP/21 -2025/01/14 07:35:54 ERROR: Failed to extract ServerMetadata from context +2026/02/16 14:01:01 ERROR: Failed to extract ServerMetadata from context === RUN TestMuxServeHTTP/22 === RUN TestMuxServeHTTP/23 -2025/01/14 07:35:54 ERROR: Failed to extract ServerMetadata from context +2026/02/16 14:01:01 ERROR: Failed to extract ServerMetadata from context === RUN TestMuxServeHTTP/24 -2025/01/14 07:35:54 ERROR: Failed to extract ServerMetadata from context +2026/02/16 14:01:01 ERROR: Failed to extract ServerMetadata from context === RUN TestMuxServeHTTP/25 === RUN TestMuxServeHTTP/26 === RUN TestMuxServeHTTP/27 ---- PASS: TestMuxServeHTTP (0.00s) +--- PASS: TestMuxServeHTTP (0.01s) --- PASS: TestMuxServeHTTP/0 (0.00s) --- PASS: TestMuxServeHTTP/1 (0.00s) --- PASS: TestMuxServeHTTP/2 (0.00s) --- PASS: TestMuxServeHTTP/3 (0.00s) --- PASS: TestMuxServeHTTP/4 (0.00s) - --- PASS: TestMuxServeHTTP/5 (0.00s) + --- PASS: TestMuxServeHTTP/5 (0.01s) --- PASS: TestMuxServeHTTP/6 (0.00s) --- PASS: TestMuxServeHTTP/7 (0.00s) --- PASS: TestMuxServeHTTP/8 (0.00s) @@ -5756,7 +5784,7 @@ --- PASS: TestMuxServeHTTP/26 (0.00s) --- PASS: TestMuxServeHTTP/27 (0.00s) === RUN TestServeHTTP_WithMethodOverrideAndFormParsing -2025/01/14 07:35:54 ERROR: Failed to extract ServerMetadata from context +2026/02/16 14:01:01 ERROR: Failed to extract ServerMetadata from context --- PASS: TestServeHTTP_WithMethodOverrideAndFormParsing (0.00s) === RUN TestDefaultHeaderMatcher === RUN TestDefaultHeaderMatcher/permanent_HTTP_header_should_return_prefixed @@ -5780,14 +5808,14 @@ --- PASS: TestServeMux_HandlePath/Invalid_Endpoint (0.00s) === RUN TestWithHealthzEndpoint_codes === RUN TestWithHealthzEndpoint_codes/Test_grpc_error_code -2025/01/14 07:35:54 ERROR: Failed to extract ServerMetadata from context +2026/02/16 14:01:01 ERROR: Failed to extract ServerMetadata from context === RUN TestWithHealthzEndpoint_codes/Test_HealthCheckResponse_SERVING === RUN TestWithHealthzEndpoint_codes/Test_HealthCheckResponse_NOT_SERVING -2025/01/14 07:35:54 ERROR: Failed to extract ServerMetadata from context +2026/02/16 14:01:01 ERROR: Failed to extract ServerMetadata from context === RUN TestWithHealthzEndpoint_codes/Test_HealthCheckResponse_UNKNOWN -2025/01/14 07:35:54 ERROR: Failed to extract ServerMetadata from context +2026/02/16 14:01:01 ERROR: Failed to extract ServerMetadata from context === RUN TestWithHealthzEndpoint_codes/Test_HealthCheckResponse_SERVICE_UNKNOWN -2025/01/14 07:35:54 ERROR: Failed to extract ServerMetadata from context +2026/02/16 14:01:01 ERROR: Failed to extract ServerMetadata from context --- PASS: TestWithHealthzEndpoint_codes (0.00s) --- PASS: TestWithHealthzEndpoint_codes/Test_grpc_error_code (0.00s) --- PASS: TestWithHealthzEndpoint_codes/Test_HealthCheckResponse_SERVING (0.00s) @@ -5796,18 +5824,18 @@ --- PASS: TestWithHealthzEndpoint_codes/Test_HealthCheckResponse_SERVICE_UNKNOWN (0.00s) === RUN TestWithHealthEndpointAt_consistentWithHealthz === RUN TestWithHealthEndpointAt_consistentWithHealthz/Test_grpc_error_code -2025/01/14 07:35:54 ERROR: Failed to extract ServerMetadata from context -2025/01/14 07:35:54 ERROR: Failed to extract ServerMetadata from context +2026/02/16 14:01:01 ERROR: Failed to extract ServerMetadata from context +2026/02/16 14:01:01 ERROR: Failed to extract ServerMetadata from context === RUN TestWithHealthEndpointAt_consistentWithHealthz/Test_HealthCheckResponse_SERVING === RUN TestWithHealthEndpointAt_consistentWithHealthz/Test_HealthCheckResponse_NOT_SERVING -2025/01/14 07:35:54 ERROR: Failed to extract ServerMetadata from context -2025/01/14 07:35:54 ERROR: Failed to extract ServerMetadata from context +2026/02/16 14:01:01 ERROR: Failed to extract ServerMetadata from context +2026/02/16 14:01:01 ERROR: Failed to extract ServerMetadata from context === RUN TestWithHealthEndpointAt_consistentWithHealthz/Test_HealthCheckResponse_UNKNOWN -2025/01/14 07:35:54 ERROR: Failed to extract ServerMetadata from context -2025/01/14 07:35:54 ERROR: Failed to extract ServerMetadata from context +2026/02/16 14:01:01 ERROR: Failed to extract ServerMetadata from context +2026/02/16 14:01:01 ERROR: Failed to extract ServerMetadata from context === RUN TestWithHealthEndpointAt_consistentWithHealthz/Test_HealthCheckResponse_SERVICE_UNKNOWN -2025/01/14 07:35:54 ERROR: Failed to extract ServerMetadata from context -2025/01/14 07:35:54 ERROR: Failed to extract ServerMetadata from context +2026/02/16 14:01:01 ERROR: Failed to extract ServerMetadata from context +2026/02/16 14:01:01 ERROR: Failed to extract ServerMetadata from context --- PASS: TestWithHealthEndpointAt_consistentWithHealthz (0.00s) --- PASS: TestWithHealthEndpointAt_consistentWithHealthz/Test_grpc_error_code (0.00s) --- PASS: TestWithHealthEndpointAt_consistentWithHealthz/Test_HealthCheckResponse_SERVING (0.00s) @@ -5815,18 +5843,18 @@ --- PASS: TestWithHealthEndpointAt_consistentWithHealthz/Test_HealthCheckResponse_UNKNOWN (0.00s) --- PASS: TestWithHealthEndpointAt_consistentWithHealthz/Test_HealthCheckResponse_SERVICE_UNKNOWN (0.00s) === RUN TestWithHealthzEndpoint_serviceParam -2025/01/14 07:35:54 ERROR: Failed to extract ServerMetadata from context +2026/02/16 14:01:01 ERROR: Failed to extract ServerMetadata from context --- PASS: TestWithHealthzEndpoint_serviceParam (0.00s) === RUN TestWithHealthzEndpoint_header === RUN TestWithHealthzEndpoint_header/Test_grpc_error_code -2025/01/14 07:35:54 ERROR: Failed to extract ServerMetadata from context +2026/02/16 14:01:01 ERROR: Failed to extract ServerMetadata from context === RUN TestWithHealthzEndpoint_header/Test_HealthCheckResponse_SERVING === RUN TestWithHealthzEndpoint_header/Test_HealthCheckResponse_NOT_SERVING -2025/01/14 07:35:54 ERROR: Failed to extract ServerMetadata from context +2026/02/16 14:01:01 ERROR: Failed to extract ServerMetadata from context === RUN TestWithHealthzEndpoint_header/Test_HealthCheckResponse_UNKNOWN -2025/01/14 07:35:54 ERROR: Failed to extract ServerMetadata from context +2026/02/16 14:01:01 ERROR: Failed to extract ServerMetadata from context === RUN TestWithHealthzEndpoint_header/Test_HealthCheckResponse_SERVICE_UNKNOWN -2025/01/14 07:35:54 ERROR: Failed to extract ServerMetadata from context +2026/02/16 14:01:01 ERROR: Failed to extract ServerMetadata from context --- PASS: TestWithHealthzEndpoint_header (0.00s) --- PASS: TestWithHealthzEndpoint_header/Test_grpc_error_code (0.00s) --- PASS: TestWithHealthzEndpoint_header/Test_HealthCheckResponse_SERVING (0.00s) @@ -5853,7 +5881,7 @@ === RUN TestPopulateParameters/16 === RUN TestPopulateParameters/17 --- PASS: TestPopulateParameters (0.01s) - --- PASS: TestPopulateParameters/0 (0.00s) + --- PASS: TestPopulateParameters/0 (0.01s) --- PASS: TestPopulateParameters/1 (0.00s) --- PASS: TestPopulateParameters/2 (0.00s) --- PASS: TestPopulateParameters/3 (0.00s) @@ -5920,7 +5948,7 @@ --- PASS: FuzzPopulateQueryParameters/seed#7 (0.00s) --- PASS: FuzzPopulateQueryParameters/seed#8 (0.00s) PASS -ok github.com/grpc-ecosystem/grpc-gateway/runtime 0.075s +ok github.com/grpc-ecosystem/grpc-gateway/runtime 0.132s === RUN TestStringArrayFlag === RUN TestStringArrayFlag/No_Value === RUN TestStringArrayFlag/Single_Value @@ -5936,7 +5964,7 @@ === RUN TestAdd --- PASS: TestAdd (0.00s) PASS -ok github.com/grpc-ecosystem/grpc-gateway/utilities 0.006s +ok github.com/grpc-ecosystem/grpc-gateway/utilities 0.040s create-stamp debian/debhelper-build-stamp dh_testroot -O--buildsystem=golang dh_prep -O--buildsystem=golang @@ -5969,9 +5997,9 @@ dpkg-gencontrol: warning: package golang-grpc-gateway: substitution variable ${misc:Static-Built-Using} unused, but is defined dh_md5sums -O--buildsystem=golang dh_builddeb -O--buildsystem=golang -dpkg-deb: building package 'golang-github-grpc-ecosystem-grpc-gateway-dev' in '../golang-github-grpc-ecosystem-grpc-gateway-dev_2.20.0-2_all.deb'. dpkg-deb: building package 'golang-grpc-gateway' in '../golang-grpc-gateway_2.20.0-2_arm64.deb'. dpkg-deb: building package 'golang-grpc-gateway-dbgsym' in '../golang-grpc-gateway-dbgsym_2.20.0-2_arm64.deb'. +dpkg-deb: building package 'golang-github-grpc-ecosystem-grpc-gateway-dev' in '../golang-github-grpc-ecosystem-grpc-gateway-dev_2.20.0-2_all.deb'. dpkg-genbuildinfo --build=binary -O../golang-github-grpc-ecosystem-grpc-gateway_2.20.0-2_arm64.buildinfo dpkg-genchanges --build=binary -O../golang-github-grpc-ecosystem-grpc-gateway_2.20.0-2_arm64.changes dpkg-genchanges: info: binary-only upload (no source code included) @@ -5979,12 +6007,14 @@ dpkg-buildpackage: info: binary-only upload (no source included) dpkg-genchanges: info: not including original source code in upload I: copying local configuration +I: user script /srv/workspace/pbuilder/2657000/tmp/hooks/B01_cleanup starting +I: user script /srv/workspace/pbuilder/2657000/tmp/hooks/B01_cleanup finished I: unmounting dev/ptmx filesystem I: unmounting dev/pts filesystem I: unmounting dev/shm filesystem I: unmounting proc filesystem I: unmounting sys filesystem I: cleaning the build env -I: removing directory /srv/workspace/pbuilder/292608 and its subdirectories -I: Current time: Mon Jan 13 19:36:15 -12 2025 -I: pbuilder-time-stamp: 1736840175 +I: removing directory /srv/workspace/pbuilder/2657000 and its subdirectories +I: Current time: Tue Feb 17 04:01:33 +14 2026 +I: pbuilder-time-stamp: 1771250493