xref: /aosp_15_r20/external/protobuf/ruby/travis-test.sh (revision 1b3f573f81763fcece89efc2b6a5209149e44ab8)
1*1b3f573fSAndroid Build Coastguard Worker#!/usr/bin/env bash
2*1b3f573fSAndroid Build Coastguard Worker
3*1b3f573fSAndroid Build Coastguard Worker# Exit on any error.
4*1b3f573fSAndroid Build Coastguard Workerset -ex
5*1b3f573fSAndroid Build Coastguard Worker
6*1b3f573fSAndroid Build Coastguard Workertest_version() {
7*1b3f573fSAndroid Build Coastguard Worker  version=$1
8*1b3f573fSAndroid Build Coastguard Worker
9*1b3f573fSAndroid Build Coastguard Worker  RUBY_CONFORMANCE=test_ruby
10*1b3f573fSAndroid Build Coastguard Worker
11*1b3f573fSAndroid Build Coastguard Worker  if [[ $version == jruby-9* ]] ; then
12*1b3f573fSAndroid Build Coastguard Worker    bash --login -c \
13*1b3f573fSAndroid Build Coastguard Worker      "rvm install $version && rvm use $version && rvm get head && \
14*1b3f573fSAndroid Build Coastguard Worker       which ruby && \
15*1b3f573fSAndroid Build Coastguard Worker       git clean -f && \
16*1b3f573fSAndroid Build Coastguard Worker       gem install --no-document bundler && bundle && \
17*1b3f573fSAndroid Build Coastguard Worker       rake test && \
18*1b3f573fSAndroid Build Coastguard Worker       rake gc_test && \
19*1b3f573fSAndroid Build Coastguard Worker       cd ../conformance && make test_jruby && \
20*1b3f573fSAndroid Build Coastguard Worker       cd ../ruby/compatibility_tests/v3.0.0 && ./test.sh"
21*1b3f573fSAndroid Build Coastguard Worker  else
22*1b3f573fSAndroid Build Coastguard Worker    bash --login -c \
23*1b3f573fSAndroid Build Coastguard Worker      "rvm install $version && rvm use $version && \
24*1b3f573fSAndroid Build Coastguard Worker       which ruby && \
25*1b3f573fSAndroid Build Coastguard Worker       git clean -f && \
26*1b3f573fSAndroid Build Coastguard Worker       gem install --no-document bundler -v 1.17.3 && bundle && \
27*1b3f573fSAndroid Build Coastguard Worker       rake test && \
28*1b3f573fSAndroid Build Coastguard Worker       rake gc_test && \
29*1b3f573fSAndroid Build Coastguard Worker       cd ../conformance && make ${RUBY_CONFORMANCE} && \
30*1b3f573fSAndroid Build Coastguard Worker       cd ../ruby/compatibility_tests/v3.0.0 && \
31*1b3f573fSAndroid Build Coastguard Worker       cp -R ../../lib lib && ./test.sh"
32*1b3f573fSAndroid Build Coastguard Worker  fi
33*1b3f573fSAndroid Build Coastguard Worker}
34*1b3f573fSAndroid Build Coastguard Worker
35*1b3f573fSAndroid Build Coastguard Workertest_version $1
36