++ dirname ./run.sh + cd . + echo 1298 + echo '2.0-SNAPSHOT BUILD' 2.0-SNAPSHOT BUILD + date Wed Sep 17 17:17:09 UTC 2025 + uptime 17:17:09 up 1 min, 0 users, load average: 1.12, 0.37, 0.13 + head=git@github.com:yegor256/judges.git + ff=default + image=yegor256/ruby + rebase=false + squash=false + head_branch=master + author=yegor256 + tag=0.54.0 + vars=('--env=head=git@github.com:yegor256/judges.git' '--env=tag=0.54.0' '--env=scripts=( '\''export '\''\'\'''\''head=git@github.com:yegor256/judges.git'\''\'\'''\'''\'' '\'';'\'' '\''export '\''\'\'''\''tag=0.54.0'\''\'\'''\'''\'' '\'';'\'' '\''export '\''\'\'''\''head_branch=master'\''\'\'''\'''\'' '\'';'\'' '\''export '\''\'\'''\''author=yegor256'\''\'\'''\'''\'' '\'';'\'' '\''pdd -f /dev/null'\'' '\'';'\'' '\''bundle install --no-color'\'' '\'';'\'' '\''[[ "${tag}" =~ ^[0-9]+\.[0-9]+\.[0-9]+$ ]] || exit -1'\'' '\'';'\'' '\''bundle exec rake'\'' '\'';'\'' '\''rm -rf *.gem'\'' '\'';'\'' '\''sed -i "s/0\.0\.0/${tag}/g" judges.gemspec'\'' '\'';'\'' '\''git add judges.gemspec'\'' '\'';'\'' '\''sed -i "s/0\.0\.0/${tag}/g" lib/judges.rb'\'' '\'';'\'' '\''git add lib/judges.rb'\'' '\'';'\'' '\''git commit -m "version set to ${tag}"'\'' '\'';'\'' '\''gem build judges.gemspec'\'' '\'';'\'' '\''chmod 0600 ../rubygems.yml'\'' '\'';'\'' '\''gem push *.gem --config-file ../rubygems.yml'\'' '\'';'\'' '\''cp assets/index.css /tmp/index.css'\'' '\'';'\'' '\''cp assets/index.js /tmp/index.js'\'' '\'';'\'' '\''git checkout gh-pages'\'' '\'';'\'' '\''mkdir -p assets'\'' '\'';'\'' '\''cp /tmp/index.css assets/index.css'\'' '\'';'\'' '\''cp /tmp/index.js assets/index.js'\'' '\'';'\'' '\''git add assets/'\'' '\'';'\'' '\''git commit -a --allow-empty -m '\''\'\'''\''New JS and CSS'\''\'\'''\'''\'' '\'';'\'' )' '--env=head_branch=master' '--env=author=yegor256') + scripts=('export '\''head=git@github.com:yegor256/judges.git'\''' ';' 'export '\''tag=0.54.0'\''' ';' 'export '\''head_branch=master'\''' ';' 'export '\''author=yegor256'\''' ';' 'pdd -f /dev/null' ';' 'bundle install --no-color' ';' '[[ "${tag}" =~ ^[0-9]+\.[0-9]+\.[0-9]+$ ]] || exit -1' ';' 'bundle exec rake' ';' 'rm -rf *.gem' ';' 'sed -i "s/0\.0\.0/${tag}/g" judges.gemspec' ';' 'git add judges.gemspec' ';' 'sed -i "s/0\.0\.0/${tag}/g" lib/judges.rb' ';' 'git add lib/judges.rb' ';' 'git commit -m "version set to ${tag}"' ';' 'gem build judges.gemspec' ';' 'chmod 0600 ../rubygems.yml' ';' 'gem push *.gem --config-file ../rubygems.yml' ';' 'cp assets/index.css /tmp/index.css' ';' 'cp assets/index.js /tmp/index.js' ';' 'git checkout gh-pages' ';' 'mkdir -p assets' ';' 'cp /tmp/index.css assets/index.css' ';' 'cp /tmp/index.js assets/index.js' ';' 'git add assets/' ';' 'git commit -a --allow-empty -m '\''New JS and CSS'\''' ';') + directory= + container=yegor256_judges_296 + as_root=false + set -e -o pipefail + hostname ip-172-31-19-144 + pwd /tmp/rultor-ZLwQ + git --version git version 2.34.1 + docker --version Docker version 25.0.3, build 4debf41 + mkdir -p /home/ubuntu/.ssh + echo -e 'Host github.com\n\tStrictHostKeyChecking no\n' + chmod 600 /home/ubuntu/.ssh/config + git clone --recurse-submodules git@github.com:yegor256/judges.git repo Cloning into 'repo'... Warning: Permanently added 'github.com' (ED25519) to the list of known hosts. + cd repo + git config user.email gpg@rultor.com + git config user.name Rultor.com + '[' -z 'export '\''head=git@github.com:yegor256/judges.git'\''' ']' + cd .. + cat + '[' false = true ']' + cat + chmod a+x entry.sh + cat + echo 'export '\''head=git@github.com:yegor256/judges.git'\''' ';' 'export '\''tag=0.54.0'\''' ';' 'export '\''head_branch=master'\''' ';' 'export '\''author=yegor256'\''' ';' 'pdd -f /dev/null' ';' 'bundle install --no-color' ';' '[[ "${tag}" =~ ^[0-9]+\.[0-9]+\.[0-9]+$ ]] || exit -1' ';' 'bundle exec rake' ';' 'rm -rf *.gem' ';' 'sed -i "s/0\.0\.0/${tag}/g" judges.gemspec' ';' 'git add judges.gemspec' ';' 'sed -i "s/0\.0\.0/${tag}/g" lib/judges.rb' ';' 'git add lib/judges.rb' ';' 'git commit -m "version set to ${tag}"' ';' 'gem build judges.gemspec' ';' 'chmod 0600 ../rubygems.yml' ';' 'gem push *.gem --config-file ../rubygems.yml' ';' 'cp assets/index.css /tmp/index.css' ';' 'cp assets/index.js /tmp/index.js' ';' 'git checkout gh-pages' ';' 'mkdir -p assets' ';' 'cp /tmp/index.css assets/index.css' ';' 'cp /tmp/index.js assets/index.js' ';' 'git add assets/' ';' 'git commit -a --allow-empty -m '\''New JS and CSS'\''' ';' + sensitive=() + set -ex -o pipefail + '[' -z 0.54.0 ']' + [[ 0.54.0 =~ ^[a-zA-Z0-9\.\-]+$ ]] + echo 'tag name is valid: "0.54.0"' tag name is valid: "0.54.0" + cd repo ++ git tag -l 0.54.0 + '[' -n '' ']' + BRANCH_NAME=__rultor ++ wc -l ++ git show-branch __rultor + '[' 0 -gt 0 ']' + export BRANCH_NAME + git checkout -b __rultor Switched to a new branch '__rultor' + docker_when_possible + true ++ tail -n 1 ++ sed 's/ /\n/g' ++ uptime + load=0.14 ++ bc ++ echo 0.14 '>' 30 + '[' 0 -eq 1 ']' + echo 'load average is 0.14, low enough to run a new Docker container' load average is 0.14, low enough to run a new Docker container + break + cd .. + '[' -n '' ']' + use_image=yegor256/ruby + docker pull yegor256/ruby Using default tag: latest latest: Pulling from yegor256/ruby 632ef5283d0f: Pulling fs layer 2be42d221bda: Pulling fs layer 54d1704eb717: Pulling fs layer f0f51ee5c79e: Pulling fs layer ec11ce133a4e: Pulling fs layer 71ab1586461a: Pulling fs layer 8e0e2fc3c108: Pulling fs layer 4f4fb700ef54: Pulling fs layer 72e45e6fed5c: Pulling fs layer 99e89f339e27: Pulling fs layer 3f0278ea12d5: Pulling fs layer 11f168291684: Pulling fs layer 0943aaa8f703: Pulling fs layer 8f7eb7d55d56: Pulling fs layer f0f51ee5c79e: Waiting ec11ce133a4e: Waiting 71ab1586461a: Waiting 8e0e2fc3c108: Waiting 4f4fb700ef54: Waiting 72e45e6fed5c: Waiting 99e89f339e27: Waiting 3f0278ea12d5: Waiting 11f168291684: Waiting 0943aaa8f703: Waiting 8f7eb7d55d56: Waiting 2be42d221bda: Verifying Checksum 2be42d221bda: Download complete 54d1704eb717: Verifying Checksum 54d1704eb717: Download complete ec11ce133a4e: Verifying Checksum ec11ce133a4e: Download complete 632ef5283d0f: Verifying Checksum 632ef5283d0f: Download complete 8e0e2fc3c108: Verifying Checksum 8e0e2fc3c108: Download complete 4f4fb700ef54: Verifying Checksum 4f4fb700ef54: Download complete 71ab1586461a: Verifying Checksum 71ab1586461a: Download complete 99e89f339e27: Verifying Checksum 99e89f339e27: Download complete 72e45e6fed5c: Verifying Checksum 72e45e6fed5c: Download complete 11f168291684: Verifying Checksum 11f168291684: Download complete f0f51ee5c79e: Verifying Checksum f0f51ee5c79e: Download complete 0943aaa8f703: Verifying Checksum 0943aaa8f703: Download complete 8f7eb7d55d56: Verifying Checksum 8f7eb7d55d56: Download complete 3f0278ea12d5: Verifying Checksum 3f0278ea12d5: Download complete 632ef5283d0f: Pull complete 2be42d221bda: Pull complete 54d1704eb717: Pull complete f0f51ee5c79e: Pull complete ec11ce133a4e: Pull complete 71ab1586461a: Pull complete 8e0e2fc3c108: Pull complete 4f4fb700ef54: Pull complete 72e45e6fed5c: Pull complete 99e89f339e27: Pull complete 3f0278ea12d5: Pull complete 11f168291684: Pull complete 0943aaa8f703: Pull complete 8f7eb7d55d56: Pull complete Digest: sha256:5192982378a3c66a47f42995927800758a5a2bae181141bb0c87ff2361670a73 Status: Downloaded newer image for yegor256/ruby:latest docker.io/yegor256/ruby:latest + docker ps --filter=status=exited + grep --quiet '\syegor256_judges_296\s*$' + ls -al . total 48 drwx------ 3 ubuntu ubuntu 4096 Sep 17 17:17 . drwxrwxrwt 12 root root 4096 Sep 17 17:17 .. -rwxrwxr-x 1 ubuntu ubuntu 666 Sep 17 17:17 end.sh -rwxrwxr-x 1 ubuntu ubuntu 498 Sep 17 17:17 entry.sh -rw-rw-r-- 1 ubuntu ubuntu 5 Sep 17 17:17 pid drwxrwxr-x 11 ubuntu ubuntu 4096 Sep 17 17:17 repo -rw-rw-r-- 1 ubuntu ubuntu 81 Sep 17 17:17 rubygems.yml -rwxrwxr-x 1 ubuntu ubuntu 7431 Sep 17 17:17 run.sh -rw-rw-r-- 1 ubuntu ubuntu 989 Sep 17 17:17 script.sh -rw-rw-r-- 1 ubuntu ubuntu 7461 Sep 17 17:17 stdout ++ pwd ++ pwd + docker run -t --rm -v /tmp/rultor-ZLwQ:/main --env=head=git@github.com:yegor256/judges.git --env=tag=0.54.0 '--env=scripts=( '\''export '\''\'\'''\''head=git@github.com:yegor256/judges.git'\''\'\'''\'''\'' '\'';'\'' '\''export '\''\'\'''\''tag=0.54.0'\''\'\'''\'''\'' '\'';'\'' '\''export '\''\'\'''\''head_branch=master'\''\'\'''\'''\'' '\'';'\'' '\''export '\''\'\'''\''author=yegor256'\''\'\'''\'''\'' '\'';'\'' '\''pdd -f /dev/null'\'' '\'';'\'' '\''bundle install --no-color'\'' '\'';'\'' '\''[[ "${tag}" =~ ^[0-9]+\.[0-9]+\.[0-9]+$ ]] || exit -1'\'' '\'';'\'' '\''bundle exec rake'\'' '\'';'\'' '\''rm -rf *.gem'\'' '\'';'\'' '\''sed -i "s/0\.0\.0/${tag}/g" judges.gemspec'\'' '\'';'\'' '\''git add judges.gemspec'\'' '\'';'\'' '\''sed -i "s/0\.0\.0/${tag}/g" lib/judges.rb'\'' '\'';'\'' '\''git add lib/judges.rb'\'' '\'';'\'' '\''git commit -m "version set to ${tag}"'\'' '\'';'\'' '\''gem build judges.gemspec'\'' '\'';'\'' '\''chmod 0600 ../rubygems.yml'\'' '\'';'\'' '\''gem push *.gem --config-file ../rubygems.yml'\'' '\'';'\'' '\''cp assets/index.css /tmp/index.css'\'' '\'';'\'' '\''cp assets/index.js /tmp/index.js'\'' '\'';'\'' '\''git checkout gh-pages'\'' '\'';'\'' '\''mkdir -p assets'\'' '\'';'\'' '\''cp /tmp/index.css assets/index.css'\'' '\'';'\'' '\''cp /tmp/index.js assets/index.js'\'' '\'';'\'' '\''git add assets/'\'' '\'';'\'' '\''git commit -a --allow-empty -m '\''\'\'''\''New JS and CSS'\''\'\'''\'''\'' '\'';'\'' )' --env=head_branch=master --env=author=yegor256 --hostname=docker --privileged --net=host --dns 8.8.8.8 --add-host docker:127.0.0.1 --memory=8g --memory-swap=16g --oom-kill-disable --cidfile=/tmp/rultor-ZLwQ/cid -w=/main -v /var/run/docker.sock:/var/run/docker.sock --name=yegor256_judges_296 yegor256/ruby /main/entry.sh WARNING: Your kernel does not support OomKillDisable. OomKillDisable discarded. + set -e + set -o pipefail + shopt -s dotglob + useradd -m -G sudo r ++ awk -F : '$3 > 100 { print $1 }' ++ cat /etc/group + for g in $(cat /etc/group | awk -F ':' '$3 > 100 { print $1 }') + usermod -a -G nogroup r + for g in $(cat /etc/group | awk -F ':' '$3 > 100 { print $1 }') + usermod -a -G ssh r + for g in $(cat /etc/group | awk -F ':' '$3 > 100 { print $1 }') + usermod -a -G docker r + for g in $(cat /etc/group | awk -F ':' '$3 > 100 { print $1 }') + usermod -a -G r r + usermod -s /bin/bash r + echo '%sudo ALL=(ALL) NOPASSWD:ALL' + cp -R /root/.bashrc /root/.cache /root/.gemrc /root/.profile /home/r + cp -R ./cid ./end.sh ./entry.sh ./pid ./repo ./rubygems.yml ./run.sh ./script.sh ./stdout /home/r + rm -rf repo + chown -R r:r /home/r + chmod a+x /home/r/script.sh + cat /home/r/script.sh #!/usr/bin/env bash set -e set -o pipefail if [ -e /home/r/.profile ]; then source /home/r/.profile; fi shopt -s expand_aliases alias 'sudo=sudo -i' export HOME=/home/r cd "${HOME}/repo" export 'head=git@github.com:yegor256/judges.git' ; export 'tag=0.54.0' ; export 'head_branch=master' ; export 'author=yegor256' ; pdd -f /dev/null ; bundle install --no-color ; [[ "${tag}" =~ ^[0-9]+\.[0-9]+\.[0-9]+$ ]] || exit -1 ; bundle exec rake ; rm -rf *.gem ; sed -i "s/0\.0\.0/${tag}/g" judges.gemspec ; git add judges.gemspec ; sed -i "s/0\.0\.0/${tag}/g" lib/judges.rb ; git add lib/judges.rb ; git commit -m "version set to ${tag}" ; gem build judges.gemspec ; chmod 0600 ../rubygems.yml ; gem push *.gem --config-file ../rubygems.yml ; cp assets/index.css /tmp/index.css ; cp assets/index.js /tmp/index.js ; git checkout gh-pages ; mkdir -p assets ; cp /tmp/index.css assets/index.css ; cp /tmp/index.js assets/index.js ; git add assets/ ; git commit -a --allow-empty -m 'New JS and CSS' ; + su --login r --command /home/r/script.sh Found 7 lines in /home/r/repo/.pdd My version is 0.23.1 Ruby version is 3.4.5 at x86_64-linux Reading from root dir . Excluding target/**/* Excluding coverage/**/* /usr/local/bundle/gems/pdd-0.23.1/lib/pdd/sources.rb:90: warning: undefining the allocator of T_DATA class FileMagic /home/r/repo/package-lock.json is a binary file (38288 bytes) /home/r/repo/package.json is a binary file (84 bytes) /home/r/repo/renovate.json is a binary file (107 bytes) Reading .0pdd.yml ... Reading .gitattributes ... Reading .github/workflows/actionlint.yml ... Reading .github/workflows/codecov.yml ... Reading .github/workflows/copyrights.yml ... Reading .github/workflows/eslint.yml ... Reading .github/workflows/markdown-lint.yml ... Reading .github/workflows/pdd.yml ... Reading .github/workflows/rake.yml ... Reading .github/workflows/reuse.yml ... Reading .github/workflows/typos.yml ... Reading .github/workflows/xcop.yml ... Reading .github/workflows/yamllint.yml ... Reading .gitignore ... Reading .pdd ... Reading .rubocop.yml ... Reading .rultor.yml ... Reading Gemfile ... Reading Gemfile.lock ... Reading LICENSE.txt ... Reading LICENSES/MIT.txt ... Reading README.md ... Reading REUSE.toml ... Reading Rakefile ... Reading assets/index.css ... Reading assets/index.js ... Reading assets/index.xsl ... Reading bin/judges ... Reading eslint.config.js ... Reading features/echo.feature ... Reading features/gem_package.feature ... Reading features/import.feature ... Reading features/inspect.feature ... Reading features/join.feature ... Reading features/misc.feature ... Reading features/print.feature ... Reading features/pull.feature ... Reading features/push.feature ... Reading features/step_definitions/steps.rb ... Reading features/support/env.rb ... Reading features/test.feature ... Reading features/trim.feature ... Reading features/update.feature ... Reading features/version.feature ... Reading fixtures/guess/guess.rb ... Reading fixtures/guess/guess_made.yml ... Reading fixtures/guess/skipped.yml ... Reading fixtures/repeat/repeat.rb ... Reading fixtures/repeat/repeated.yml ... Reading fixtures/try/tried.yml ... Reading fixtures/try/try.rb ... Reading judges.gemspec ... Reading lib/judges/categories.rb ... Reading lib/judges/commands/download.rb ... Reading lib/judges/commands/eval.rb ... Reading lib/judges/commands/import.rb ... Reading lib/judges/commands/inspect.rb ... Reading lib/judges/commands/join.rb ... Reading lib/judges/commands/print.rb ... Reading lib/judges/commands/pull.rb ... Reading lib/judges/commands/push.rb ... Reading lib/judges/commands/test.rb ... Reading lib/judges/commands/trim.rb ... Reading lib/judges/commands/update.rb ... Reading lib/judges/commands/upload.rb ... Reading lib/judges/impex.rb ... Reading lib/judges/judge.rb ... Reading lib/judges/judges.rb ... Reading lib/judges/options.rb ... Reading lib/judges/to_rel.rb ... Reading lib/judges.rb ... Reading test/commands/test_download.rb ... Reading test/commands/test_eval.rb ... Reading test/commands/test_import.rb ... Reading test/commands/test_inspect.rb ... Reading test/commands/test_join.rb ... Reading test/commands/test_print.rb ... Reading test/commands/test_pull.rb ... Reading test/commands/test_push.rb ... Reading test/commands/test_test.rb ... Reading test/commands/test_trim.rb ... Reading test/commands/test_update.rb ... Reading test/commands/test_upload.rb ... Reading test/test__helper.rb ... Reading test/test_bin.rb ... Reading test/test_categories.rb ... Reading test/test_impex.rb ... Reading test/test_judge.rb ... Reading test/test_judges.rb ... Reading test/test_options.rb ... Reading test/test_to_rel.rb ... Bundler 2.6.9 is running, but your lockfile was generated with 2.6.8. Installing Bundler 2.6.8 and restarting using that version. Fetching gem metadata from https://rubygems.org/. Fetching bundler 2.6.8 Installing bundler 2.6.8 Fetching gem metadata from https://rubygems.org/......... Fetching rake 13.3.0 Installing rake 13.3.0 Fetching public_suffix 6.0.2 Installing public_suffix 6.0.2 Fetching addressable 2.8.7 Installing addressable 2.8.7 Fetching ansi 1.5.0 Installing ansi 1.5.0 Fetching ast 2.4.3 Installing ast 2.4.3 Fetching backtrace 0.4.1 Installing backtrace 0.4.1 Fetching base64 0.3.0 Installing base64 0.3.0 Fetching logger 1.7.0 Installing logger 1.7.0 Fetching loog 0.6.1 Installing loog 0.6.1 Fetching tago 0.2.0 Installing tago 0.2.0 Fetching elapsed 0.2.0 Installing elapsed 0.2.0 Fetching uri 1.0.3 Installing uri 1.0.3 Fetching net-http 0.6.0 Installing net-http 0.6.0 Fetching faraday-net_http 3.4.1 Installing faraday-net_http 3.4.1 Fetching json 2.13.2 Installing json 2.13.2 with native extensions Fetching faraday 2.13.4 Installing faraday 2.13.4 Fetching faraday-http-cache 2.5.1 Installing faraday-http-cache 2.5.1 Fetching multipart-post 2.4.1 Installing multipart-post 2.4.1 Fetching faraday-multipart 1.1.1 Installing faraday-multipart 1.1.1 Fetching faraday-retry 2.3.2 Installing faraday-retry 2.3.2 Fetching iri 0.11.2 Installing iri 0.11.2 Fetching retries 0.0.5 Installing retries 0.0.5 Fetching ffi 1.17.2 (x86_64-linux-gnu) Installing ffi 1.17.2 (x86_64-linux-gnu) Fetching ethon 0.17.0 Installing ethon 0.17.0 Fetching typhoeus 1.4.1 Installing typhoeus 1.4.1 Fetching baza.rb 0.10.2 Installing baza.rb 0.10.2 Fetching bigdecimal 3.2.3 Installing bigdecimal 3.2.3 with native extensions Fetching builder 3.3.0 Installing builder 3.3.0 Fetching concurrent-ruby 1.3.5 Installing concurrent-ruby 1.3.5 Fetching rexml 3.4.4 Installing rexml 3.4.4 Fetching crack 1.0.0 Installing crack 1.0.0 Fetching cucumber-ci-environment 10.0.1 Installing cucumber-ci-environment 10.0.1 Fetching cucumber-messages 27.2.0 Installing cucumber-messages 27.2.0 Fetching cucumber-gherkin 32.2.0 Installing cucumber-gherkin 32.2.0 Fetching cucumber-tag-expressions 6.1.2 Installing cucumber-tag-expressions 6.1.2 Fetching cucumber-core 15.2.1 Installing cucumber-core 15.2.1 Fetching cucumber-cucumber-expressions 18.0.1 Installing cucumber-cucumber-expressions 18.0.1 Fetching cucumber-html-formatter 21.15.1 Installing cucumber-html-formatter 21.15.1 Fetching diff-lcs 1.6.2 Installing diff-lcs 1.6.2 Fetching mini_mime 1.1.5 Installing mini_mime 1.1.5 Fetching multi_test 1.1.0 Installing multi_test 1.1.0 Fetching memoist3 1.0.0 Installing memoist3 1.0.0 Fetching sys-uname 1.4.1 Installing sys-uname 1.4.1 Fetching cucumber 10.1.0 Installing cucumber 10.1.0 Fetching decoor 0.1.0 Installing decoor 0.1.0 Fetching docile 1.4.1 Installing docile 1.4.1 Fetching ellipsized 0.3.0 Installing ellipsized 0.3.0 Fetching nokogiri 1.18.10 (x86_64-linux-gnu) Installing nokogiri 1.18.10 (x86_64-linux-gnu) Fetching others 0.1.1 Installing others 0.1.1 Fetching yaml 0.4.0 Installing yaml 0.4.0 Fetching factbase 0.16.7 Installing factbase 0.16.7 Fetching ostruct 0.6.3 Installing ostruct 0.6.3 Fetching gli 2.22.2 Installing gli 2.22.2 Fetching hashdiff 1.2.1 Installing hashdiff 1.2.1 Fetching moments 0.3.0 Installing moments 0.3.0 Fetching timeout 0.4.3 Installing timeout 0.4.3 Fetching total 0.4.1 Installing total 0.4.1 Fetching language_server-protocol 3.17.0.5 Installing language_server-protocol 3.17.0.5 Fetching lint_roller 1.1.0 Installing lint_roller 1.1.0 Fetching minitest 5.25.5 Installing minitest 5.25.5 Fetching ruby-progressbar 1.13.0 Installing ruby-progressbar 1.13.0 Fetching minitest-reporters 1.7.1 Installing minitest-reporters 1.7.1 Fetching minitest-retry 0.2.5 Installing minitest-retry 0.2.5 Fetching online 0.1.0 Installing online 0.1.0 Fetching os 1.1.4 Installing os 1.1.4 Fetching parallel 1.27.0 Installing parallel 1.27.0 Fetching parser 3.3.9.0 Installing parser 3.3.9.0 Fetching prism 1.5.1 Installing prism 1.5.1 with native extensions Fetching qbash 0.4.5 Installing qbash 0.4.5 Fetching random-port 0.7.5 Installing random-port 0.7.5 Fetching regexp_parser 2.11.3 Installing regexp_parser 2.11.3 Fetching rubocop-ast 1.46.0 Installing rubocop-ast 1.46.0 Fetching unicode-emoji 4.1.0 Installing unicode-emoji 4.1.0 Fetching unicode-display_width 3.2.0 Installing unicode-display_width 3.2.0 Fetching rubocop 1.80.2 Installing rubocop 1.80.2 Fetching rubocop-minitest 0.38.2 Installing rubocop-minitest 0.38.2 Fetching rubocop-performance 1.26.0 Installing rubocop-performance 1.26.0 Fetching rubocop-rake 0.7.1 Installing rubocop-rake 0.7.1 Fetching simplecov-html 0.13.2 Installing simplecov-html 0.13.2 Fetching simplecov_json_formatter 0.1.4 Installing simplecov_json_formatter 0.1.4 Fetching simplecov 0.22.0 Installing simplecov 0.22.0 Fetching simplecov-cobertura 3.1.0 Installing simplecov-cobertura 3.1.0 Fetching w3c_validators 1.3.7 Installing w3c_validators 1.3.7 Fetching webmock 3.25.1 Installing webmock 3.25.1 Fetching yard 0.9.37 Installing yard 0.9.37 Bundle complete! 21 Gemfile dependencies, 89 gems now installed. Use `bundle info [gemname]` to see where a bundled gem is installed. 1 installed gem you directly depend on is looking for funding. Run `bundle fund` for details /home/r/repo/Rakefile:10: warning: rdoc was loaded from the standard library, but will no longer be part of the default gems starting from Ruby 3.5.0. You can add rdoc to your Gemfile or gemspec to silence this warning. /usr/local/lib/ruby/3.4.0/bundled_gems.rb:82: warning: /usr/local/lib/ruby/3.4.0/bundled_gems.rb:82: warning: loading in progress, circular require considered harmful - /usr/local/bundle/gems/minitest-5.25.5/lib/minitest/test.rb from /usr/local/bundle/gems/rake-13.3.0/lib/rake/rake_test_loader.rb:6:in '<main>' from /usr/local/bundle/gems/rake-13.3.0/lib/rake/rake_test_loader.rb:6:in 'select' from /usr/local/bundle/gems/rake-13.3.0/lib/rake/rake_test_loader.rb:21:in 'block in <main>' from /usr/local/lib/ruby/3.4.0/bundled_gems.rb:82:in 'block (2 levels) in replace_require' from /usr/local/lib/ruby/3.4.0/bundled_gems.rb:82:in 'require' from /home/r/repo/test/commands/test_download.rb:7:in '<top (required)>' from /usr/local/lib/ruby/3.4.0/bundled_gems.rb:82:in 'block (2 levels) in replace_require' from /usr/local/lib/ruby/3.4.0/bundled_gems.rb:82:in 'require' from /usr/local/bundle/gems/webmock-3.25.1/lib/webmock/minitest.rb:4:in '<top (required)>' from /usr/local/lib/ruby/3.4.0/bundled_gems.rb:82:in 'block (2 levels) in replace_require' from /usr/local/lib/ruby/3.4.0/bundled_gems.rb:82:in 'require' from /usr/local/bundle/gems/minitest-5.25.5/lib/minitest/test.rb:1:in '<top (required)>' from /usr/local/lib/ruby/3.4.0/bundled_gems.rb:82:in 'block (2 levels) in replace_require' from /usr/local/lib/ruby/3.4.0/bundled_gems.rb:82:in 'require' from /usr/local/bundle/gems/minitest-5.25.5/lib/minitest.rb:1235:in '<top (required)>' from /usr/local/lib/ruby/3.4.0/bundled_gems.rb:82:in 'block (2 levels) in replace_require' from /usr/local/lib/ruby/3.4.0/bundled_gems.rb:82:in 'require' Started with run options --seed 20984 TestEval test_build_factbase_from_scratch 32m PASS0m (0.00s) TestJudges test_list_only_direct_subdirs 32m PASS0m (0.00s) test_keeps_them_all 32m PASS0m (0.00s) test_get_one 32m PASS0m (0.00s) test_boost_and_demote_together 32m PASS0m (0.00s) test_shuffles_them 32m PASS0m (0.00s) test_basic 32m PASS0m (0.00s) test_list_with_empty_dir 32m PASS0m (0.00s) test_shuffles_and_boosts 32m PASS0m (0.00s) test_demotes_judges 32m PASS0m (0.00s) TestTrim test_trims_factbase 32m PASS0m (0.00s) TestUpdate test_cancels_slow_execution 32m PASS0m (0.14s) test_terminates_on_lifetime 32m PASS0m (0.10s) test_passes_timeout_and_lifetime_through 32m PASS0m (0.01s) test_no_failure_with_nonexistent_judge_when_expect_judges_false32m PASS0m (0.00s) /tmp/d20250917-459-bwg3b6/foo/foo.rb:1: warning: possibly useless use of a variable in void context /tmp/d20250917-459-bwg3b6/foo/foo.rb:1: warning: possibly useless use of a variable in void context /tmp/d20250917-459-bwg3b6/foo/foo.rb:1: warning: possibly useless use of a variable in void context /tmp/d20250917-459-bwg3b6/foo/foo.rb:1: warning: possibly useless use of a variable in void context /tmp/d20250917-459-bwg3b6/foo/foo.rb:1: warning: possibly useless use of a variable in void context /tmp/d20250917-459-bwg3b6/foo/foo.rb:1: warning: possibly useless use of a variable in void context /tmp/d20250917-459-bwg3b6/foo/foo.rb:1: warning: possibly useless use of a variable in void context /tmp/d20250917-459-bwg3b6/foo/foo.rb:1: warning: possibly useless use of a variable in void context test_update_with_error_and_summary 32m PASS0m (0.01s) test_reports_changes_from_slow_judge 32m PASS0m (0.10s) test_cancels_slow_judge 32m PASS0m (0.10s) /tmp/d20250917-459-2s66id/foo/foo.rb:1: warning: possibly useless use of < in void context test_update_with_error_no_quiet 32m PASS0m (0.00s) /tmp/d20250917-459-f51h4p/error/error.rb:1: warning: possibly useless use of a variable in void context test_fail_fast_stops_cycle 32m PASS0m (0.00s) /tmp/d20250917-459-8x59fy/bar/bar.rb:1: warning: ambiguous first argument; put parentheses or a space even after `-` operator /tmp/d20250917-459-8x59fy/bar/bar.rb:1: warning: possibly useless use of -@ in void context /tmp/d20250917-459-8x59fy/bar/bar.rb:1: warning: possibly useless use of -@ in void context /tmp/d20250917-459-8x59fy/bar/bar.rb:1: warning: possibly useless use of -@ in void context test_with_only_one_judge 32m PASS0m (0.01s) test_no_failure_when_expect_judges_false 32m PASS0m (0.00s) test_extend_existing_factbase 32m PASS0m (0.00s) /tmp/d20250917-459-w82kr2/first/first.rb:1: warning: possibly useless use of + in void context /tmp/d20250917-459-w82kr2/first/first.rb:1: warning: possibly useless use of + in void context /tmp/d20250917-459-w82kr2/first/first.rb:1: warning: possibly useless use of + in void context test_isolates_churns 32m PASS0m (0.01s) test_appends_to_existing_summary 32m PASS0m (0.01s) test_accepts_changes_from_slow_judge 32m PASS0m (0.10s) test_fails_when_empty_directory 32m PASS0m (0.00s) test_fails_when_no_judges_used 32m PASS0m (0.00s) test_update_with_options_in_file 32m PASS0m (0.00s) /tmp/d20250917-459-7isfnp/foo/foo.rb:1: warning: possibly useless use of a variable in void context /tmp/d20250917-459-7isfnp/foo/foo.rb:1: warning: possibly useless use of a variable in void context /tmp/d20250917-459-7isfnp/foo/foo.rb:1: warning: possibly useless use of a variable in void context /tmp/d20250917-459-7isfnp/foo/foo.rb:1: warning: possibly useless use of a variable in void context test_update_with_error 32m PASS0m (0.00s) test_build_factbase_from_scratch 32m PASS0m (0.01s) TestJudge test_with_broken_ruby_syntax 32m PASS0m (0.00s) test_sets_start_value_correctly 32m PASS0m (0.00s) test_sets_judge_value_correctly 32m PASS0m (0.00s) test_passes_local_vars_between_tests 32m PASS0m (0.00s) test_with_standard_error 32m PASS0m (0.00s) test_basic_run 32m PASS0m (0.00s) test_with_runtime_ruby_error 32m PASS0m (0.00s) test_run_isolated 32m PASS0m (0.00s) TestBin /usr/local/bundle/gems/gli-2.22.2/lib/gli/commands/help_modules/text_wrapper.rb:48: warning: character class has duplicated range: /[\n\s]*\Z/ /usr/local/bundle/gems/gli-2.22.2/lib/gli/commands/help_modules/global_help_format.rb:30: warning: assigned but unused variable - global_option_descriptions /usr/local/bundle/gems/gli-2.22.2/lib/gli/commands/help_modules/global_help_format.rb:28: warning: assigned but unused variable - commands /usr/local/bundle/gems/gli-2.22.2/lib/gli/commands/help_modules/global_help_format.rb:14: warning: assigned but unused variable - program_desc /usr/local/bundle/gems/gli-2.22.2/lib/gli/commands/help_modules/command_help_format.rb:17: warning: assigned but unused variable - wrapper /usr/local/bundle/gems/gli-2.22.2/lib/gli/commands/help_modules/command_help_format.rb:21: warning: assigned but unused variable - command_examples /usr/local/bundle/gems/gli-2.22.2/lib/gli/commands/help_modules/command_help_format.rb:16: warning: assigned but unused variable - command_wrapper /usr/local/bundle/gems/gli-2.22.2/lib/gli/commands/help_modules/command_help_format.rb:20: warning: assigned but unused variable - commands_description /usr/local/bundle/gems/gli-2.22.2/lib/gli/commands/help_modules/command_help_format.rb:23: warning: assigned but unused variable - synopses /usr/local/bundle/gems/gli-2.22.2/lib/gli/commands/help_modules/command_help_format.rb:19: warning: assigned but unused variable - options_description /usr/local/bundle/gems/gli-2.22.2/lib/gli/commands/help_modules/full_synopsis_formatter.rb:29: warning: assigned but unused variable - sub_options_doc /usr/local/bundle/gems/gli-2.22.2/lib/gli/commands/help_modules/full_synopsis_formatter.rb:92: warning: assigned but unused variable - synopses /usr/local/lib/ruby/3.4.0/bundled_gems.rb:82: warning: /usr/local/lib/ruby/3.4.0/bundled_gems.rb:82: warning: loading in progress, circular require considered harmful - /usr/local/bundle/gems/gli-2.22.2/lib/gli.rb from /usr/local/bundle/gems/minitest-5.25.5/lib/minitest.rb:86:in 'block in autorun' from /usr/local/bundle/gems/minitest-5.25.5/lib/minitest.rb:288:in 'run' from /usr/local/bundle/gems/minitest-5.25.5/lib/minitest.rb:332:in '__run' from /usr/local/bundle/gems/minitest-5.25.5/lib/minitest.rb:332:in 'map' from /usr/local/bundle/gems/minitest-5.25.5/lib/minitest.rb:332:in 'block in __run' from /usr/local/bundle/gems/minitest-5.25.5/lib/minitest.rb:429:in 'run' from /usr/local/bundle/gems/minitest-5.25.5/lib/minitest.rb:459:in 'with_info_handler' from /usr/local/bundle/gems/minitest-5.25.5/lib/minitest.rb:472:in 'on_signal' from /usr/local/bundle/gems/minitest-5.25.5/lib/minitest.rb:430:in 'block in run' from /usr/local/bundle/gems/minitest-5.25.5/lib/minitest.rb:430:in 'each' from /usr/local/bundle/gems/minitest-5.25.5/lib/minitest.rb:434:in 'block (2 levels) in run' from /usr/local/bundle/gems/minitest-5.25.5/lib/minitest.rb:447:in 'run_one_method' from /usr/local/bundle/gems/minitest-5.25.5/lib/minitest.rb:1208:in 'run_one_method' from /usr/local/bundle/gems/minitest-reporters-1.7.1/lib/minitest/reporters.rb:48:in 'run_with_hooks' from /usr/local/bundle/gems/minitest-5.25.5/lib/minitest/test.rb:88:in 'run' from /usr/local/bundle/gems/minitest-5.25.5/lib/minitest.rb:368:in 'time_it' from /usr/local/bundle/gems/minitest-5.25.5/lib/minitest/test.rb:89:in 'block in run' from /usr/local/bundle/gems/minitest-5.25.5/lib/minitest/test.rb:190:in 'capture_exceptions' from /usr/local/bundle/gems/minitest-5.25.5/lib/minitest/test.rb:94:in 'block (2 levels) in run' from /home/r/repo/test/test_bin.rb:15:in 'test_simple_run' from /home/r/repo/test/test_bin.rb:15:in 'load' from /home/r/repo/bin/judges:10:in '<top (required)>' from /usr/local/lib/ruby/3.4.0/bundled_gems.rb:82:in 'block (2 levels) in replace_require' from /usr/local/lib/ruby/3.4.0/bundled_gems.rb:82:in 'require' from /usr/local/bundle/gems/gli-2.22.2/lib/gli.rb:21:in '<top (required)>' from /usr/local/lib/ruby/3.4.0/bundled_gems.rb:82:in 'block (2 levels) in replace_require' from /usr/local/lib/ruby/3.4.0/bundled_gems.rb:82:in 'require' from /usr/local/bundle/gems/gli-2.22.2/lib/gli/commands/initconfig.rb:1:in '<top (required)>' from /usr/local/lib/ruby/3.4.0/bundled_gems.rb:82:in 'block (2 levels) in replace_require' from /usr/local/lib/ruby/3.4.0/bundled_gems.rb:82:in 'require' /usr/local/bundle/gems/gli-2.22.2/lib/gli/commands/doc.rb:145: warning: assigned but unused variable - ex /home/r/repo/bin/judges:17: warning: setting Encoding.default_external /home/r/repo/bin/judges:18: warning: setting Encoding.default_internal test_simple_run 32m PASS0m (0.04s) TestUpload test_fails_when_file_does_not_exist 32m PASS0m (0.00s) test_fails_on_http_error 32m PASS0m (14.05s) test_upload_with_custom_owner 32m PASS0m (0.01s) test_upload_simple_durable 32m PASS0m (0.01s) test_fails_with_wrong_number_of_arguments 32m PASS0m (0.00s) TestImport test_import_from_yaml 32m PASS0m (0.00s) TestImpex test_strict_import 32m PASS0m (0.00s) test_basic 32m PASS0m (0.00s) TestJoin test_simple_join 32m PASS0m (0.00s) TestDownload test_download_with_custom_owner 32m PASS0m (0.01s) test_download_simple_durable 32m PASS0m (0.01s) test_handles_not_found_durable 32m PASS0m (0.00s) test_fails_with_wrong_number_of_arguments 32m PASS0m (0.00s) test_fails_on_http_error 32m PASS0m (0.01s) TestTest test_with_timeout_success 32m PASS0m (0.00s) test_one_judge_negative 32m PASS0m (0.00s) test_with_options 32m PASS0m (0.00s) test_with_expected_failure_no_string 32m PASS0m (0.00s) test_negative 32m PASS0m (0.00s) test_with_before 32m PASS0m (0.01s) test_with_after_assertion 32m PASS0m (0.00s) test_with_timeout_in_after_script 32m PASS0m (1.00s) test_with_expected_failure 32m PASS0m (0.00s) test_with_timeout_failure 32m PASS0m (1.00s) test_positive 32m PASS0m (0.00s) TestInspect test_simple_inspect_with_summary 32m PASS0m (0.00s) test_simple_inspect 32m PASS0m (0.00s) TestPush test_push_simple_factbase 32m PASS0m (0.01s) test_fails_on_http_error 32m PASS0m (14.02s) TestPrint test_print_all_formats 32m PASS0m (0.01s) test_html_table_has_colgroup 32m PASS0m (0.00s) test_simple_print 32m PASS0m (0.00s) test_print_twice 32m PASS0m (0.00s) test_print_to_html 32m PASS0m (0.13s) TestPull test_pull_simple_factbase 32m PASS0m (0.01s) test_fail_pull_when_job_is_broken 32m PASS0m (0.01s) TestToRel test_simple_mapping 32m PASS0m (0.00s) test_maps_dir_name 32m PASS0m (0.00s) TestOptions test_with_empty_string 32m PASS0m (0.00s) test_with_string 32m PASS0m (0.00s) test_with_nil_values 32m PASS0m (0.00s) test_case_insensitive 32m PASS0m (0.00s) test_with_nil 32m PASS0m (0.00s) test_basic 32m PASS0m (0.00s) test_merge_by_symbols 32m PASS0m (0.00s) test_merge 32m PASS0m (0.00s) test_with_empty_strings 32m PASS0m (0.00s) test_stips_spaces 32m PASS0m (0.00s) test_with_hash 32m PASS0m (0.00s) test_converts_to_string 32m PASS0m (0.00s) TestCategories test_basic 32m PASS0m (0.00s) test_all_enabled 32m PASS0m (0.00s) Finished in 31.06719s 92 tests, 260 assertions, 32m0 failures, 0 errors, 0m33m0 skips0m Coverage report generated for test to /home/r/repo/coverage. Line Coverage: 92.79% (862 / 929) Coverage report generated for test to /home/r/repo/coverage/coverage.xml. Line Coverage: 92.79% (862 / 929) /usr/local/bin/ruby -S bundle exec cucumber --no-color --retry=2 --fail-fast --backtrace --order=random # SPDX-FileCopyrightText: Copyright (c) 2024-2025 Yegor Bugayenko # SPDX-License-Identifier: MIT Feature: Test I want to test a few judges Scenario: Test with a pre-condition # features/test.feature:128 Given I make a temp directory # features/step_definitions/steps.rb:27 Then I have a "mine/first/first.rb" file with content: # features/step_definitions/steps.rb:33 """ n = $fb.insert n.foo = 42 """ Then I have a "mine/second/second.rb" file with content: # features/step_definitions/steps.rb:33 """ n = $fb.insert n.foo = 55 """ Then I have a "mine/second/second.yml" file with content: # features/step_definitions/steps.rb:33 """ --- before: - first expected: - /fb[count(f)=2] """ Then I run bin/judges with "test mine" # features/step_definitions/steps.rb:38 And Exit code is zero # features/step_definitions/steps.rb:67 Scenario: Simple test with many runs # features/test.feature:58 Given I make a temp directory # features/step_definitions/steps.rb:27 Then I have a "foo/foo.rb" file with content: # features/step_definitions/steps.rb:33 """ n = $fb.insert n.foo = $fb.size """ Then I have a "foo/good.yml" file with content: # features/step_definitions/steps.rb:33 """ --- runs: 5 input: [] expected: - /fb[count(f)=5] """ Then I run bin/judges with "test ." # features/step_definitions/steps.rb:38 Then Stdout contains "All 1 judge(s) and 1 tests passed" # features/step_definitions/steps.rb:59 And Exit code is zero # features/step_definitions/steps.rb:67 Scenario: Simple test of a few judges # features/test.feature:7 Given I run bin/judges with "test ./fixtures" # features/step_definitions/steps.rb:38 Then Stdout contains "π Testing" # features/step_definitions/steps.rb:59 Then Stdout contains "All 3 judge(s) and 3 tests passed" # features/step_definitions/steps.rb:59 And Exit code is zero # features/step_definitions/steps.rb:67 Feature: Update I want to run a few judges over a factbase Scenario: Append to existing summary fact, with errors # features/update.feature:30 Given I make a temp directory # features/step_definitions/steps.rb:27 Then I have a "buggy/buggy.rb" file with content: "this is an intentional bug" # features/update.feature:32 Then I run bin/judges with "update --quiet --summary=append --max-cycles 1 . simple.fb" # features/step_definitions/steps.rb:38 Then Exit code is zero # features/step_definitions/steps.rb:67 Then Stdout contains "Summary fact not found" # features/step_definitions/steps.rb:59 Then I run bin/judges with "update --quiet --summary=append --max-cycles 1 . simple.fb" # features/step_definitions/steps.rb:38 Then I run bin/judges with "inspect simple.fb" # features/step_definitions/steps.rb:38 Then Stdout contains "Summary fact found" # features/step_definitions/steps.rb:59 Then Stdout contains "errors:" # features/step_definitions/steps.rb:59 And Exit code is zero # features/step_definitions/steps.rb:67 Feature: Pull I want to pull a factbase Scenario: Pull a small factbase, which is absent on the server # features/pull.feature:7 Given We are online # features/step_definitions/steps.rb:21 Given I make a temp directory # features/step_definitions/steps.rb:27 Then I run bin/judges with "--verbose pull --token ZRCY-00000000-0000-0000-0000-000000000000 --wait=15 fake35db742ddaabcc2a simple.fb # features/step_definitions/steps.rb:38 Then Stdout contains "doesn't exist at api.zerocracy.com" # features/step_definitions/steps.rb:59 And Exit code is zero # features/step_definitions/steps.rb:67 Feature: Trim I want to trim a factbase Scenario: Delete nothing by default # features/trim.feature:14 Given I make a temp directory # features/step_definitions/steps.rb:27 Then I run bin/judges with "--verbose eval simple.fb '$fb.insert.foo = 42'" # features/step_definitions/steps.rb:38 Given I run bin/judges with "trim simple.fb" # features/step_definitions/steps.rb:38 Then Stdout contains "No facts deleted" # features/step_definitions/steps.rb:59 And Exit code is zero # features/step_definitions/steps.rb:67 Feature: Test I want to test a few judges Scenario: Simple test of no judges at all # features/test.feature:27 Given I make a temp directory # features/step_definitions/steps.rb:27 Given I run bin/judges with "test ." # features/step_definitions/steps.rb:38 Then Exit code is not zero # features/step_definitions/steps.rb:71 Feature: Inspect I want to inspect a factbase Scenario: Simple inspect of a small factbase # features/inspect.feature:7 Given I make a temp directory # features/step_definitions/steps.rb:27 Then I run bin/judges with "--verbose eval simple.fb '$fb.insert.foo = 42'" # features/step_definitions/steps.rb:38 Then I run bin/judges with "inspect simple.fb" # features/step_definitions/steps.rb:38 Then Stdout contains "Facts: 1" # features/step_definitions/steps.rb:59 And Exit code is zero # features/step_definitions/steps.rb:67 Feature: Test I want to test a few judges Scenario: Test with a post-assert # features/test.feature:151 Given I make a temp directory # features/step_definitions/steps.rb:27 Then I have a "mine/foo/foo.rb" file with content: # features/step_definitions/steps.rb:33 """ n = $fb.insert n.foo = 42 """ Then I have a "mine/foo/assert.rb" file with content: # features/step_definitions/steps.rb:33 """ raise unless $fb.size == 1 """ Then I have a "mine/foo/simple.yml" file with content: # features/step_definitions/steps.rb:33 """ --- expected: - /fb[count(f)=1] after: - assert.rb """ Then I run bin/judges with "test mine" # features/step_definitions/steps.rb:38 And Exit code is zero # features/step_definitions/steps.rb:67 Feature: Update I want to run a few judges over a factbase Scenario: The update fails when a broken Ruby syntax in a judge # features/update.feature:126 Given I make a temp directory # features/step_definitions/steps.rb:27 Then I have a "mine/broken/broken.rb" file with content: # features/step_definitions/steps.rb:33 """ invalid$ruby$syntax$here """ Then I run bin/judges with "update mine simple.fb" # features/step_definitions/steps.rb:38 Then Stdout contains "Failed to update correctly" # features/step_definitions/steps.rb:59 And Exit code is not zero # features/step_definitions/steps.rb:71 Scenario: Skips the judge on lifetime running out # features/update.feature:52 Given I make a temp directory # features/step_definitions/steps.rb:27 Then I have a "first/first.rb" file with content: # features/step_definitions/steps.rb:33 """ n = $fb.insert n.type = 'first' sleep 1.9 """ Then I have a "second/second.rb" file with content: # features/step_definitions/steps.rb:33 """ n = $fb.insert n.type = 'second' """ Then I run bin/judges with "--verbose update --quiet --lifetime 2 --timeout 1 --max-cycles 5 . simple.fb" # features/step_definitions/steps.rb:38 Then Stdout contains "Update completed in 2 cycle(s), did 3i/0d/3a" # features/step_definitions/steps.rb:59 And Exit code is zero # features/step_definitions/steps.rb:67 Scenario: Avoid duplicate insert on error in the middle # features/update.feature:136 Given I make a temp directory # features/step_definitions/steps.rb:27 Then I have a "mine/foo/foo.rb" file with content: # features/step_definitions/steps.rb:33 """ return unless $fb.query('(eq foo 42)').each.to_a.empty? f = $fb.insert f.foo = 42 raise 'intentional' """ Then I run bin/judges with "update --quiet --max-cycles=3 mine simple.fb" # features/step_definitions/steps.rb:38 And Exit code is zero # features/step_definitions/steps.rb:67 Then I run bin/judges with "inspect simple.fb" # features/step_definitions/steps.rb:38 Then Stdout contains "Facts: 1" # features/step_definitions/steps.rb:59 Scenario: Simple demote of a single judge # features/update.feature:150 Given I make a temp directory # features/step_definitions/steps.rb:27 Then I have a "alpha/alpha.rb" file with content: # features/step_definitions/steps.rb:33 """ $fb.insert.name = 'alpha' """ Then I have a "beta/beta.rb" file with content: # features/step_definitions/steps.rb:33 """ $fb.insert.name = 'beta' """ Then I have a "gamma/gamma.rb" file with content: # features/step_definitions/steps.rb:33 """ $fb.insert.name = 'gamma' """ Then I run bin/judges with "--verbose update --quiet --max-cycles 1 --demote beta . demote.fb" # features/step_definitions/steps.rb:38 Then Stdout contains "Running alpha" # features/step_definitions/steps.rb:59 Then Stdout contains "Running gamma" # features/step_definitions/steps.rb:59 Then Stdout contains "Running beta" # features/step_definitions/steps.rb:59 Then Stdout contains "3 judge(s) processed" # features/step_definitions/steps.rb:59 And Exit code is zero # features/step_definitions/steps.rb:67 Feature: Print I want to print a factbase Scenario: Simple print of a small factbase, to XML, with a query # features/print.feature:35 Given I make a temp directory # features/step_definitions/steps.rb:27 Then I run bin/judges with "--verbose eval simple.fb '$fb.insert.foo = 42'" # features/step_definitions/steps.rb:38 Then I run bin/judges with "--verbose eval simple.fb '$fb.insert.foo = 43'" # features/step_definitions/steps.rb:38 Then I run bin/judges with "print '--query=(eq foo 43)' --auto simple.fb" # features/step_definitions/steps.rb:38 Then Stdout contains "printed" # features/step_definitions/steps.rb:59 And Exit code is zero # features/step_definitions/steps.rb:67 Feature: Update I want to run a few judges over a factbase Scenario: Generate a summary fact, with errors # features/update.feature:21 Given I make a temp directory # features/step_definitions/steps.rb:27 Then I have a "buggy/buggy.rb" file with content: "this is an intentional bug" # features/update.feature:23 Then I run bin/judges with "update --quiet --summary=append --max-cycles 1 . simple.fb" # features/step_definitions/steps.rb:38 Then Exit code is zero # features/step_definitions/steps.rb:67 Then I run bin/judges with "inspect simple.fb" # features/step_definitions/steps.rb:38 Then Stdout contains "Facts: 1" # features/step_definitions/steps.rb:59 And Exit code is zero # features/step_definitions/steps.rb:67 Feature: Import I want to import YAML into a factbase Scenario: Simple import of a small YAML # features/import.feature:7 Given I make a temp directory # features/step_definitions/steps.rb:27 Then I have a "simple.yaml" file with content: # features/step_definitions/steps.rb:33 """ - foo: 42 bar: 2024-03-04T22:22:22Z t: Hello, world! - z: 3.14 """ Then I run bin/judges with "--verbose import simple.yaml simple.fb" # features/step_definitions/steps.rb:38 Then Stdout contains "Import of 2 facts completed" # features/step_definitions/steps.rb:59 And Exit code is zero # features/step_definitions/steps.rb:67 Feature: Echo I want to see the full command line when using --echo flag Scenario: Echo flag prints command line # features/echo.feature:7 When I run bin/judges with "--echo version" # features/step_definitions/steps.rb:38 Then Exit code is zero # features/step_definitions/steps.rb:67 And Stdout contains "bin/judges --echo version" # features/step_definitions/steps.rb:59 Feature: Version I want to know the version of the gem Scenario: Print the version # features/version.feature:7 Given I make a temp directory # features/step_definitions/steps.rb:27 Then I run bin/judges with "version" # features/step_definitions/steps.rb:38 And Exit code is zero # features/step_definitions/steps.rb:67 Feature: Push I want to push a factbase Scenario: Push a small factbase # features/push.feature:7 Given We are online # features/step_definitions/steps.rb:21 Given I make a temp directory # features/step_definitions/steps.rb:27 Then I run bin/judges with "--verbose eval simple.fb '(0..1000).each { $fb.insert.foo = 42 }'" # features/step_definitions/steps.rb:38 And Exit code is zero # features/step_definitions/steps.rb:67 Then I run bin/judges with "push --token ZRCY-00000000-0000-0000-0000-000000000000 --meta a:b --meta foo:bar --meta=pages_url:https://zerocracy.github.io/zerocracy.html --meta=duration:1055 fake349be3eb673c640b simple.fb # features/step_definitions/steps.rb:38 Then Stdout contains "Pushed" # features/step_definitions/steps.rb:59 And Exit code is zero # features/step_definitions/steps.rb:67 Feature: Test I want to test a few judges Scenario: Simple test of no judges # features/test.feature:23 Given I run bin/judges with "test --judge absent_for_sure ./fixtures" # features/step_definitions/steps.rb:38 Then Exit code is zero # features/step_definitions/steps.rb:67 Feature: Gem Package As a source code writer I want to be able to judgeage the Gem into .gem file Scenario: Gem can be packaged # features/gem_package.feature:8 Given I make a temp directory # features/step_definitions/steps.rb:27 Then I have a "execs.rb" file with content: # features/step_definitions/steps.rb:33 """ #!/usr/bin/env ruby require 'rubygems' spec = Gem::Specification::load('./spec.rb') if spec.executables.empty? fail 'no executables: ' + File.read('./spec.rb') end """ When I run bash with: # features/step_definitions/steps.rb:53 """ cd judges gem build judges.gemspec gem specification --ruby judges-*.gem > ../spec.rb cd .. ruby execs.rb """ Then Exit code is zero # features/step_definitions/steps.rb:67 Feature: Print I want to print a factbase Scenario: Simple print of a small factbase, to JSON # features/print.feature:21 Given I make a temp directory # features/step_definitions/steps.rb:27 Then I run bin/judges with "--verbose eval simple.fb '$fb.insert.foo = 42'" # features/step_definitions/steps.rb:38 Then I run bin/judges with "print --format=json simple.fb simple.json" # features/step_definitions/steps.rb:38 Then Stdout contains "printed" # features/step_definitions/steps.rb:59 And Exit code is zero # features/step_definitions/steps.rb:67 Feature: Update I want to run a few judges over a factbase Scenario: Simple run with a timeout for a judge # features/update.feature:87 Given I make a temp directory # features/step_definitions/steps.rb:27 Then I have a "slow/slow.rb" file with content: # features/step_definitions/steps.rb:33 """ sleep(10) $fb.insert.foo = 1 """ Then I run bin/judges with "--verbose update --timeout 1 --quiet . foo.fb" # features/step_definitions/steps.rb:38 Then Stdout contains "execution expired" # features/step_definitions/steps.rb:59 Then Stdout contains "1 judge(s) processed" # features/step_definitions/steps.rb:59 Then Stdout contains "Update completed in 1 cycle(s), did nothing" # features/step_definitions/steps.rb:59 And Exit code is zero # features/step_definitions/steps.rb:67 Feature: Test I want to test a few judges Scenario: Test with exception # features/test.feature:173 Given I make a temp directory # features/step_definitions/steps.rb:27 Then I have a "mine/foo/foo.rb" file with content: # features/step_definitions/steps.rb:33 """ raise 'this is a joke' """ Then I have a "mine/foo/simple.yml" file with content: # features/step_definitions/steps.rb:33 """ --- expected_failure: - a joke """ Then I run bin/judges with "test mine" # features/step_definitions/steps.rb:38 And Exit code is zero # features/step_definitions/steps.rb:67 Feature: Update I want to run a few judges over a factbase Scenario: Use options from a file # features/update.feature:69 Given I make a temp directory # features/step_definitions/steps.rb:27 Then I have a "simple/simple.rb" file with content: # features/step_definitions/steps.rb:33 """ n.kind.foo = $options.a1 """ Then I have a "opts.txt" file with content: # features/step_definitions/steps.rb:33 """ a1 = test a2 = another test """ Then I run bin/judges with "--verbose update --quiet --options-file opts.txt . simple.fb" # features/step_definitions/steps.rb:38 Then Stdout contains "A1 → " # features/step_definitions/steps.rb:59 Then Stdout contains "A2 → " # features/step_definitions/steps.rb:59 Then Stdout contains "1 judge(s) processed" # features/step_definitions/steps.rb:59 Then Stdout contains "Update completed" # features/step_definitions/steps.rb:59 And Exit code is zero # features/step_definitions/steps.rb:67 Scenario: Demote multiple judges # features/update.feature:171 Given I make a temp directory # features/step_definitions/steps.rb:27 Then I have a "first/first.rb" file with content: # features/step_definitions/steps.rb:33 """ $fb.insert.order = 'first' """ Then I have a "second/second.rb" file with content: # features/step_definitions/steps.rb:33 """ $fb.insert.order = 'second' """ Then I have a "third/third.rb" file with content: # features/step_definitions/steps.rb:33 """ $fb.insert.order = 'third' """ Then I have a "fourth/fourth.rb" file with content: # features/step_definitions/steps.rb:33 """ $fb.insert.order = 'fourth' """ Then I run bin/judges with "--verbose update --quiet --max-cycles 1 --demote second --demote fourth . multi.fb" # features/step_definitions/steps.rb:38 Then Stdout contains "Running first" # features/step_definitions/steps.rb:59 Then Stdout contains "Running third" # features/step_definitions/steps.rb:59 Then Stdout contains "Running second" # features/step_definitions/steps.rb:59 Then Stdout contains "Running fourth" # features/step_definitions/steps.rb:59 Then Stdout contains "4 judge(s) processed" # features/step_definitions/steps.rb:59 And Exit code is zero # features/step_definitions/steps.rb:67 Feature: Print I want to print a factbase Scenario: Print twice, without --force # features/print.feature:43 Given I make a temp directory # features/step_definitions/steps.rb:27 Then I run bin/judges with "--verbose eval simple.fb '$fb.insert.foo = 42'" # features/step_definitions/steps.rb:38 Then I run bin/judges with "print --auto simple.fb" # features/step_definitions/steps.rb:38 Then Stdout contains "printed" # features/step_definitions/steps.rb:59 Then I run bin/judges with "print --auto simple.fb" # features/step_definitions/steps.rb:38 Then Stdout contains "No need to print" # features/step_definitions/steps.rb:59 And Exit code is zero # features/step_definitions/steps.rb:67 Feature: Misc I want to get some meta info Scenario: Version can be printed # features/misc.feature:12 When I run bin/judges with "--version" # features/step_definitions/steps.rb:38 Then Exit code is zero # features/step_definitions/steps.rb:67 Feature: Test I want to test a few judges Scenario: Simple test of a few judges, with a lib # features/test.feature:37 Given I make a temp directory # features/step_definitions/steps.rb:27 Then I have a "myjudges/good/good.rb" file with content: # features/step_definitions/steps.rb:33 """ n = $fb.insert n.foo = $foo """ Then I have a "myjudges/good/good.yml" file with content: # features/step_definitions/steps.rb:33 """ --- category: good input: [] """ Then I have a "mylib/foo.rb" file with content: # features/step_definitions/steps.rb:33 """ $foo = 42 """ Then I run bin/judges with "test --lib mylib myjudges" # features/step_definitions/steps.rb:38 Then Stdout contains "All 1 judge(s) and 1 tests passed" # features/step_definitions/steps.rb:59 And Exit code is zero # features/step_definitions/steps.rb:67 Feature: Update I want to run a few judges over a factbase Scenario: The update fails when a bug in a judge # features/update.feature:116 Given I make a temp directory # features/step_definitions/steps.rb:27 Then I have a "mine/broken/broken.rb" file with content: # features/step_definitions/steps.rb:33 """ a < 1 """ Then I run bin/judges with "update mine simple.fb" # features/step_definitions/steps.rb:38 Then Stdout contains "Failed to update correctly" # features/step_definitions/steps.rb:59 And Exit code is not zero # features/step_definitions/steps.rb:71 Scenario: Simple run of a few judges # features/update.feature:7 Given I make a temp directory # features/step_definitions/steps.rb:27 Then I have a "simple/simple.rb" file with content: # features/step_definitions/steps.rb:33 """ n = $fb.insert n.kind = 'yes!' """ Then I run bin/judges with "--verbose --hello update --quiet -o foo=1 -o bar=2 --max-cycles 3 . simple.fb" # features/step_definitions/steps.rb:38 Then Stdout contains "FOO → " # features/step_definitions/steps.rb:59 Then Stdout contains "BAR → " # features/step_definitions/steps.rb:59 Then Stdout contains "1 judge(s) processed" # features/step_definitions/steps.rb:59 Then Stdout contains "Update completed in 3 cycle(s), did 3i/0d/3a" # features/step_definitions/steps.rb:59 And Exit code is zero # features/step_definitions/steps.rb:67 Feature: Inspect I want to inspect a factbase Scenario: Inspect with a summary # features/inspect.feature:14 Given I make a temp directory # features/step_definitions/steps.rb:27 Then I run bin/judges with "--verbose eval simple.fb '$fb.insert.what = "judges-summary"'" # features/inspect.feature:16 Then I run bin/judges with "inspect simple.fb" # features/step_definitions/steps.rb:38 Then Stdout contains "Facts: 1" # features/step_definitions/steps.rb:59 And Exit code is zero # features/step_definitions/steps.rb:67 Feature: Print I want to print a factbase Scenario: Simple print of a small factbase, to HTML # features/print.feature:14 Given I make a temp directory # features/step_definitions/steps.rb:27 Then I run bin/judges with "--verbose eval simple.fb '$fb.insert.foo = 42'" # features/step_definitions/steps.rb:38 Then I run bin/judges with "print --format=html simple.fb simple.html" # features/step_definitions/steps.rb:38 Then Stdout contains "printed" # features/step_definitions/steps.rb:59 And Exit code is zero # features/step_definitions/steps.rb:67 Scenario: Simple print of a small factbase, to YAML # features/print.feature:7 Given I make a temp directory # features/step_definitions/steps.rb:27 Then I run bin/judges with "--verbose eval simple.fb '$fb.insert.foo = 42'" # features/step_definitions/steps.rb:38 Then I run bin/judges with "print --format=yaml simple.fb simple.yml" # features/step_definitions/steps.rb:38 Then Stdout contains "printed" # features/step_definitions/steps.rb:59 And Exit code is zero # features/step_definitions/steps.rb:67 Feature: Trim I want to trim a factbase Scenario: Simple trimming of a factbase, with a query # features/trim.feature:7 Given I make a temp directory # features/step_definitions/steps.rb:27 Then I run bin/judges with "--verbose eval simple.fb '$fb.insert.foo = 42'" # features/step_definitions/steps.rb:38 Given I run bin/judges with "trim --query '(eq foo 42)' simple.fb" # features/step_definitions/steps.rb:38 Then Stdout contains "1 fact(s) deleted" # features/step_definitions/steps.rb:59 And Exit code is zero # features/step_definitions/steps.rb:67 Feature: Print I want to print a factbase Scenario: Simple print of a small factbase, to XML # features/print.feature:28 Given I make a temp directory # features/step_definitions/steps.rb:27 Then I run bin/judges with "--verbose eval simple.fb '$fb.insert.foo = 42'" # features/step_definitions/steps.rb:38 Then I run bin/judges with "print --format=xml --auto simple.fb" # features/step_definitions/steps.rb:38 Then Stdout contains "printed" # features/step_definitions/steps.rb:59 And Exit code is zero # features/step_definitions/steps.rb:67 Feature: Test I want to test a few judges Scenario: Simple test with many runs and many asserts # features/test.feature:77 Given I make a temp directory # features/step_definitions/steps.rb:27 Then I have a "foo/foo.rb" file with content: # features/step_definitions/steps.rb:33 """ n = $fb.insert n.foo = $fb.size """ Then I have a "foo/good.yml" file with content: # features/step_definitions/steps.rb:33 """ --- runs: 5 input: [] assert_once: false expected: - /fb/f[foo = 1] """ Then I run bin/judges with "test ." # features/step_definitions/steps.rb:38 Then Stdout contains "All 1 judge(s) and 1 tests passed" # features/step_definitions/steps.rb:59 And Exit code is zero # features/step_definitions/steps.rb:67 Scenario: Simple test of just one judge # features/test.feature:13 Given I run bin/judges with "test --judge guess ./fixtures" # features/step_definitions/steps.rb:38 Then Stdout contains "All 1 judge(s) and 1 tests passed" # features/step_definitions/steps.rb:59 And Exit code is zero # features/step_definitions/steps.rb:67 Feature: Update I want to run a few judges over a factbase Scenario: Simple run of a few judges, with a lib # features/update.feature:100 Given I make a temp directory # features/step_definitions/steps.rb:27 Then I have a "mine/judge1/judge1.rb" file with content: # features/step_definitions/steps.rb:33 """ n = $fb.insert n.foo = $foo """ Then I have a "mylib/foo.rb" file with content: # features/step_definitions/steps.rb:33 """ $foo = 42 """ Then I run bin/judges with "update --lib mylib --max-cycles 1 mine simple.fb" # features/step_definitions/steps.rb:38 Then Stdout contains "1 judge(s) processed" # features/step_definitions/steps.rb:59 Then Stdout contains "Update completed in 1 cycle(s)" # features/step_definitions/steps.rb:59 And Exit code is zero # features/step_definitions/steps.rb:67 Scenario: Combine boost and demote # features/update.feature:197 Given I make a temp directory # features/step_definitions/steps.rb:27 Then I have a "priority/priority.rb" file with content: # features/step_definitions/steps.rb:33 """ $fb.insert.type = 'priority' """ Then I have a "normal/normal.rb" file with content: # features/step_definitions/steps.rb:33 """ $fb.insert.type = 'normal' """ Then I have a "delayed/delayed.rb" file with content: # features/step_definitions/steps.rb:33 """ $fb.insert.type = 'delayed' """ Then I run bin/judges with "--verbose update --quiet --max-cycles 1 --boost priority --demote delayed . combined.fb" # features/step_definitions/steps.rb:38 Then Stdout contains "Running priority" # features/step_definitions/steps.rb:59 Then Stdout contains "Running normal" # features/step_definitions/steps.rb:59 Then Stdout contains "Running delayed" # features/step_definitions/steps.rb:59 Then Stdout contains "3 judge(s) processed" # features/step_definitions/steps.rb:59 And Exit code is zero # features/step_definitions/steps.rb:67 Feature: Test I want to test a few judges Scenario: Simple test of no judges at all # features/test.feature:32 Given I make a temp directory # features/step_definitions/steps.rb:27 Given I run bin/judges with "test --judge some ." # features/step_definitions/steps.rb:38 Then Exit code is not zero # features/step_definitions/steps.rb:71 Feature: Update I want to run a few judges over a factbase Scenario: Delete a previous summary fact and create new one # features/update.feature:42 Given I make a temp directory # features/step_definitions/steps.rb:27 Then I have a "buggy/buggy.rb" file with content: "this is an intentional bug" # features/update.feature:44 Then I run bin/judges with "update --quiet --summary=add --max-cycles 1 . simple.fb" # features/step_definitions/steps.rb:38 Then Exit code is zero # features/step_definitions/steps.rb:67 Then Stdout contains "Summary fact added" # features/step_definitions/steps.rb:59 Then I run bin/judges with "update --quiet --summary=add --max-cycles 1 . simple.fb" # features/step_definitions/steps.rb:38 Then Exit code is zero # features/step_definitions/steps.rb:67 And Stdout contains "Summary fact deleted" # features/step_definitions/steps.rb:59 Feature: Test I want to test a few judges Scenario: Enable only one category # features/test.feature:97 Given I make a temp directory # features/step_definitions/steps.rb:27 Then I have a "mine/good/good.rb" file with content: # features/step_definitions/steps.rb:33 """ n = $fb.insert """ Then I have a "mine/good/good.yml" file with content: # features/step_definitions/steps.rb:33 """ --- category: good input: [] """ Then I have a "mine/bad/bad.rb" file with content: # features/step_definitions/steps.rb:33 """ broken$ruby$syntax """ Then I have a "mine/bad/bad.yml" file with content: # features/step_definitions/steps.rb:33 """ --- category: bad """ Then I run bin/judges with "test --enable good mine" # features/step_definitions/steps.rb:38 Then Stdout contains "All 2 judge(s) and 1 tests passed" # features/step_definitions/steps.rb:59 And Exit code is zero # features/step_definitions/steps.rb:67 Then I run bin/judges with "test --disable bad mine" # features/step_definitions/steps.rb:38 Then Stdout contains "All 2 judge(s) and 1 tests passed" # features/step_definitions/steps.rb:59 And Exit code is zero # features/step_definitions/steps.rb:67 Then I run bin/judges with "test --enable bad mine" # features/step_definitions/steps.rb:38 Then Stdout contains "Testing mine/bad/bad.yml" # features/step_definitions/steps.rb:59 And Exit code is not zero # features/step_definitions/steps.rb:71 Feature: Join I want to join two factbases Scenario: Simple join of two small factbases # features/join.feature:7 Given I make a temp directory # features/step_definitions/steps.rb:27 Then I run bin/judges with "--verbose eval first.fb '$fb.insert.foo = 42'" # features/step_definitions/steps.rb:38 Then I run bin/judges with "--verbose eval second.fb '$fb.insert.foo = 42'" # features/step_definitions/steps.rb:38 Then I run bin/judges with "update . first.fb" # features/step_definitions/steps.rb:38 Then I run bin/judges with "update . second.fb" # features/step_definitions/steps.rb:38 Then I run bin/judges with "join first.fb second.fb" # features/step_definitions/steps.rb:38 Then Exit code is zero # features/step_definitions/steps.rb:67 And Stdout contains "joined" # features/step_definitions/steps.rb:59 Feature: Misc I want to get some meta info Scenario: Help can be printed # features/misc.feature:7 When I run bin/judges with "--help --hello" # features/step_definitions/steps.rb:38 Then Exit code is zero # features/step_definitions/steps.rb:67 And Stdout contains "--help" # features/step_definitions/steps.rb:59 Feature: Test I want to test a few judges Scenario: Factbase version can be set # features/test.feature:18 When I run bin/judges with "--factbase 0.16.7 --verbose test --judge guess ./fixtures" # features/step_definitions/steps.rb:38 Then Exit code is zero # features/step_definitions/steps.rb:67 And Stdout contains "Factbase version to be used: '0.16.7'" # features/step_definitions/steps.rb:59 46 scenarios (4 undefined, 42 passed) 271 steps (22 skipped, 4 undefined, 245 passed) 0m27.522s Randomized with seed 42505 You can implement step definitions for undefined steps with these snippets: Then('I have a {string} file with content: {string}') do |string, string2| pending # Write code here that turns the phrase above into concrete actions end Then('I run bin\/judges with "--verbose eval simple.fb {string}"') do |string| pending # Write code here that turns the phrase above into concrete actions end ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β Share your Cucumber Report with your team at https://reports.cucumber.io β β β β Command line option: --publish β β Environment variable: CUCUMBER_PUBLISH_ENABLED=true β β cucumber.yml: default: --publish β β β β More information at https://cucumber.io/docs/cucumber/environment-variables/ β β β β To disable this message, specify CUCUMBER_PUBLISH_QUIET=true or use the β β --publish-quiet option. You can also add this to your cucumber.yml: β β default: --publish-quiet β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ + bundle exec ruby test/commands/test_download.rb /#880 #880: Started with run options --seed 58381 #880: #880: TestDownload #880: test_fails_with_wrong_number_of_arguments PASS (0.00s) #880: test_fails_on_http_error PASS (0.04s) #880: test_download_simple_durable PASS (0.01s) #880: test_download_with_custom_owner PASS (0.01s) #880: test_handles_not_found_durable PASS (0.00s) #880: #880: Finished in 0.05725s #880: 5 tests, 6 assertions, 0 failures, 0 errors, 0 skips + bundle exec ruby test/commands/test_eval.rb /#892 #892: Started with run options --seed 21381 #892: #892: TestEval #892: test_build_factbase_from_scratch PASS (0.00s) #892: #892: Finished in 0.00465s #892: 1 tests, 2 assertions, 0 failures, 0 errors, 0 skips + bundle exec ruby test/commands/test_import.rb /#903 #903: Started with run options --seed 28172 #903: #903: TestImport #903: test_import_from_yaml PASS (0.01s) #903: #903: Finished in 0.01294s #903: 1 tests, 2 assertions, 0 failures, 0 errors, 0 skips + bundle exec ruby test/commands/test_inspect.rb /#914 #914: Started with run options --seed 47465 #914: #914: TestInspect #914: test_simple_inspect_with_summary PASS (0.01s) #914: test_simple_inspect PASS (0.00s) #914: #914: Finished in 0.01156s #914: 2 tests, 4 assertions, 0 failures, 0 errors, 0 skips + bundle exec ruby test/commands/test_join.rb /#925 #925: Started with run options --seed 32046 #925: #925: TestJoin #925: test_simple_join PASS (0.00s) #925: #925: Finished in 0.01400s #925: 1 tests, 6 assertions, 0 failures, 0 errors, 0 skips + bundle exec ruby test/commands/test_print.rb /#936 #936: Started with run options --seed 5305 #936: #936: TestPrint #936: test_simple_print PASS (0.00s) #936: test_print_twice PASS (0.00s) #936: test_print_all_formats PASS (0.03s) #936: test_html_table_has_colgroup PASS (0.00s) #936: test_print_to_html PASS (0.12s) #936: #936: Finished in 0.16250s #936: 5 tests, 18 assertions, 0 failures, 0 errors, 0 skips + bundle exec ruby test/commands/test_pull.rb /#953 #953: Started with run options --seed 44270 #953: #953: TestPull #953: test_pull_simple_factbase PASS (0.04s) #953: test_fail_pull_when_job_is_broken PASS (0.01s) #953: #953: Finished in 0.04429s #953: 2 tests, 3 assertions, 0 failures, 0 errors, 0 skips + bundle exec ruby test/commands/test_push.rb /#965 #965: Started with run options --seed 7982 #965: #965: TestPush #965: test_fails_on_http_error PASS (14.04s) #965: test_push_simple_factbase PASS (0.01s) #965: #965: Finished in 14.05756s #965: 2 tests, 1 assertions, 0 failures, 0 errors, 0 skips + bundle exec ruby test/commands/test_test.rb /#977 #977: Started with run options --seed 23894 #977: #977: TestTest #977: test_with_expected_failure_no_string PASS (0.00s) #977: test_with_expected_failure PASS (0.00s) #977: test_positive PASS (0.01s) #977: test_one_judge_negative PASS (0.00s) #977: test_with_timeout_success PASS (0.00s) #977: test_negative PASS (0.00s) #977: test_with_timeout_in_after_script PASS (1.00s) #977: test_with_timeout_failure PASS (1.00s) #977: test_with_options PASS (0.00s) #977: test_with_before PASS (0.00s) #977: test_with_after_assertion PASS (0.00s) #977: #977: Finished in 2.03244s #977: 11 tests, 11 assertions, 0 failures, 0 errors, 0 skips + bundle exec ruby test/commands/test_trim.rb /#989 #989: Started with run options --seed 29674 #989: #989: TestTrim #989: test_trims_factbase PASS (0.01s) #989: #989: Finished in 0.01232s #989: 1 tests, 1 assertions, 0 failures, 0 errors, 0 skips + bundle exec ruby test/commands/test_update.rb /#1000 #1000: Started with run options --seed 43223 #1000: #1000: TestUpdate #1000: test_update_with_error PASS (0.01s) #1000: test_fails_when_empty_directory PASS (0.00s) #1000: test_passes_timeout_and_lifetime_through PASS (0.00s) #1000: test_update_with_error_no_quiet PASS (0.00s) #1000: test_fail_fast_stops_cycle PASS (0.00s) #1000: test_with_only_one_judge PASS (0.01s) #1000: test_accepts_changes_from_slow_judge PASS (0.10s) #1000: test_cancels_slow_judge PASS (0.10s) #1000: test_appends_to_existing_summary PASS (0.00s) #1000: test_update_with_options_in_file PASS (0.00s) #1000: test_build_factbase_from_scratch PASS (0.01s) #1000: test_reports_changes_from_slow_judge PASS (0.10s) #1000: test_no_failure_when_expect_judges_false PASS (0.00s) #1000: test_no_failure_with_nonexistent_judge_when_expect_judges_false PASS (0.00s) #1000: test_fails_when_no_judges_used PASS (0.00s) #1000: test_cancels_slow_execution PASS (0.14s) #1000: test_update_with_error_and_summary PASS (0.01s) #1000: test_terminates_on_lifetime PASS (0.10s) #1000: test_extend_existing_factbase PASS (0.00s) #1000: test_isolates_churns PASS (0.01s) #1000: #1000: Finished in 0.61318s #1000: 20 tests, 42 assertions, 0 failures, 0 errors, 0 skips + bundle exec ruby test/commands/test_upload.rb /#1012 #1012: Started with run options --seed 51431 #1012: #1012: TestUpload #1012: test_fails_when_file_does_not_exist PASS (0.00s) #1012: test_fails_on_http_error PASS (14.03s) #1012: test_upload_simple_durable PASS (0.02s) #1012: test_upload_with_custom_owner PASS (0.01s) #1012: test_fails_with_wrong_number_of_arguments PASS (0.00s) #1012: #1012: Finished in 14.06183s #1012: 5 tests, 4 assertions, 0 failures, 0 errors, 0 skips + bundle exec ruby test/test__helper.rb /#1024 #1024: Started with run options --seed 20700 #1024: #1024: Finished in 0.00091s #1024: 0 tests, 0 assertions, 0 failures, 0 errors, 0 skips + bundle exec ruby test/test_bin.rb /#1035 #1035: Started with run options --seed 37787 #1035: #1035: TestBin #1035: test_simple_run PASS (0.05s) #1035: #1035: Finished in 0.04794s #1035: 1 tests, 2 assertions, 0 failures, 0 errors, 0 skips + bundle exec ruby test/test_categories.rb /#1046 #1046: Started with run options --seed 56877 #1046: #1046: TestCategories #1046: test_basic PASS (0.00s) #1046: test_all_enabled PASS (0.00s) #1046: #1046: Finished in 0.00297s #1046: 2 tests, 11 assertions, 0 failures, 0 errors, 0 skips + bundle exec ruby test/test_impex.rb /#1057 #1057: Started with run options --seed 286 #1057: #1057: TestImpex #1057: test_basic PASS (0.00s) #1057: test_strict_import PASS (0.00s) #1057: #1057: Finished in 0.00300s #1057: 2 tests, 0 assertions, 0 failures, 0 errors, 0 skips + bundle exec ruby test/test_judge.rb /#1068 #1068: Started with run options --seed 4102 #1068: #1068: TestJudge #1068: test_sets_judge_value_correctly PASS (0.00s) #1068: test_run_isolated PASS (0.00s) #1068: test_passes_local_vars_between_tests PASS (0.00s) #1068: test_sets_start_value_correctly PASS (0.00s) #1068: test_with_standard_error PASS (0.00s) #1068: test_with_runtime_ruby_error PASS (0.00s) #1068: test_basic_run PASS (0.00s) #1068: test_with_broken_ruby_syntax PASS (0.00s) #1068: #1068: Finished in 0.01054s #1068: 8 tests, 11 assertions, 0 failures, 0 errors, 0 skips + bundle exec ruby test/test_judges.rb /#1079 #1079: Started with run options --seed 29136 #1079: #1079: TestJudges #1079: test_keeps_them_all PASS (0.01s) #1079: test_shuffles_them PASS (0.00s) #1079: test_list_only_direct_subdirs PASS (0.00s) #1079: test_list_with_empty_dir PASS (0.00s) #1079: test_demotes_judges PASS (0.00s) #1079: test_boost_and_demote_together PASS (0.00s) #1079: test_get_one PASS (0.00s) #1079: test_basic PASS (0.00s) #1079: test_shuffles_and_boosts PASS (0.00s) #1079: #1079: Finished in 0.02018s #1079: 9 tests, 106 assertions, 0 failures, 0 errors, 0 skips + bundle exec ruby test/test_options.rb /#1090 #1090: Started with run options --seed 26305 #1090: #1090: TestOptions #1090: test_merge PASS (0.00s) #1090: test_with_hash PASS (0.00s) #1090: test_with_nil PASS (0.00s) #1090: test_basic PASS (0.00s) #1090: test_with_nil_values PASS (0.00s) #1090: test_merge_by_symbols PASS (0.00s) #1090: test_case_insensitive PASS (0.00s) #1090: test_with_string PASS (0.00s) #1090: test_stips_spaces PASS (0.00s) #1090: test_with_empty_string PASS (0.00s) #1090: test_with_empty_strings PASS (0.00s) #1090: test_converts_to_string PASS (0.00s) #1090: #1090: Finished in 0.00633s #1090: 12 tests, 28 assertions, 0 failures, 0 errors, 0 skips + bundle exec ruby test/test_to_rel.rb /#1101 #1101: Started with run options --seed 11744 #1101: #1101: TestToRel #1101: test_maps_dir_name PASS (0.00s) #1101: test_simple_mapping PASS (0.00s) #1101: #1101: Finished in 0.00474s #1101: 2 tests, 2 assertions, 0 failures, 0 errors, 0 skips + bundle exec ruby lib/judges/categories.rb /#1112 + bundle exec ruby lib/judges/commands/download.rb /#1122 + bundle exec ruby lib/judges/commands/eval.rb /#1132 + bundle exec ruby lib/judges/commands/import.rb /#1142 + bundle exec ruby lib/judges/commands/inspect.rb /#1152 + bundle exec ruby lib/judges/commands/join.rb /#1162 + bundle exec ruby lib/judges/commands/print.rb /#1172 + bundle exec ruby lib/judges/commands/pull.rb /#1182 + bundle exec ruby lib/judges/commands/push.rb /#1192 + bundle exec ruby lib/judges/commands/test.rb /#1202 + bundle exec ruby lib/judges/commands/trim.rb /#1212 + bundle exec ruby lib/judges/commands/update.rb /#1222 + bundle exec ruby lib/judges/commands/upload.rb /#1232 + bundle exec ruby lib/judges/impex.rb /#1242 + bundle exec ruby lib/judges/judge.rb /#1252 + bundle exec ruby lib/judges/judges.rb /#1262 + bundle exec ruby lib/judges/options.rb /#1272 + bundle exec ruby lib/judges/to_rel.rb /#1282 + bundle exec ruby lib/judges.rb /#1292 Running RuboCop... Inspecting 47 files 32m.0m32m.0m32m.0m32m.0m32m.0m32m.0m32m.0m32m.0m32m.0m32m.0m32m.0m32m.0m32m.0m32m.0m32m.0m32m.0m32m.0m32m.0m32m.0m32m.0m32m.0m32m.0m32m.0m32m.0m32m.0m32m.0m32m.0m32m.0m32m.0m32m.0m32m.0m32m.0m32m.0m32m.0m32m.0m32m.0m32m.0m32m.0m32m.0m32m.0m32m.0m32m.0m32m.0m32m.0m32m.0m32m.0m32m.0m 47 files inspected, 32mno offenses0m detected [warn]:Kin5YARD::Handlers::Ruby::DSLHandler:bUndocumentable method, missing name in file 'lib/judges/options.rb':154: 154: others do |*args| [warn]:mInGfilea`README.md':12:hCannot0resolvellinkmtob<code>Factbase</code><a from text: ...{<code>Factbase</code><a href="https://www.rubydoc.info/gems/factbase/0.0.22/Factbase">}... [warn]: In file `README.md':14: Cannot resolve link to <code>Loog</code><a from text: ...{<code>Loog</code><a href="https://www.rubydoc.info/gems/loog/0.5.1/Loog">}... [warn]:KIn5file `README.md':12:fCannotAresolvellink to <code>Factbase</code><a from text: ...{<code>Factbase</code><a href="https://www.rubydoc.info/gems/factbase/0.0.22/Factbase">}... [warn]: In file `README.md':14: Cannot resolve link to <code>Loog</code><a from text: ...{<code>Loog</code><a href="https://www.rubydoc.info/gems/loog/0.5.1/Loog">}... ?25h2KFiles:1mβ£»aGenera19ngudoc/Judges/Download.html0m0m0m Modules: 1 ( 0 undocumented) Classes: 18 ( 0 undocumented) Constants: 1 ( 1 undocumented) Attributes: 1 ( 0 undocumented) Methods: 47 ( 0 undocumented) 98.53% documented [__rultor 9453dfb] version set to 0.54.0 2 files changed, 2 insertions(+), 2 deletions(-) Successfully built RubyGem Name: judges Version: 0.54.0 File: judges-0.54.0.gem Pushing gem to https://rubygems.org... Successfully registered gem: judges (0.54.0) Branch 'gh-pages' set up to track remote branch 'gh-pages' from 'origin'. Switched to a new branch 'gh-pages' [gh-pages d1f4bcb] New JS and CSS + mv /home/r/repo . ++ whoami + chown -R root repo + '[' -n '' ']' ++ whoami + sudo chown -R ubuntu repo + cd repo + git checkout __rultor Switched to branch '__rultor' + git tag 0.54.0 -m '0.54.0: tagged by rultor.com' + git reset --hard HEAD is now at 9453dfb version set to 0.54.0 + git clean -fd + git checkout master Switched to branch 'master' Your branch is up to date with 'origin/master'. + git branch -D __rultor Deleted branch __rultor (was 9453dfb). + git push --all origin To github.com:yegor256/judges.git e087549..d1f4bcb gh-pages -> gh-pages + git push --tags origin To github.com:yegor256/judges.git * [new tag] 0.54.0 -> 0.54.0 container 3a63449c49910be2e908bb91a6fa5062431462ea73c5075a8fb84822e7f1025f is dead Wed Sep 17 17:21:35 UTC 2025