rultor.com logo This build log was produced by rultor.com for yegor256/factbase#971
++ dirname ./run.sh
+ cd .
+ echo 2003
+ echo '2.0-SNAPSHOT BUILD'
2.0-SNAPSHOT BUILD
+ date
Thu Sep 17 09:07:45 UTC 2026
+ uptime
 09:07:45 up 7 min,  0 users,  load average: 0.25, 0.13, 0.07
+ ff=default
+ image=yegor256/ruby
+ rebase=false
+ head_branch=master
+ pull_title='Update reviewdog/action-actionlint action to v1.75.0'
+ author=yegor256
+ directory=
+ head=git@github.com:yegor256/factbase.git
+ pull_id=971
+ fork=git@github.com:yegor256/factbase.git
+ fork_branch=renovate/reviewdog-action-actionlint-1.x
+ squash=false
+ vars=('--env=head=git@github.com:yegor256/factbase.git' '--env=pull_id=971' '--env=fork=git@github.com:yegor256/factbase.git' '--env=fork_branch=renovate/reviewdog-action-actionlint-1.x' '--env=head_branch=master' '--env=pull_title=Update reviewdog/action-actionlint action to v1.75.0' '--env=author=yegor256' '--env=scripts=( '\''export '\''\'\'''\''head=git@github.com:yegor256/factbase.git'\''\'\'''\'''\'' '\'';'\'' '\''export '\''\'\'''\''pull_id=971'\''\'\'''\'''\'' '\'';'\'' '\''export '\''\'\'''\''fork=git@github.com:yegor256/factbase.git'\''\'\'''\'''\'' '\'';'\'' '\''export '\''\'\'''\''fork_branch=renovate/reviewdog-action-actionlint-1.x'\''\'\'''\'''\'' '\'';'\'' '\''export '\''\'\'''\''head_branch=master'\''\'\'''\'''\'' '\'';'\'' '\''export '\''\'\'''\''pull_title=Update reviewdog/action-actionlint action to v1.75.0'\''\'\'''\'''\'' '\'';'\'' '\''export '\''\'\'''\''author=yegor256'\''\'\'''\'''\'' '\'';'\'' '\''pdd -f /dev/null'\'' '\'';'\'' '\''bundle install --no-color'\'' '\'';'\'' '\''bundle exec rake'\'' '\'';'\'' )')
+ scripts=('export '\''head=git@github.com:yegor256/factbase.git'\''' ';' 'export '\''pull_id=971'\''' ';' 'export '\''fork=git@github.com:yegor256/factbase.git'\''' ';' 'export '\''fork_branch=renovate/reviewdog-action-actionlint-1.x'\''' ';' 'export '\''head_branch=master'\''' ';' 'export '\''pull_title=Update reviewdog/action-actionlint action to v1.75.0'\''' ';' 'export '\''author=yegor256'\''' ';' 'pdd -f /dev/null' ';' 'bundle install --no-color' ';' 'bundle exec rake' ';')
+ container=yegor256_factbase_971
+ as_root=false
+ set -e -o pipefail
+ hostname
ip-172-31-31-224
+ pwd
/tmp/rultor-ww5o
+ 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/factbase.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/factbase.git'\''' ']'
+ cd ..
+ cat
+ '[' false = true ']'
+ cat
+ chmod a+x entry.sh
+ cat
+ echo 'export '\''head=git@github.com:yegor256/factbase.git'\''' ';' 'export '\''pull_id=971'\''' ';' 'export '\''fork=git@github.com:yegor256/factbase.git'\''' ';' 'export '\''fork_branch=renovate/reviewdog-action-actionlint-1.x'\''' ';' 'export '\''head_branch=master'\''' ';' 'export '\''pull_title=Update reviewdog/action-actionlint action to v1.75.0'\''' ';' 'export '\''author=yegor256'\''' ';' 'pdd -f /dev/null' ';' 'bundle install --no-color' ';' 'bundle exec rake' ';'
+ sensitive=()
+ set -ex -o pipefail
+ cd repo
+ git remote add fork git@github.com:yegor256/factbase.git
+ git remote update
Fetching origin
Fetching fork
From github.com:yegor256/factbase
 * [new branch]        benchmark-results      -> fork/benchmark-results
 * [new branch]        benchmark-results-12153833986 -> fork/benchmark-results-12153833986
 * [new branch]        copilot/fix-117        -> fork/copilot/fix-117
 * [new branch]        master                 -> fork/master
 * [new branch]        renovate/reviewdog-action-actionlint-1.x -> fork/renovate/reviewdog-action-actionlint-1.x
 * [new branch]        renovate/rubocop-1.x-lockfile -> fork/renovate/rubocop-1.x-lockfile
 * [new branch]        renovate/rubocop-elegant-0.x-lockfile -> fork/renovate/rubocop-elegant-0.x-lockfile
 * [new branch]        renovate/rubocop-performance-1.x-lockfile -> fork/renovate/rubocop-performance-1.x-lockfile
 * [new branch]        renovate/simplecov-1.x -> fork/renovate/simplecov-1.x
 * [new branch]        renovate/simplecov-cobertura-4.x -> fork/renovate/simplecov-cobertura-4.x
+ args=()
+ '[' default == default ']'
+ args+=(--ff)
+ '[' default == no ']'
+ '[' default == only ']'
+ '[' false == true ']'
+ BRANCH=__rultor
++ wc -l
++ git show-branch __rultor
+ '[' 0 -gt 0 ']'
+ export BRANCH
+ git status
On branch master
Your branch is up to date with 'origin/master'.

nothing to commit, working tree clean
+ git checkout -B __rultor fork/renovate/reviewdog-action-actionlint-1.x
Switched to a new branch '__rultor'
Branch '__rultor' set up to track remote branch 'renovate/reviewdog-action-actionlint-1.x' from 'fork'.
+ git checkout -B master origin/master
Switched to and reset branch 'master'
Branch 'master' set up to track remote branch 'master' from 'origin'.
Your branch is up to date with 'origin/master'.
+ '[' false == true ']'
+ KEY=3FD3FA7E9AF0FA4C
+ git merge --gpg-sign=3FD3FA7E9AF0FA4C --no-edit -m 'Update reviewdog/action-actionlint action to v1.75.0' --ff __rultor
Merge made by the 'ort' strategy.
 .github/workflows/actionlint.yml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
+ git log -1 --show-signature
commit 9d2a1d598f9c7b1082d994d4b60b64e01ea8adcc
gpg: Signature made Thu Sep 17 09:07:50 2026 UTC
gpg:                using RSA key FAC962C42841735692C13FF43FD3FA7E9AF0FA4C
gpg: Good signature from "Rultor.com <gpg@rultor.com>" [unknown]
gpg: WARNING: This key is not certified with a trusted signature!
gpg:          There is no indication that the signature belongs to the owner.
Primary key fingerprint: FAC9 62C4 2841 7356 92C1  3FF4 3FD3 FA7E 9AF0 FA4C
Merge: ff2195ee 8a5248c1
Author: Rultor.com <gpg@rultor.com>
Date:   Thu Sep 17 09:07:50 2026 +0000

    Update reviewdog/action-actionlint action to v1.75.0
+ docker_when_possible
+ true
++ tail -n 1
++ sed 's/ /\n/g'
++ uptime
+ load=0.07
++ bc
++ echo 0.07 '>' 30
+ '[' 0 -eq 1 ']'
+ echo 'load average is 0.07, low enough to run a new Docker container'
load average is 0.07, 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
cb259a83ac3d: Pulling fs layer
4f4fb700ef54: Pulling fs layer
50778be6ae7c: Pulling fs layer
de39015cb2a0: Pulling fs layer
c5d1f12c356a: Pulling fs layer
e9b75b04736a: Pulling fs layer
74aacb7acb4e: Pulling fs layer
b343964c14ed: Pulling fs layer
2da5d65999c3: Pulling fs layer
de39015cb2a0: Waiting
c5d1f12c356a: Waiting
e9b75b04736a: Waiting
74aacb7acb4e: Waiting
b343964c14ed: Waiting
2da5d65999c3: Waiting
4f4fb700ef54: Verifying Checksum
4f4fb700ef54: Download complete
50778be6ae7c: Verifying Checksum
50778be6ae7c: Download complete
cb259a83ac3d: Verifying Checksum
cb259a83ac3d: Download complete
e9b75b04736a: Verifying Checksum
e9b75b04736a: Download complete
74aacb7acb4e: Verifying Checksum
74aacb7acb4e: Download complete
b343964c14ed: Verifying Checksum
b343964c14ed: Download complete
2da5d65999c3: Verifying Checksum
2da5d65999c3: Download complete
c5d1f12c356a: Verifying Checksum
c5d1f12c356a: Download complete
cb259a83ac3d: Pull complete
4f4fb700ef54: Pull complete
de39015cb2a0: Verifying Checksum
de39015cb2a0: Download complete
50778be6ae7c: Pull complete
de39015cb2a0: Pull complete
c5d1f12c356a: Pull complete
e9b75b04736a: Pull complete
74aacb7acb4e: Pull complete
b343964c14ed: Pull complete
2da5d65999c3: Pull complete
Digest: sha256:1e3d8ad5ebf9fd2b323717b6b1213e233d033d7dec9eaac9d19bf72b6e5caaf7
Status: Downloaded newer image for yegor256/ruby:latest
docker.io/yegor256/ruby:latest
+ docker ps --filter=status=exited
+ grep --quiet '\syegor256_factbase_971\s*$'
+ ls -al .
total 48
drwx------  3 ubuntu ubuntu 4096 Sep 17 09:07 .
drwxrwxrwt 12 root   root   4096 Sep 17 09:07 ..
-rwxrwxr-x  1 ubuntu ubuntu  666 Sep 17 09:07 end.sh
-rwxrwxr-x  1 ubuntu ubuntu  498 Sep 17 09:07 entry.sh
-rw-rw-r--  1 ubuntu ubuntu    5 Sep 17 09:07 pid
drwxrwxr-x  9 ubuntu ubuntu 4096 Sep 17 09:07 repo
-rw-rw-r--  1 ubuntu ubuntu   81 Sep 17 09:07 rubygems.yml
-rwxrwxr-x  1 ubuntu ubuntu 6615 Sep 17 09:07 run.sh
-rw-rw-r--  1 ubuntu ubuntu  578 Sep 17 09:07 script.sh
-rw-rw-r--  1 ubuntu ubuntu 7968 Sep 17 09:08 stdout
++ pwd
++ pwd
+ docker run -t --rm -v /tmp/rultor-ww5o:/main --env=head=git@github.com:yegor256/factbase.git --env=pull_id=971 --env=fork=git@github.com:yegor256/factbase.git --env=fork_branch=renovate/reviewdog-action-actionlint-1.x --env=head_branch=master '--env=pull_title=Update reviewdog/action-actionlint action to v1.75.0' --env=author=yegor256 '--env=scripts=( '\''export '\''\'\'''\''head=git@github.com:yegor256/factbase.git'\''\'\'''\'''\'' '\'';'\'' '\''export '\''\'\'''\''pull_id=971'\''\'\'''\'''\'' '\'';'\'' '\''export '\''\'\'''\''fork=git@github.com:yegor256/factbase.git'\''\'\'''\'''\'' '\'';'\'' '\''export '\''\'\'''\''fork_branch=renovate/reviewdog-action-actionlint-1.x'\''\'\'''\'''\'' '\'';'\'' '\''export '\''\'\'''\''head_branch=master'\''\'\'''\'''\'' '\'';'\'' '\''export '\''\'\'''\''pull_title=Update reviewdog/action-actionlint action to v1.75.0'\''\'\'''\'''\'' '\'';'\'' '\''export '\''\'\'''\''author=yegor256'\''\'\'''\'''\'' '\'';'\'' '\''pdd -f /dev/null'\'' '\'';'\'' '\''bundle install --no-color'\'' '\'';'\'' '\''bundle exec rake'\'' '\'';'\'' )' --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-ww5o/cid -w=/main -v /var/run/docker.sock:/var/run/docker.sock --name=yegor256_factbase_971 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 ubuntu r
+ for g in $(cat /etc/group | awk -F ':' '$3 > 100 { print $1 }')
+ usermod -a -G systemd-journal r
+ for g in $(cat /etc/group | awk -F ':' '$3 > 100 { print $1 }')
+ usermod -a -G systemd-network r
+ for g in $(cat /etc/group | awk -F ':' '$3 > 100 { print $1 }')
+ usermod -a -G messagebus 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 polkitd 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 /root/.ssh /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/factbase.git' ; export 'pull_id=971' ; export 'fork=git@github.com:yegor256/factbase.git' ; export 'fork_branch=renovate/reviewdog-action-actionlint-1.x' ; export 'head_branch=master' ; export 'pull_title=Update reviewdog/action-actionlint action to v1.75.0' ; export 'author=yegor256' ; pdd -f /dev/null ; bundle install --no-color ; bundle exec rake ;
+ 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.9 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/renovate.json is a binary file (183 bytes)
Reading .0pdd.yml ...
Reading .gitattributes ...
Reading .github/publish-benchmark.sh ...
Reading .github/workflows/actionlint.yml ...
Reading .github/workflows/benchmark.yml ...
Reading .github/workflows/codecov.yml ...
Reading .github/workflows/copyrights.yml ...
Reading .github/workflows/flamegraph.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 benchmark/bench_empty.rb ...
Reading benchmark/bench_indexed_txn.rb ...
Reading benchmark/bench_indexes_terms.rb ...
Reading benchmark/bench_large_query.rb ...
Reading benchmark/bench_query.rb ...
Reading benchmark/bench_serialization.rb ...
Reading benchmark/bench_slow_query.rb ...
Reading benchmark/bench_taped.rb ...
Reading benchmark/bench_txns.rb ...
Reading factbase.gemspec ...
Reading fixtures/stories/agg.yml ...
Reading fixtures/stories/always.yml ...
Reading fixtures/stories/and.yml ...
Reading fixtures/stories/as.yml ...
Reading fixtures/stories/assert.yml ...
Reading fixtures/stories/count.yml ...
Reading fixtures/stories/empty.yml ...
Reading fixtures/stories/eq.yml ...
Reading fixtures/stories/exists.yml ...
Reading fixtures/stories/gt.yml ...
Reading fixtures/stories/gte.yml ...
Reading fixtures/stories/head.yml ...
Reading fixtures/stories/inverted.yml ...
Reading fixtures/stories/join.yml ...
Reading fixtures/stories/lte.yml ...
Reading fixtures/stories/max.yml ...
Reading fixtures/stories/min.yml ...
Reading fixtures/stories/nth.yml ...
Reading fixtures/stories/one.yml ...
Reading fixtures/stories/or.yml ...
Reading fixtures/stories/sorted.yml ...
Reading fixtures/stories/sprintf.yml ...
Reading fixtures/stories/sum.yml ...
Reading fixtures/stories/unique-many.yml ...
Reading fixtures/stories/unique.yml ...
Reading lib/factbase/accum.rb ...
Reading lib/factbase/cached/cached_fact.rb ...
Reading lib/factbase/cached/cached_factbase.rb ...
Reading lib/factbase/cached/cached_query.rb ...
Reading lib/factbase/cached/cached_term.rb ...
Reading lib/factbase/churn.rb ...
Reading lib/factbase/fact.rb ...
Reading lib/factbase/fact_as_yaml.rb ...
Reading lib/factbase/flatten.rb ...
Reading lib/factbase/impatient.rb ...
Reading lib/factbase/indexed/indexed_absent.rb ...
Reading lib/factbase/indexed/indexed_and.rb ...
Reading lib/factbase/indexed/indexed_eq.rb ...
Reading lib/factbase/indexed/indexed_exists.rb ...
Reading lib/factbase/indexed/indexed_fact.rb ...
Reading lib/factbase/indexed/indexed_factbase.rb ...
Reading lib/factbase/indexed/indexed_gt.rb ...
Reading lib/factbase/indexed/indexed_gte.rb ...
Reading lib/factbase/indexed/indexed_lt.rb ...
Reading lib/factbase/indexed/indexed_lte.rb ...
Reading lib/factbase/indexed/indexed_not.rb ...
Reading lib/factbase/indexed/indexed_one.rb ...
Reading lib/factbase/indexed/indexed_or.rb ...
Reading lib/factbase/indexed/indexed_query.rb ...
Reading lib/factbase/indexed/indexed_term.rb ...
Reading lib/factbase/indexed/indexed_unique.rb ...
Reading lib/factbase/inv.rb ...
Reading lib/factbase/lazy_taped.rb ...
Reading lib/factbase/lazy_taped_array.rb ...
Reading lib/factbase/lazy_taped_hash.rb ...
Reading lib/factbase/light.rb ...
Reading lib/factbase/logged.rb ...
Reading lib/factbase/pre.rb ...
Reading lib/factbase/query.rb ...
Reading lib/factbase/rules.rb ...
Reading lib/factbase/sync/sync_factbase.rb ...
Reading lib/factbase/sync/sync_query.rb ...
Reading lib/factbase/syntax.rb ...
Reading lib/factbase/tallied.rb ...
Reading lib/factbase/taped.rb ...
Reading lib/factbase/tee.rb ...
Reading lib/factbase/term.rb ...
Reading lib/factbase/terms/absent.rb ...
Reading lib/factbase/terms/agg.rb ...
Reading lib/factbase/terms/always.rb ...
Reading lib/factbase/terms/and.rb ...
Reading lib/factbase/terms/arithmetic.rb ...
Reading lib/factbase/terms/as.rb ...
Reading lib/factbase/terms/assert.rb ...
Reading lib/factbase/terms/base.rb ...
Reading lib/factbase/terms/best.rb ...
Reading lib/factbase/terms/boolean.rb ...
Reading lib/factbase/terms/compare.rb ...
Reading lib/factbase/terms/concat.rb ...
Reading lib/factbase/terms/contains.rb ...
Reading lib/factbase/terms/count.rb ...
Reading lib/factbase/terms/defn.rb ...
Reading lib/factbase/terms/div.rb ...
Reading lib/factbase/terms/either.rb ...
Reading lib/factbase/terms/empty.rb ...
Reading lib/factbase/terms/ends_with.rb ...
Reading lib/factbase/terms/env.rb ...
Reading lib/factbase/terms/eq.rb ...
Reading lib/factbase/terms/exists.rb ...
Reading lib/factbase/terms/first.rb ...
Reading lib/factbase/terms/gt.rb ...
Reading lib/factbase/terms/gte.rb ...
Reading lib/factbase/terms/head.rb ...
Reading lib/factbase/terms/inverted.rb ...
Reading lib/factbase/terms/join.rb ...
Reading lib/factbase/terms/lt.rb ...
Reading lib/factbase/terms/lte.rb ...
Reading lib/factbase/terms/many.rb ...
Reading lib/factbase/terms/matches.rb ...
Reading lib/factbase/terms/max.rb ...
Reading lib/factbase/terms/min.rb ...
Reading lib/factbase/terms/minus.rb ...
Reading lib/factbase/terms/never.rb ...
Reading lib/factbase/terms/nil.rb ...
Reading lib/factbase/terms/not.rb ...
Reading lib/factbase/terms/nth.rb ...
Reading lib/factbase/terms/one.rb ...
Reading lib/factbase/terms/or.rb ...
Reading lib/factbase/terms/plus.rb ...
Reading lib/factbase/terms/prev.rb ...
Reading lib/factbase/terms/simplified.rb ...
Reading lib/factbase/terms/size.rb ...
Reading lib/factbase/terms/sorted.rb ...
Reading lib/factbase/terms/sprintf.rb ...
Reading lib/factbase/terms/starts_with.rb ...
Reading lib/factbase/terms/sum.rb ...
Reading lib/factbase/terms/times.rb ...
Reading lib/factbase/terms/to_float.rb ...
Reading lib/factbase/terms/to_integer.rb ...
Reading lib/factbase/terms/to_string.rb ...
Reading lib/factbase/terms/to_time.rb ...
Reading lib/factbase/terms/traced.rb ...
Reading lib/factbase/terms/type.rb ...
Reading lib/factbase/terms/undef.rb ...
Reading lib/factbase/terms/unique.rb ...
Reading lib/factbase/terms/when.rb ...
Reading lib/factbase/terms/zero.rb ...
Reading lib/factbase/to_json.rb ...
Reading lib/factbase/to_xml.rb ...
Reading lib/factbase/to_yaml.rb ...
Reading lib/factbase/version.rb ...
Reading lib/factbase.rb ...
Reading lib/fuzz.rb ...
Reading test/factbase/cached/test_cached_factbase.rb ...
Reading test/factbase/cached/test_cached_import.rb ...
Reading test/factbase/cached/test_cached_query.rb ...
Reading test/factbase/cached/test_cached_term.rb ...
Reading test/factbase/indexed/test_incremental_indexing.rb ...
Reading test/factbase/indexed/test_indexed_absent.rb ...
Reading test/factbase/indexed/test_indexed_and.rb ...
Reading test/factbase/indexed/test_indexed_eq.rb ...
Reading test/factbase/indexed/test_indexed_exists.rb ...
Reading test/factbase/indexed/test_indexed_fact.rb ...
Reading test/factbase/indexed/test_indexed_factbase.rb ...
Reading test/factbase/indexed/test_indexed_gt.rb ...
Reading test/factbase/indexed/test_indexed_gte.rb ...
Reading test/factbase/indexed/test_indexed_lt.rb ...
Reading test/factbase/indexed/test_indexed_lte.rb ...
Reading test/factbase/indexed/test_indexed_not.rb ...
Reading test/factbase/indexed/test_indexed_one.rb ...
Reading test/factbase/indexed/test_indexed_or.rb ...
Reading test/factbase/indexed/test_indexed_query.rb ...
Reading test/factbase/indexed/test_indexed_term.rb ...
Reading test/factbase/indexed/test_indexed_unique.rb ...
Reading test/factbase/sync/test_sync_factbase.rb ...
Reading test/factbase/sync/test_sync_query.rb ...
Reading test/factbase/terms/test_absent.rb ...
Reading test/factbase/terms/test_agg.rb ...
Reading test/factbase/terms/test_always.rb ...
Reading test/factbase/terms/test_and.rb ...
Reading test/factbase/terms/test_as.rb ...
Reading test/factbase/terms/test_assert.rb ...
Reading test/factbase/terms/test_at_absent.rb ...
Reading test/factbase/terms/test_best.rb ...
Reading test/factbase/terms/test_boolean.rb ...
Reading test/factbase/terms/test_compare.rb ...
Reading test/factbase/terms/test_compare_operand.rb ...
Reading test/factbase/terms/test_concat.rb ...
Reading test/factbase/terms/test_contains.rb ...
Reading test/factbase/terms/test_count.rb ...
Reading test/factbase/terms/test_defn.rb ...
Reading test/factbase/terms/test_defn_syntax.rb ...
Reading test/factbase/terms/test_div.rb ...
Reading test/factbase/terms/test_either.rb ...
Reading test/factbase/terms/test_empty.rb ...
Reading test/factbase/terms/test_ends_with.rb ...
Reading test/factbase/terms/test_env.rb ...
Reading test/factbase/terms/test_env_name.rb ...
Reading test/factbase/terms/test_eq.rb ...
Reading test/factbase/terms/test_exists.rb ...
Reading test/factbase/terms/test_first.rb ...
Reading test/factbase/terms/test_gt.rb ...
Reading test/factbase/terms/test_gte.rb ...
Reading test/factbase/terms/test_head.rb ...
Reading test/factbase/terms/test_inverted.rb ...
Reading test/factbase/terms/test_join.rb ...
Reading test/factbase/terms/test_logical.rb ...
Reading test/factbase/terms/test_lt.rb ...
Reading test/factbase/terms/test_lte.rb ...
Reading test/factbase/terms/test_many.rb ...
Reading test/factbase/terms/test_matches.rb ...
Reading test/factbase/terms/test_math.rb ...
Reading test/factbase/terms/test_max.rb ...
Reading test/factbase/terms/test_min.rb ...
Reading test/factbase/terms/test_minus.rb ...
Reading test/factbase/terms/test_never.rb ...
Reading test/factbase/terms/test_nil.rb ...
Reading test/factbase/terms/test_not.rb ...
Reading test/factbase/terms/test_nth.rb ...
Reading test/factbase/terms/test_one.rb ...
Reading test/factbase/terms/test_or.rb ...
Reading test/factbase/terms/test_plus.rb ...
Reading test/factbase/terms/test_prev.rb ...
Reading test/factbase/terms/test_simplified.rb ...
Reading test/factbase/terms/test_size.rb ...
Reading test/factbase/terms/test_sorted.rb ...
Reading test/factbase/terms/test_sprintf.rb ...
Reading test/factbase/terms/test_starts_with.rb ...
Reading test/factbase/terms/test_sum.rb ...
Reading test/factbase/terms/test_times.rb ...
Reading test/factbase/terms/test_to_float.rb ...
Reading test/factbase/terms/test_to_integer.rb ...
Reading test/factbase/terms/test_to_string.rb ...
Reading test/factbase/terms/test_to_time.rb ...
Reading test/factbase/terms/test_traced.rb ...
Reading test/factbase/terms/test_type.rb ...
Reading test/factbase/terms/test_undef.rb ...
Reading test/factbase/terms/test_unique.rb ...
Reading test/factbase/terms/test_when.rb ...
Reading test/factbase/terms/test_zero.rb ...
Reading test/factbase/test_accum.rb ...
Reading test/factbase/test_churn.rb ...
Reading test/factbase/test_fact.rb ...
Reading test/factbase/test_fact_as_yaml.rb ...
Reading test/factbase/test_flatten.rb ...
Reading test/factbase/test_impatient.rb ...
Reading test/factbase/test_inv.rb ...
Reading test/factbase/test_lazy_taped.rb ...
Reading test/factbase/test_lazy_taped_array.rb ...
Reading test/factbase/test_lazy_taped_hash.rb ...
Reading test/factbase/test_logged.rb ...
Reading test/factbase/test_logged_length.rb ...
Reading test/factbase/test_pre.rb ...
Reading test/factbase/test_query.rb ...
Reading test/factbase/test_rules.rb ...
Reading test/factbase/test_syntax.rb ...
Reading test/factbase/test_syntax_quotes.rb ...
Reading test/factbase/test_tallied.rb ...
Reading test/factbase/test_taped.rb ...
Reading test/factbase/test_tee.rb ...
Reading test/factbase/test_term.rb ...
Reading test/factbase/test_term_at.rb ...
Reading test/factbase/test_to_json.rb ...
Reading test/factbase/test_to_xml.rb ...
Reading test/factbase/test_to_yaml.rb ...
Reading test/test__helper.rb ...
Reading test/test_factbase.rb ...
Reading test/test_fuzz.rb ...
Reading test/test_no_useless_conditional_assignment.rb ...
Reading test/test_rakefile.rb ...
Reading test/test_readme.rb ...
Reading test/test_yard.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.4.2
Installing rake 13.4.2
Fetching ansi 1.6.0
Installing ansi 1.6.0
Fetching ast 2.4.3
Installing ast 2.4.3
Fetching backtrace 0.4.1
Installing backtrace 0.4.1
Fetching benchmark 0.5.0
Installing benchmark 0.5.0
Fetching builder 3.3.0
Installing builder 3.3.0
Fetching concurrent-ruby 1.3.7
Installing concurrent-ruby 1.3.7
Fetching date 3.5.1
Installing date 3.5.1 with native extensions
Fetching decoor 0.1.0
Installing decoor 0.1.0
Fetching docile 1.4.1
Installing docile 1.4.1
Fetching drb 2.2.3
Installing drb 2.2.3
Fetching ellipsized 0.3.0
Installing ellipsized 0.3.0
Fetching logger 1.7.0
Installing logger 1.7.0
Fetching loog 0.8.0
Installing loog 0.8.0
Fetching tago 0.7.0
Installing tago 0.7.0
Fetching elapsed 0.3.1
Installing elapsed 0.3.1
Fetching erb 6.0.4
Installing erb 6.0.4 with native extensions
Fetching json 2.21.2
Installing json 2.21.2 with native extensions
Fetching others 0.1.1
Installing others 0.1.1
Fetching yaml 0.4.0
Installing yaml 0.4.0
Fetching language_server-protocol 3.17.0.6
Installing language_server-protocol 3.17.0.6
Fetching lint_roller 1.1.0
Installing lint_roller 1.1.0
Fetching prism 1.9.0
Installing prism 1.9.0 with native extensions
Fetching minitest 6.0.6
Installing minitest 6.0.6
Fetching ruby-progressbar 1.13.0
Installing ruby-progressbar 1.13.0
Fetching minitest-reporters 1.8.0
Installing minitest-reporters 1.8.0
Fetching os 1.1.4
Installing os 1.1.4
Fetching parallel 2.1.0
Installing parallel 2.1.0
Fetching parser 3.3.12.0
Installing parser 3.3.12.0
Fetching stringio 3.2.0
Installing stringio 3.2.0 with native extensions
Fetching psych 5.3.1
Installing psych 5.3.1 with native extensions
Fetching qbash 0.8.4
Installing qbash 0.8.4
Fetching tsort 0.2.0
Installing tsort 0.2.0
Fetching rdoc 7.1.0
Installing rdoc 7.1.0
Fetching regexp_parser 2.12.0
Installing regexp_parser 2.12.0
Fetching rubocop-ast 1.50.0
Installing rubocop-ast 1.50.0
Fetching unicode-emoji 4.2.0
Installing unicode-emoji 4.2.0
Fetching unicode-display_width 3.2.0
Installing unicode-display_width 3.2.0
Fetching rubocop 1.89.0
Installing rubocop 1.89.0
Fetching rubocop-elegant 0.7.1
Installing rubocop-elegant 0.7.1
Fetching rubocop-minitest 0.40.0
Installing rubocop-minitest 0.40.0
Fetching rubocop-performance 1.26.1
Installing rubocop-performance 1.26.1
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.2.0
Installing simplecov-cobertura 3.2.0
Fetching stackprof 0.2.27
Installing stackprof 0.2.27 with native extensions
Fetching threads 0.5.0
Installing threads 0.5.0
Fetching yard 0.9.38
Installing yard 0.9.38
Bundle complete! 19 Gemfile dependencies, 56 gems now installed.
Use `bundle info [gemname]` to see where a bundled gem is installed.
warning: parser/current is loading parser/ruby34, which recognizes 3.4.0-dev-compliant syntax, but you are running 3.4.9.
Please see https://github.com/whitequark/parser#compatibility-with-ruby-mri.
Started with run options --seed 12814

TestIndexedOr
  test_predicts_on_or_with_nil                                   32m PASS0m (0.00s)
  test_predicts_on_or                                            32m PASS0m (0.00s)
  test_predicts_on_nested_or                                     32m PASS0m (0.00s)

TestFact
  test_set_by_name                                               32m PASS0m (0.00s)
  test_fails_when_setting_nil                                    32m PASS0m (0.00s)
  test_simple_resetting                                          32m PASS0m (0.00s)
  test_time_in_utc                                               32m PASS0m (0.00s)
  test_keeps_values_unique                                       32m PASS0m (0.00s)
  test_injects_data_correctly                                    32m PASS0m (0.00s)
  test_some_names_are_prohibited                                 32m PASS0m (0.00s)
  test_refuses_a_float_that_is_not_a_number                      32m PASS0m (0.00s)
  test_set_twice_same_value                                      32m PASS0m (0.00s)
  test_fails_when_setting_empty                                  32m PASS0m (0.00s)
  test_stores_booleans                                           32m PASS0m (0.00s)
  test_get_all_properties                                        32m PASS0m (0.00s)
  test_fails_when_not_found                                      32m PASS0m (0.00s)
  test_fails_when_empty                                          32m PASS0m (0.00s)

TestSyntaxQuotes
  test_keeps_a_quote_of_the_other_kind_inside_a_literal          32m PASS0m (0.00s)
  test_does_not_split_a_literal_with_two_intruding_quotes        32m PASS0m (0.00s)

TestEnvName
  test_refuses_a_name_that_is_not_a_string                       32m PASS0m (0.00s)

TestToInteger
  test_truncates_float                                           32m PASS0m (0.00s)
  test_to_integer                                                32m PASS0m (0.00s)
  test_rejects_invalid_value                                     32m PASS0m (0.00s)

TestTimes
  test_times                                                     32m PASS0m (0.00s)

TestEq
  test_compares_not_equal                                        32m PASS0m (0.00s)
  test_compares_equal                                            32m PASS0m (0.00s)

TestPlus
  test_plus_time_minutesseconds                                  32m PASS0m (0.00s)
  test_plus_time_hoursminutes                                    32m PASS0m (0.00s)
  test_plus_time_seconds                                         32m PASS0m (0.00s)
  test_plus_time_weeks                                           32m PASS0m (0.00s)
  test_plus_time                                                 32m PASS0m (0.00s)
  test_plus                                                      32m PASS0m (0.00s)

TestCompareOperand
  test_names_the_operands_of_a_wrong_right_side                  32m PASS0m (0.00s)

TestIndexedFact
  test_updates_origin                                            32m PASS0m (0.00s)
  test_invalidates_index_of_existing_fact                        32m PASS0m (0.00s)

TestTallied
  test_counts_in_txn_after_rollback_throw                        32m PASS0m (0.00s)
  test_counts_simple_changes                                     32m PASS0m (0.00s)
  test_returns_all_props                                         32m PASS0m (0.00s)
  test_counts_size                                               32m PASS0m (0.00s)
  test_counts_in_txn_after_rollback                              32m PASS0m (0.00s)
  test_queries_empty_factbase                                    32m PASS0m (0.00s)
  test_counts_in_txn_in_threads                                  32m PASS0m (0.00s)
  test_counts_in_txn                                             32m PASS0m (0.00s)
  test_counts_in_one                                             32m PASS0m (0.00s)

TestEmpty
  test_empty_query_with_params                                   32m PASS0m (0.00s)
  test_empty_wrong_arguments                                     32m PASS0m (0.00s)
  test_not_empty_directly_with_terms                             32m PASS0m (0.00s)
  test_empty_query                                               32m PASS0m (0.00s)
  test_empty_directly_with_terms                                 32m PASS0m (0.00s)

TestUnique
  test_unique_when_one_value_is_new                              32m PASS0m (0.00s)
  test_unique_with_multiple_arguments                            32m PASS0m (0.00s)
  test_unique_stops_when_all_arguments_are_duplicates            32m PASS0m (0.00s)
  test_unique                                                    32m PASS0m (0.00s)

TestFirst
  test_first_several                                             32m PASS0m (0.00s)
  test_first_absent                                              32m PASS0m (0.00s)

TestHead
  test_takes_the_first_ones                                      32m PASS0m (0.00s)
  test_refuses_a_negative_count                                  32m PASS0m (0.00s)
  test_does_not_turn_a_param_into_a_property                     32m PASS0m (0.00s)

TestAnd
  test_parses_a_non_term_operand                                 32m PASS0m (0.00s)
  test_reports_a_single_non_term_operand                         32m PASS0m (0.00s)
  test_and_true                                                  32m PASS0m (0.00s)
  test_and_false                                                 32m PASS0m (0.00s)

TestFactbase
  test_export_import_concurrent                                  32m PASS0m (0.61s)
  test_query_many_times                                          32m PASS0m (0.00s)
  test_get_raise_for_empty_fact                                  32m PASS0m (0.00s)
  test_txn_inside_query                                          32m PASS0m (0.00s)
  test_converts_query_to_term                                    32m PASS0m (0.00s)
  test_concurrent_inserts                                        32m PASS0m (0.00s)
  test_simple_setting                                            32m PASS0m (0.00s)
  test_different_values_when_concurrent_inserts                  32m PASS0m (0.00s)
  test_run_txn_with_inv                                          32m PASS0m (0.00s)
  test_reads_from_empty_file                                     32m PASS0m (0.00s)
  test_different_properties_when_concurrent_inserts              32m PASS0m (0.00s)
  test_concurrent_transactions_successful                        32m PASS0m (0.00s)
  test_simple_concurrent_inserts_in_txns                         32m PASS0m (0.03s)
  test_txn_returns_boolean                                       32m PASS0m (0.00s)
  test_deals_with_arrays_in_txn                                  32m PASS0m (0.00s)
  test_run_txn                                                   32m PASS0m (0.00s)
  test_all_decorators                                            32m PASS0m (0.01s)
  test_run_txn_via_query                                         32m PASS0m (0.00s)
  test_modify_via_query                                          32m PASS0m (0.00s)
  test_import_of_corrupt_data                                    32m PASS0m (0.00s)
  test_modifies_existing_fact_in_txn                             32m PASS0m (0.00s)
  test_evals_complex_txn                                         32m PASS0m (0.00s)
  test_txn_with_rollback                                         32m PASS0m (0.00s)
  test_injects_data_correctly                                    32m PASS0m (0.00s)
  test_rolls_back                                                32m PASS0m (0.00s)
  test_concurrent_queries                                        32m PASS0m (0.00s)
  test_concurrent_transactions_inserts                           32m PASS0m (0.00s)
  test_dup_concurrent                                            32m PASS0m (0.18s)
  test_concurrent_transactions_with_rollbacks                    32m PASS0m (0.00s)
  test_simple_concurrent_inserts                                 32m PASS0m (0.00s)
  test_commits_on_exit_by_throw                                  32m PASS0m (0.00s)
  test_serialize_and_deserialize                                 32m PASS0m (0.00s)
  test_empty_or_not                                              32m PASS0m (0.00s)
  test_import_from_indexed_factbase                              32m PASS0m (0.00s)
  test_keeps_order_when_modifying_a_fact_in_txn                  32m PASS0m (0.00s)
  test_appends_in_txn                                            32m PASS0m (0.00s)
  test_simple_concurrent_inserts_in_txns_with_sleep              32m PASS0m (0.16s)

TestIndexedOne
  test_predicts_on_one_with_lazy_taped                           32m PASS0m (0.00s)
  test_predicts_on_one_with_taped                                32m PASS0m (0.00s)
  test_skips_a_subterm_operand                                   32m PASS0m (0.00s)
  test_predicts_on_one_with_array                                32m PASS0m (0.00s)
  test_predict_decorator_persistence                             32m PASS0m (0.00s)

TestMinus
  test_minus_time_singular                                       32m PASS0m (0.00s)
  test_rejects_a_fractional_duration                             32m PASS0m (0.00s)
  test_minus_time                                                32m PASS0m (0.00s)
  test_minus                                                     32m PASS0m (0.00s)

TestNoUselessConditionalAssignment
  test_lib_is_free_of_useless_conditional_assignments            32m PASS0m (0.89s)

TestToJSON
  test_names_the_property_that_is_not_valid_utf8                 32m PASS0m (0.00s)
  test_time_value_in_iso8601                                     32m PASS0m (0.00s)
  test_simple_rendering                                          32m PASS0m (0.00s)
  test_string_value                                              32m PASS0m (0.00s)
  test_time_value                                                32m PASS0m (0.00s)
  test_sort_keys                                                 32m PASS0m (0.00s)
  test_empty_factbase                                            32m PASS0m (0.00s)
  test_custom_sort_key                                           32m PASS0m (0.00s)

TestBest
  test_best_max                                                  32m PASS0m (0.00s)
  test_best_min                                                  32m PASS0m (0.00s)
  test_best_always_right                                         32m PASS0m (0.00s)
  test_best_always_left                                          32m PASS0m (0.00s)

TestCachedFactbase
  test_insert_after_query_returns_new_facts                      32m PASS0m (0.00s)
  test_queries_after_update_in_txn                               32m PASS0m (0.00s)
  test_query_after_txn_sees_new_facts                            32m PASS0m (0.00s)
  test_queries_after_update_through_a_parameterized_query        32m PASS0m (0.00s)
  test_insert_after_one_returns_new_value                        32m PASS0m (0.00s)
  test_prints_fact_correctly                                     32m PASS0m (0.00s)
  test_query_after_rollback_forgets_the_facts                    32m PASS0m (0.00s)
  test_inserts_and_queries                                       32m PASS0m (0.00s)
  test_fresh_fact_modification_invalidates_index                 32m PASS0m (0.00s)
  test_fresh_fact_modification_invalidates_cache_for_one_queries 32m PASS0m (0.00s)

TestType
  test_type                                                      32m PASS0m (0.00s)

TestIndexedExists
  test_predicts_on_exists_with_lazy_taped                        32m PASS0m (0.00s)
  test_predicts_on_exists_with_taped                             32m PASS0m (0.00s)
  test_predicts_on_exists_with_array                             32m PASS0m (0.00s)
  test_predict_decorator_persistence                             32m PASS0m (0.00s)

TestWhen
  test_rejects_a_non_term_operand                                32m PASS0m (0.00s)
  test_positive                                                  32m PASS0m (0.00s)
  test_negative                                                  32m PASS0m (0.00s)

TestLoggedLength
  test_cuts_a_long_value_down_to_the_limit                       32m PASS0m (0.00s)

TestAgg
  test_aggregation                                               32m PASS0m (0.01s)
  test_passes_outer_query_params_to_selector                     32m PASS0m (0.00s)
  test_agg_with_invalid_arguments                                32m PASS0m (0.00s)
  test_agg_with_correct_arguments                                32m PASS0m (0.00s)

TestTee
  test_fetches_simply                                            32m PASS0m (0.00s)
  test_two_facts                                                 32m PASS0m (0.00s)
  test_fetches_without_conflict_with_global_name                 32m PASS0m (0.00s)
  test_prints_to_string                                          32m PASS0m (0.00s)
  test_recursively                                               32m PASS0m (0.00s)
  test_no_trip_to_prim_if_not_found                              32m PASS0m (0.00s)
  test_all_properties_lists_a_shared_name_once                   32m PASS0m (0.00s)
  test_all_properties                                            32m PASS0m (0.00s)

TestNever
  test_never_with_arguments                                      32m PASS0m (0.00s)
  test_never                                                     32m PASS0m (0.00s)

TestPrev
  test_prev                                                      32m PASS0m (0.00s)

TestContains
  test_via_query_dispatch                                        32m PASS0m (0.00s)
  test_string_substring                                          32m PASS0m (0.00s)
  test_multi_value_property                                      32m PASS0m (0.00s)

TestIndexedLt
  test_predicts_on_lt_above_threshold                            32m PASS0m (0.00s)
  test_predicts_on_lt                                            32m PASS0m (0.00s)
  test_predicts_on_lt_with_floats                                32m PASS0m (0.00s)
  test_predicts_on_lt_with_missing_parameter                     32m PASS0m (0.00s)
  test_predict_decorator_persistence                             32m PASS0m (0.00s)
  test_keeps_the_order_the_facts_were_inserted_in                32m PASS0m (0.00s)

TestIndexedAbsent
  test_predicts_on_absent_with_lazy_taped                        32m PASS0m (0.00s)
  test_predicts_on_absent_with_taped                             32m PASS0m (0.00s)
  test_predicts_on_absent_with_array                             32m PASS0m (0.00s)
  test_predict_decorator_persistence                             32m PASS0m (0.00s)

TestDiv
  test_div_numbers                                               32m PASS0m (0.00s)
  test_div_times_not_supported                                   32m PASS0m (0.00s)
  test_div_by_integer_zero                                       32m PASS0m (0.00s)
  test_div_by_float_zero                                         32m PASS0m (0.00s)

TestIndexedUnique
  test_predicts_on_unique_with_combinations                      33m SKIP0m (0.00s)
  test_predicts_on_unique                                        33m SKIP0m (0.00s)

TestDefnSyntax
  test_explains_a_body_that_is_not_ruby                          32m PASS0m (0.00s)

TestFactAsYaml
  test_simple_rendering                                          32m PASS0m (0.00s)
  test_sorted_keys                                               32m PASS0m (0.00s)
  test_usage_example_from_issue                                  32m PASS0m (0.00s)
  test_prints_exactly                                            32m PASS0m (0.00s)
  test_multiple_values                                           32m PASS0m (0.00s)

TestToFloat
  test_to_float                                                  32m PASS0m (0.00s)
  test_rejects_invalid_value                                     32m PASS0m (0.00s)

TestIndexedNot
  test_predicts_on_not_with_array                                32m PASS0m (0.00s)
  test_predicts_on_not_returns_nil                               32m PASS0m (0.00s)
  test_predicts_on_not_with_lazy_taped                           32m PASS0m (0.00s)
  test_predicts_on_not_with_taped                                32m PASS0m (0.00s)
  test_predict_decorator_persistence                             32m PASS0m (0.00s)
  test_answers_each_set_of_params_on_its_own                     32m PASS0m (0.00s)

TestToYAML
  test_sorts_keys                                                32m PASS0m (0.00s)
  test_string_value                                              32m PASS0m (0.00s)
  test_time_value                                                32m PASS0m (0.00s)
  test_simple_rendering                                          32m PASS0m (0.00s)
  test_empty_factbase                                            32m PASS0m (0.00s)

TestSorted
  test_keeps_facts_without_the_property                          32m PASS0m (0.00s)
  test_sorting                                                   32m PASS0m (0.00s)
  test_join_and_sort                                             32m PASS0m (0.00s)
  test_does_not_turn_a_param_into_a_property                     32m PASS0m (0.00s)

TestInverted
  test_inverting                                                 32m PASS0m (0.00s)
  test_does_not_turn_a_param_into_a_property                     32m PASS0m (0.00s)

TestIndexedTerm
  test_predicts_on_others                                        32m PASS0m (0.00s)

TestIndexedGt
  test_predicts_on_gt_below_threshold                            32m PASS0m (0.00s)
  test_predicts_on_gt                                            32m PASS0m (0.00s)
  test_predicts_on_gt_with_floats                                32m PASS0m (0.00s)
  test_predicts_on_gt_with_missing_parameter                     32m PASS0m (0.00s)
  test_predict_decorator_persistence                             32m PASS0m (0.00s)
  test_keeps_the_order_the_facts_were_inserted_in                32m PASS0m (0.00s)

TestAtAbsent
  test_answers_nothing_for_an_absent_index                       32m PASS0m (0.00s)

TestDefn
  test_defn_bad_name_with_caps                                   32m PASS0m (0.00s)
  test_defn_non_symbol_argument                                  32m PASS0m (0.00s)
  test_refuses_to_redefine_a_class_based_term                    32m PASS0m (0.00s)
  test_defn_simple                                               32m PASS0m (0.00s)
  test_defn_bad_name_spelling_by_mistake                         32m PASS0m (0.00s)
  test_defn_eval_arbitrary_code                                  32m PASS0m (0.00s)
  test_defn_undef_then_use                                       32m PASS0m (0.00s)
  test_defn_bad_name_with_digits                                 32m PASS0m (0.00s)
  test_defn_bad_name_by_mistake                                  32m PASS0m (0.00s)
  test_defn_again_by_mistake                                     32m PASS0m (0.00s)

TestQuery
  test_stories                                                   32m PASS0m (4.40s)
  test_deletes_exactly_what_each_yields                          32m PASS0m (0.00s)
  test_error_names_the_term_not_the_object                       32m PASS0m (0.00s)
  test_with_a_digit_in_the_param_name                            32m PASS0m (0.00s)
  test_with_aliases                                              32m PASS0m (0.00s)
  test_deletes_without_touching_survivors                        32m PASS0m (0.00s)
  test_scans_and_inserts_in_queried_txn                          32m PASS0m (0.11s)
  test_simple_parsing                                            32m PASS0m (0.00s)
  test_with_params                                               32m PASS0m (0.00s)
  test_get_all_properties                                        32m PASS0m (0.00s)
  test_with_nil_alias                                            32m PASS0m (0.00s)
  test_reading_one                                               32m PASS0m (0.11s)
  test_to_array                                                  32m PASS0m (0.00s)
  test_finds_with_substitution                                   32m PASS0m (0.04s)
  test_scans_and_inserts                                         32m PASS0m (0.06s)
  test_scans_and_appends_in_queried_txn                          32m PASS0m (0.06s)
  test_txn_performance_degradation                               32m PASS0m (4.94s)
  test_simple_deleting                                           32m PASS0m (0.00s)
  test_deletes_facts_of_equal_content                            32m PASS0m (0.00s)
  test_deletes_only_the_head                                     32m PASS0m (0.00s)
  test_retrieves_all_facts                                       32m PASS0m (0.00s)
  test_deleting_nothing                                          32m PASS0m (0.00s)
  test_turns_query_to_string                                     32m PASS0m (0.00s)
  test_delete_by_id                                              32m PASS0m (0.00s)
  test_returns_int                                               32m PASS0m (0.00s)
  test_scans_and_inserts_in_txn                                  32m PASS0m (1.42s)
  test_simple_parsing_with_time                                  32m PASS0m (0.00s)
  test_complex_parsing                                           32m PASS0m (2.82s)
  test_compare_time_with_the_past                                32m PASS0m (0.00s)

TestIndexedGte
  test_orders_as_a_plain_factbase_does                           32m PASS0m (0.00s)
  test_keeps_the_order_the_facts_were_inserted_in                32m PASS0m (0.00s)

TestRules
  test_keeps_checking_after_a_failed_transaction                 32m PASS0m (0.00s)
  test_does_not_write_a_value_rejected_by_a_rule                 32m PASS0m (0.00s)
  test_query_one                                                 32m PASS0m (0.00s)
  test_to_string                                                 32m PASS0m (0.00s)
  test_fails_if_id_duplicates_are_there_already                  32m PASS0m (0.00s)
  test_error_message_truncates_long_expression                   32m PASS0m (0.00s)
  test_rollback_on_violation                                     32m PASS0m (0.00s)
  test_in_combination_with_pre                                   32m PASS0m (0.00s)
  test_keeps_checking_after_a_rollback                           32m PASS0m (0.00s)
  test_defends_against_id_duplicates                             32m PASS0m (0.00s)
  test_simple_checking                                           32m PASS0m (0.00s)
  test_error_message_includes_expression                         32m PASS0m (0.00s)
  test_check_with_id                                             32m PASS0m (0.00s)
  test_check_only_when_txn_is_closed                             32m PASS0m (0.00s)

TestAssert
  test_assert_raises_when_too_many_args                          32m PASS0m (0.00s)
  test_assert_with_false_condition                               32m PASS0m (0.00s)
  test_assert_with_zero_value                                    32m PASS0m (0.00s)
  test_assert_with_mixed_array                                   32m PASS0m (0.00s)
  test_assert_raises_when_too_few_args                           32m PASS0m (0.00s)
  test_assert_with_array_true_condition                          32m PASS0m (0.00s)
  test_assert_with_true_condition                                32m PASS0m (0.00s)
  test_assert_with_array_false_condition                         32m PASS0m (0.00s)
  test_assert_raises_when_second_arg_not_term                    32m PASS0m (0.00s)
  test_assert_raises_when_message_not_string                     32m PASS0m (0.00s)

TestAs
  test_aliases                                                   32m PASS0m (0.00s)

TestJoin
  test_join                                                      32m PASS0m (0.00s)

TestOne
  test_one                                                       32m PASS0m (0.00s)

TestReadme
  test_every_documented_term_exists                              32m PASS0m (0.00s)

TestUndef
  test_undef_non_symbol                                          32m PASS0m (0.00s)
  test_undef_nonexistent                                         32m PASS0m (0.00s)
  test_undef_simple                                              32m PASS0m (0.00s)
  test_undef_defined_then_removed                                32m PASS0m (0.00s)
  test_refuses_to_undefine_a_class_based_term                    32m PASS0m (0.00s)

TestGte
  test_compares_not_greater_than_or_equal                        32m PASS0m (0.00s)
  test_compares_greater_than_or_equal                            32m PASS0m (0.00s)

TestSyncFactbase
  test_nested_query_each_and_insert_threadsafe                   32m PASS0m (0.66s)
  test_queries_and_inserts                                       32m PASS0m (0.00s)
  test_insert_threadsafe                                         32m PASS0m (0.16s)
  test_change_property_value_in_txn_threadsafe                   32m PASS0m (0.80s)

TestEnv
  test_missing_attr_returns_nil                                  32m PASS0m (0.00s)
  test_env                                                       32m PASS0m (0.00s)
  test_missing_default_returns_nil                               32m PASS0m (0.00s)
  test_when_default_is_absent                                    32m PASS0m (0.00s)
  test_default_when_value_is_empty                               32m PASS0m (0.00s)
  test_default                                                   32m PASS0m (0.00s)

TestPre
  test_simple_setting                                            32m PASS0m (0.00s)
  test_in_transaction                                            32m PASS0m (0.00s)

TestCachedTerm
  test_does_not_cache_unique                                     32m PASS0m (0.00s)
  test_does_not_cache_head                                       32m PASS0m (0.00s)
  test_caches_static_terms                                       32m PASS0m (0.00s)

TestToXML
  test_empty_factbase                                            32m PASS0m (0.00s)
  test_simple_rendering                                          32m PASS0m (0.00s)
  test_to_xml_with_short_names                                   32m PASS0m (0.00s)
  test_size_counts_the_facts                                     32m PASS0m (0.00s)
  test_control_character_rendering                               32m PASS0m (0.00s)
  test_show_types_as_attributes                                  32m PASS0m (0.00s)
  test_sorts_keys                                                32m PASS0m (0.00s)
  test_meta_data_presence                                        32m PASS0m (0.00s)
  test_complex_rendering                                         32m PASS0m (0.00s)
  test_broken_utf8_rendering                                     32m PASS0m (0.00s)

TestLazyTapedHash
  test_method_missing_reader_does_not_copy                       32m PASS0m (0.00s)
  test_ensure_copied_after_get_copied_array                      32m PASS0m (0.00s)
  test_reed_scalar                                               32m PASS0m (0.00s)
  test_write_scalar                                              32m PASS0m (0.00s)
  test_method_missing_bang_triggers_copy                         32m PASS0m (0.00s)
  test_map                                                       32m PASS0m (0.00s)
  test_tracking_id                                               32m PASS0m (0.00s)
  test_reed_array                                                32m PASS0m (0.00s)
  test_ensure_copied_after_ensure_copied_map                     32m PASS0m (0.00s)
  test_write_array                                               32m PASS0m (0.00s)
  test_keys                                                      32m PASS0m (0.00s)
  test_delegates_size                                            32m PASS0m (0.00s)
  test_copying_state                                             32m PASS0m (0.00s)

TestNot
  test_not_with_arguments                                        32m PASS0m (0.00s)
  test_not_reverse                                               32m PASS0m (0.00s)
  test_not                                                       32m PASS0m (0.00s)

TestYard
  test_params_match_method_signatures                            32m PASS0m (0.85s)

TestIndexedAnd
  test_predicts_on_single_and                                    32m PASS0m (0.00s)
  test_make_generates_default_size                               32m PASS0m (0.20s)
  test_make_with_custom_size                                     32m PASS0m (0.03s)
  test_predicts_on_and_returns_nil                               32m PASS0m (0.00s)
  test_predicts_on_and                                           32m PASS0m (0.00s)
  test_feed_accumulates_facts                                    32m PASS0m (0.03s)
  test_contains_all_required_fields                              32m PASS0m (0.03s)

TestBoolean
  test_first_element_false                                       32m PASS0m (0.00s)
  test_first_element                                             32m PASS0m (0.00s)
  test_invalid_value                                             32m PASS0m (0.00s)
  test_nil_value                                                 32m PASS0m (0.00s)
  test_direct_true                                               32m PASS0m (0.00s)
  test_direct_false                                              32m PASS0m (0.00s)

TestSimplified
  test_unique_operands_simple                                    32m PASS0m (0.00s)
  test_unique_operands_complex                                   32m PASS0m (0.00s)

TestLte
  test_compares_not_greater_than                                 32m PASS0m (0.00s)
  test_compares_less_than_or_equal                               32m PASS0m (0.00s)

TestCachedQuery
  test_works_with_logging                                        32m PASS0m (0.01s)
  test_deletes_too                                               32m PASS0m (0.00s)
  test_joins_too                                                 32m PASS0m (0.01s)
  test_queries_many_times                                        32m PASS0m (0.00s)
  test_negates_correctly                                         32m PASS0m (0.00s)
  test_caches_while_being_decorated                              32m PASS0m (0.66s)
  test_aggregates_too                                            32m PASS0m (0.68s)

TestFlatten
  test_without_sorter                                            32m PASS0m (0.00s)
  test_sorts_strings_alphabetically                              32m PASS0m (0.00s)
  test_sorts_times_chronologically                               32m PASS0m (0.00s)
  test_sorts_with_incompatible_types                             32m PASS0m (0.00s)
  test_sorts_values_of_mixed_kinds                               32m PASS0m (0.00s)
  test_sorts_numbers_in_their_own_order                          32m PASS0m (0.00s)
  test_mapping                                                   32m PASS0m (0.00s)

TestAccum
  test_empties                                                   32m PASS0m (0.00s)
  test_prints_to_string                                          32m PASS0m (0.00s)
  test_fetches_without_conflict_with_global_name                 32m PASS0m (0.00s)
  test_keep_duplicates                                           32m PASS0m (0.00s)
  test_passes_props                                              32m PASS0m (0.00s)
  test_holds_props                                               32m PASS0m (0.00s)
  test_appends_props                                             32m PASS0m (0.00s)
  test_all_properties_includes_accumulated                       32m PASS0m (0.00s)

TestCompare
  test_wraps_a_missing_comparison_method                         32m PASS0m (0.00s)
  test_rounds_time_the_same_way_for_every_operator               32m PASS0m (0.00s)
  test_wraps_incompatible_time_comparison                        32m PASS0m (0.00s)
  test_wraps_incompatible_type_comparison                        32m PASS0m (0.00s)
  test_evaluates_comparison_less                                 32m PASS0m (0.00s)
  test_evaluates_comparison                                      32m PASS0m (0.00s)

TestTerm
  test_false_matching                                            32m PASS0m (0.00s)
  test_report_missing_term                                       32m PASS0m (0.00s)
  test_type_matching                                             32m PASS0m (0.00s)
  test_report_other_error                                        32m PASS0m (0.00s)
  test_exists_matching                                           32m PASS0m (0.00s)
  test_redresses_itself                                          32m PASS0m (0.00s)
  test_size_matching                                             32m PASS0m (0.00s)
  test_past                                                      32m PASS0m (0.00s)
  test_at                                                        32m PASS0m (0.00s)
  test_absent_matching                                           32m PASS0m (0.00s)

TestNth
  test_refuses_a_negative_position                               32m PASS0m (0.00s)
  test_nth_out_of_bounds                                         32m PASS0m (0.00s)
  test_nth                                                       32m PASS0m (0.00s)

TestSyncQuery
  test_queries_many_times                                        32m PASS0m (0.00s)
  test_deletes_too                                               32m PASS0m (0.00s)

TestMany
  test_many                                                      32m PASS0m (0.00s)

TestLogical
  test_not_matching                                              32m PASS0m (0.00s)
  test_or_matching                                               32m PASS0m (0.00s)
  test_when_matching                                             32m PASS0m (0.00s)
  test_not_eq_matching                                           32m PASS0m (0.00s)
  test_either                                                    32m PASS0m (0.00s)

TestEither
  test_either_first_not_nil                                      32m PASS0m (0.00s)
  test_either_first_nil                                          32m PASS0m (0.00s)

TestTermAt
  test_refuses_a_negative_position                               32m PASS0m (0.00s)

TestGt
  test_compares_not_greater_than                                 32m PASS0m (0.00s)
  test_compares_greater_than                                     32m PASS0m (0.00s)

TestAbsent
  test_absent                                                    32m PASS0m (0.00s)

TestMax
  test_reports_incomparable_values                               32m PASS0m (0.00s)
  test_too_many_args                                             32m PASS0m (0.00s)
  test_not_enough_args                                           32m PASS0m (0.00s)
  test_max                                                       32m PASS0m (0.00s)

TestCount
  test_refuses_operands                                          32m PASS0m (0.00s)
  test_count_several                                             32m PASS0m (0.00s)
  test_count_emptyseveral                                        32m PASS0m (0.00s)

TestSize
  test_size                                                      32m PASS0m (0.00s)

TestRakefile
  test_tail_without_arguments                                    32m PASS0m (0.00s)
  test_tail_with_arguments                                       32m PASS0m (0.00s)

TestIndexedEq
  test_predicts_on_eq_with_lazy_taped                            32m PASS0m (0.00s)
  test_predicts_on_eq_with_taped                                 32m PASS0m (0.00s)
  test_yields_a_fact_with_repeated_values_once                   32m PASS0m (0.00s)
  test_predicts_on_eq_with_array                                 32m PASS0m (0.00s)
  test_predict_decorator_persistence                             32m PASS0m (0.00s)

TestMatches
  test_rejects_invalid_regexp                                    32m PASS0m (0.00s)
  test_reuses_compiled_regexp                                    32m PASS0m (0.00s)
  test_regexp_matching                                           32m PASS0m (0.00s)
  test_regexp_from_property                                      32m PASS0m (0.00s)

TestAlways
  test_always_with_arguments                                     32m PASS0m (0.00s)
  test_always                                                    32m PASS0m (0.00s)

TestOr
  test_or_true                                                   32m PASS0m (0.00s)
  test_parses_a_non_term_operand                                 32m PASS0m (0.00s)
  test_or_false                                                  32m PASS0m (0.00s)
  test_names_the_bad_operand_when_evaluating                     32m PASS0m (0.00s)

TestZero
  test_zero                                                      32m PASS0m (0.00s)

TestIndexedQuery
  test_range_queries_with_mixed_types_match_plain_factbase_errors32m PASS0m (0.00s)
  test_finds_by_eq_with_formula                                  32m PASS0m (0.00s)
  test_finds_with_inversion                                      32m PASS0m (0.00s)
  test_finds_by_eq_with_agg                                      32m PASS0m (0.00s)
  test_queries_many_times                                        32m PASS0m (0.00s)
  test_finds_max_value                                           32m PASS0m (0.00s)
  test_finds_by_eq_with_symbol                                   32m PASS0m (0.00s)
  test_queries_and_updates_origin                                32m PASS0m (0.00s)
  test_joins_simple_one                                          32m PASS0m (0.00s)
  test_fills_up_the_index                                        32m PASS0m (0.00s)
  test_finds_with_conjunction                                    32m PASS0m (0.00s)
  test_finds_by_eq                                               32m PASS0m (0.00s)
  test_finds_by_eq_in_txn                                        32m PASS0m (0.00s)
  test_finds_with_disjunction                                    32m PASS0m (0.00s)
  test_finds_by_eq_with_array                                    32m PASS0m (0.00s)
  test_joins_too                                                 32m PASS0m (2.89s)
  test_deletes_too                                               32m PASS0m (0.00s)
  test_finds_with_disjunction_in_txn                             32m PASS0m (0.00s)
  test_materializes_before_iterating                             32m PASS0m (0.00s)
  test_converts_to_string                                        32m PASS0m (0.00s)
  test_attaches_alias                                            32m PASS0m (0.00s)

TestLazyTaped
  test_copies_on_array_append                                    32m PASS0m (0.00s)
  test_array_to_a                                                32m PASS0m (0.00s)
  test_copies_on_property_set                                    32m PASS0m (0.00s)
  test_enumerable_without_block                                  32m PASS0m (0.00s)
  test_tracks_addition_uniquely                                  32m PASS0m (0.00s)
  test_find_by_object_id                                         32m PASS0m (0.00s)
  test_read_only_txn_does_not_copy                               32m PASS0m (0.00s)
  test_deletes_two_equal_facts_in_txn                            32m PASS0m (0.00s)
  test_modifies_two_equal_facts_in_txn                           32m PASS0m (0.00s)
  test_unsafe_each_in_txn                                        32m PASS0m (0.00s)
  test_modifying_txn_copies_lazily                               32m PASS0m (0.00s)
  test_tracks_insertion                                          32m PASS0m (0.00s)
  test_disjoins_with_empty                                       32m PASS0m (0.00s)
  test_hash_map                                                  32m PASS0m (0.00s)
  test_rollback_does_not_modify                                  32m PASS0m (0.00s)
  test_delete_in_txn                                             32m PASS0m (0.00s)
  test_to_a_without_copy                                         32m PASS0m (0.00s)
  test_does_not_copy_on_read                                     32m PASS0m (0.00s)
  test_to_a_after_modification                                   32m PASS0m (0.00s)
  test_insert_in_txn                                             32m PASS0m (0.00s)
  test_joins_with_non_empty                                      32m PASS0m (0.00s)
  test_array_uniq_triggers_copy                                  32m PASS0m (0.00s)
  test_copied_state                                              32m PASS0m (0.00s)
  test_disjoins_with_non_empty                                   32m PASS0m (0.00s)
  test_copies_on_delete                                          32m PASS0m (0.00s)
  test_safe_each_in_txn                                          32m PASS0m (0.01s)
  test_array_index_access                                        32m PASS0m (0.00s)
  test_does_not_copy_on_insert                                   32m PASS0m (0.00s)
  test_hash_keys                                                 32m PASS0m (0.00s)
  test_joins_with_empty                                          32m PASS0m (0.00s)
  test_array_each_enumerable                                     32m PASS0m (0.00s)
  test_array_any                                                 32m PASS0m (0.00s)

TestMath
  test_zero                                                      32m PASS0m (0.00s)
  test_lt_time                                                   32m PASS0m (0.00s)
  test_gte                                                       32m PASS0m (0.00s)
  test_minus                                                     32m PASS0m (0.00s)
  test_minus_time_singular                                       32m PASS0m (0.00s)
  test_gt                                                        32m PASS0m (0.00s)
  test_lte                                                       32m PASS0m (0.00s)
  test_minus_unknown_time_unit                                   32m PASS0m (0.00s)
  test_gt_time_string                                            32m PASS0m (0.00s)
  test_lt                                                        32m PASS0m (0.00s)
  test_minus_time                                                32m PASS0m (0.00s)
  test_eq_time                                                   32m PASS0m (0.00s)
  test_simple                                                    32m PASS0m (0.00s)
  test_gt_time                                                   32m PASS0m (0.00s)
  test_eq                                                        32m PASS0m (0.00s)
  test_div_times_not_supported                                   32m PASS0m (0.00s)

TestImpatient
  test_query_one_timeout                                         32m PASS0m (0.16s)
  test_enumerator_support                                        32m PASS0m (0.00s)
  test_returns_int_when_empty                                    32m PASS0m (0.00s)
  test_with_txn                                                  32m PASS0m (0.00s)
  test_query_one                                                 32m PASS0m (0.00s)
  test_query_completes_before_timeout                            32m PASS0m (0.00s)
  test_returns_to_s_correctly                                    32m PASS0m (0.00s)
  test_returns_int                                               32m PASS0m (0.00s)
  test_each_does_not_time_out_consumer                           32m PASS0m (0.02s)
  test_simple_query                                              32m PASS0m (0.00s)
  test_nil_factbase_raises                                       32m PASS0m (0.00s)
  test_delete_timeout                                            32m PASS0m (0.03s)
  test_custom_timeout                                            32m PASS0m (1.50s)

TestExists
  test_exists                                                    32m PASS0m (0.00s)

TestMin
  test_too_many_args                                             32m PASS0m (0.00s)
  test_not_enough_args                                           32m PASS0m (0.00s)
  test_min_success                                               32m PASS0m (0.00s)

TestSprintf
  test_rejects_invalid_format_operand                            32m PASS0m (0.00s)
  test_rejects_missing_format_operand                            32m PASS0m (0.00s)
  test_sprintf                                                   32m PASS0m (0.00s)
  test_rejects_a_format_the_fact_does_not_have                   32m PASS0m (0.00s)
  test_names_the_format_when_an_operand_is_absent                32m PASS0m (0.00s)

TestChurn
  test_concatenates_with_other                                   32m PASS0m (0.00s)
  test_converts_empty_to_string                                  32m PASS0m (0.00s)
  test_makes_a_duplicate                                         32m PASS0m (0.00s)
  test_checks_for_zero                                           32m PASS0m (0.00s)
  test_appends                                                   32m PASS0m (0.00s)

TestIndexedFactbase
  test_indexed_term_eq_keeps_duplicates                          32m PASS0m (0.00s)
  test_indexed_term_lt_keeps_duplicates_in_txn                   32m PASS0m (0.00s)
  test_term_absent_keeps_duplicates                              32m PASS0m (0.00s)
  test_insert_preserves_index                                    32m PASS0m (0.00s)
  test_indexed_term_and_keeps_many_duplicates_facts              32m PASS0m (0.01s)
  test_indexed_term_exists_keeps_duplicates                      32m PASS0m (0.00s)
  test_multiple_import_accumulates                               32m PASS0m (0.00s)
  test_indexed_term_lt_keeps_duplicates                          32m PASS0m (0.00s)
  test_import_empty_raises_error                                 32m PASS0m (0.00s)
  test_term_exists_keeps_duplicates                              32m PASS0m (0.00s)
  test_queries_after_update_in_txn                               32m PASS0m (0.01s)
  test_indexed_term_eq_keeps_duplicates_in_txn                   32m PASS0m (0.00s)
  test_insert_allows_incremental_query                           32m PASS0m (0.00s)
  test_term_one_keeps_duplicates                                 32m PASS0m (0.00s)
  test_indexed_term_absent_keeps_duplicates_in_txn               32m PASS0m (0.00s)
  test_works_with_huge_dataset                                   32m PASS0m (1.91s)
  test_unique_and_context                                        32m PASS0m (0.02s)
  test_export_and_import_with_index                              32m PASS0m (0.00s)
  test_queries_after_update                                      32m PASS0m (0.00s)
  test_term_not_keeps_duplicates                                 32m PASS0m (0.00s)
  test_term_eq_keeps_duplicates                                  32m PASS0m (0.00s)
  test_queries_after_insert_in_txn                               32m PASS0m (0.00s)
  test_indexed_term_not_keeps_duplicates_in_txn                  32m PASS0m (0.00s)
  test_property_modification_clears_index                        32m PASS0m (0.00s)
  test_indexed_term_gt_keeps_duplicates_in_txn                   32m PASS0m (0.00s)
  test_term_lt_keeps_duplicates                                  32m PASS0m (0.00s)
  test_indexed_term_one_keeps_duplicates                         32m PASS0m (0.00s)
  test_queries_after_update_rollback_in_txn                      32m PASS0m (0.02s)
  test_index_does_not_grow_unbounded_during_transactions         32m PASS0m (0.02s)
  test_indexed_term_absent_keeps_duplicates                      32m PASS0m (0.00s)
  test_indexed_term_exists_keeps_duplicates_in_txn               32m PASS0m (0.00s)
  test_indexed_term_and_keeps_duplicates                         32m PASS0m (0.00s)
  test_import_backward_compatibility                             32m PASS0m (0.00s)
  test_indexed_term_gt_keeps_duplicates                          32m PASS0m (0.00s)
  test_indexed_term_not_keeps_duplicates                         32m PASS0m (0.00s)
  test_indexed_term_one_keeps_duplicates_in_txn                  32m PASS0m (0.00s)
  test_export_preserves_index                                    32m PASS0m (0.11s)
  test_term_gt_keeps_duplicates                                  32m PASS0m (0.00s)

TestToString
  test_to_str                                                    32m PASS0m (0.00s)

TestLt
  test_compares_not_less_than                                    32m PASS0m (0.00s)
  test_compares_less_than                                        32m PASS0m (0.00s)

TestSyntax
  test_parses_a_time_with_fractional_seconds                     32m PASS0m (0.00s)
  test_names_the_term_with_too_few_operands                      32m PASS0m (0.00s)
  test_tokenizes_across_tab                                      32m PASS0m (0.00s)
  test_parses_string_right                                       32m PASS0m (0.00s)
  test_simple_parsing                                            32m PASS0m (0.00s)
  test_tokenizes_across_newline                                  32m PASS0m (0.00s)
  test_makes_static_terms                                        32m PASS0m (0.00s)
  test_parses_negative_exponent_float                            32m PASS0m (0.00s)
  test_fails_when_term_is_not_a_class                            32m PASS0m (0.00s)
  test_parses_empty_string_literal                               32m PASS0m (0.00s)
  test_fails_when_term_is_wrong_class                            32m PASS0m (0.00s)
  test_makes_abstract_terms                                      32m PASS0m (0.00s)
  test_matches_empty_string_literal                              32m PASS0m (0.00s)
  test_simple_matching                                           32m PASS0m (0.00s)
  test_fails_when_term_is_incorrectly_defined_class              32m PASS0m (0.00s)
  test_simplification                                            32m PASS0m (0.00s)
  test_raises_on_broken_syntax                                   32m PASS0m (0.01s)
  test_exact_parsing                                             32m PASS0m (0.00s)
  test_broken_syntax                                             32m PASS0m (0.00s)

TestSum
  test_sum_regular_values                                        32m PASS0m (0.00s)
  test_sum_with_absent_values                                    32m PASS0m (0.00s)
  test_refuses_extra_operands                                    32m PASS0m (0.00s)
  test_names_the_property_and_the_value                          32m PASS0m (0.00s)

TestEndsWith
  test_via_query_dispatch                                        32m PASS0m (0.00s)
  test_string_suffix_matches                                     32m PASS0m (0.00s)
  test_any_value_in_array_matches                                32m PASS0m (0.00s)

TestToTime
  test_to_time                                                   32m PASS0m (0.00s)
  test_rejects_unparsable_value                                  32m PASS0m (0.00s)
  test_rejects_out_of_range_value                                32m PASS0m (0.00s)

TestLogged
  test_with_empty_txn                                            32m PASS0m (0.00s)
  test_reading_one                                               32m PASS0m (0.00s)
  test_with_slow_txn                                             32m PASS0m (0.40s)
  test_with_txn_thrown_rollback                                  32m PASS0m (0.00s)
  test_returns_to_s_correctly                                    32m PASS0m (0.00s)
  test_returns_int_when_empty                                    32m PASS0m (0.00s)
  test_with_txn                                                  32m PASS0m (0.00s)
  test_simple_setting                                            32m PASS0m (0.00s)
  test_with_modifying_txn                                        32m PASS0m (0.00s)
  test_proper_logging                                            32m PASS0m (0.00s)
  test_with_txn_rollback                                         32m PASS0m (0.00s)
  test_returns_int                                               32m PASS0m (0.00s)
  test_logs_when_enumerator                                      32m PASS0m (0.00s)
  test_avoid_inner_logging                                       32m PASS0m (0.00s)

TestCachedImport
  test_sees_imported_facts_after_a_query                         32m PASS0m (0.00s)

TestConcat
  test_concat_empty                                              32m PASS0m (0.00s)
  test_concat_all_values_of_a_property                           32m PASS0m (0.00s)
  test_concat                                                    32m PASS0m (0.00s)

TestTaped
  test_joins_with_empty                                          32m PASS0m (0.00s)
  test_tracks_addition_uniquely                                  32m PASS0m (0.00s)
  test_tracks_insertion                                          32m PASS0m (0.00s)
  test_tracks_deletion                                           32m PASS0m (0.00s)
  test_disjoins_with_non_empty                                   32m PASS0m (0.00s)
  test_tracks_addition                                           32m PASS0m (0.00s)
  test_tracks_factbase                                           32m PASS0m (0.00s)
  test_joins_with_non_empty                                      32m PASS0m (0.00s)
  test_disjoins_with_empty                                       32m PASS0m (0.00s)
  test_checks_for_emptiness                                      32m PASS0m (0.00s)

TestIncrementalIndexing
  test_incremental_indexing_on_insert                            32m PASS0m (0.00s)
  test_delete_clears_index                                       32m PASS0m (0.00s)
  test_query_consistency_after_property_update                   32m PASS0m (0.00s)
  test_transaction_clears_index_on_delete                        32m PASS0m (0.00s)
  test_fresh_fact_does_not_clear_index                           32m PASS0m (0.00s)
  test_fact_stays_fresh_until_the_query_runs                     32m PASS0m (0.00s)
  test_query_correct_after_adding_property                       32m PASS0m (0.00s)
  test_gt_term_after_delete                                      32m PASS0m (0.00s)
  test_not_term_after_modification                               32m PASS0m (0.00s)
  test_delete_clears_fresh                                       32m PASS0m (0.00s)
  test_transaction_clears_fresh                                  32m PASS0m (0.00s)
  test_delete_then_insert_same_count                             32m PASS0m (0.00s)
  test_cached_query_sees_fresh_fact                              32m PASS0m (0.00s)
  test_and_term_incremental                                      32m PASS0m (0.00s)

TestNil
  test_nil                                                       32m PASS0m (0.00s)

TestLazyTapedArray
  test_read                                                      32m PASS0m (0.00s)
  test_each                                                      32m PASS0m (0.00s)
  test_to_a                                                      32m PASS0m (0.00s)
  test_uniq                                                      32m PASS0m (0.00s)
  test_append                                                    32m PASS0m (0.00s)
  test_any                                                       32m PASS0m (0.00s)

TestStartsWith
  test_via_query_dispatch                                        32m PASS0m (0.00s)
  test_string_prefix_matches                                     32m PASS0m (0.00s)
  test_any_value_in_array_matches                                32m PASS0m (0.00s)

TestIndexedLte
  test_orders_as_a_plain_factbase_does                           32m PASS0m (0.00s)
  test_keeps_the_order_the_facts_were_inserted_in                32m PASS0m (0.00s)

TestTraced
  test_traced_raises_when_too_many_args                          32m PASS0m (0.00s)
  test_traced_raises                                             32m PASS0m (0.00s)
  test_traced                                                    32m PASS0m (0.00s)

TestInv
  test_simple_checking                                           32m PASS0m (0.00s)
  test_pre_and_inv                                               32m PASS0m (0.00s)

Finished in 27.71790s
648 tests, 33349 assertions, 32m0 failures, 0 errors, 0m33m2 skips0m
Coverage report generated for test to /home/r/repo/coverage.
Line Coverage: 98.88% (1321 / 1336)
Coverage report generated for test to /home/r/repo/coverage/coverage.xml.
Line Coverage: 98.88% (1321 / 1336)
+ bundle exec ruby test/factbase/cached/test_cached_factbase.rb /#1242
#1242: Started with run options --seed 58352
#1242:
#1242: TestCachedFactbase
#1242:   test_queries_after_update_through_a_parameterized_query         PASS (0.00s)
#1242:   test_prints_fact_correctly                                      PASS (0.00s)
#1242:   test_queries_after_update_in_txn                                PASS (0.00s)
#1242:   test_fresh_fact_modification_invalidates_index                  PASS (0.00s)
#1242:   test_fresh_fact_modification_invalidates_cache_for_one_queries  PASS (0.00s)
#1242:   test_inserts_and_queries                                        PASS (0.00s)
#1242:   test_insert_after_query_returns_new_facts                       PASS (0.00s)
#1242:   test_query_after_txn_sees_new_facts                             PASS (0.00s)
#1242:   test_insert_after_one_returns_new_value                         PASS (0.01s)
#1242:   test_query_after_rollback_forgets_the_facts                     PASS (0.00s)
#1242:
#1242: Finished in 0.02119s
#1242: 10 tests, 22 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/factbase/cached/test_cached_import.rb /#1253
#1253: Started with run options --seed 12362
#1253:
#1253: TestCachedImport
#1253:   test_sees_imported_facts_after_a_query                          PASS (0.00s)
#1253:
#1253: Finished in 0.00310s
#1253: 1 tests, 3 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/factbase/cached/test_cached_query.rb /#1264
#1264: Started with run options --seed 37057
#1264:
#1264: TestCachedQuery
#1264:   test_works_with_logging                                         PASS (0.01s)
#1264:   test_deletes_too                                                PASS (0.00s)
#1264:   test_caches_while_being_decorated                               PASS (0.60s)
#1264:   test_aggregates_too                                             PASS (0.64s)
#1264:   test_joins_too                                                  PASS (0.00s)
#1264:   test_negates_correctly                                          PASS (0.00s)
#1264:   test_queries_many_times                                         PASS (0.00s)
#1264:
#1264: Finished in 1.25837s
#1264: 7 tests, 30 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/factbase/cached/test_cached_term.rb /#1275
#1275: Started with run options --seed 55625
#1275:
#1275: TestCachedTerm
#1275:   test_caches_static_terms                                        PASS (0.00s)
#1275:   test_does_not_cache_head                                        PASS (0.00s)
#1275:   test_does_not_cache_unique                                      PASS (0.00s)
#1275:
#1275: Finished in 0.00353s
#1275: 3 tests, 4 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/factbase/indexed/test_incremental_indexing.rb /#1286
#1286: Started with run options --seed 37025
#1286:
#1286: TestIncrementalIndexing
#1286:   test_delete_then_insert_same_count                              PASS (0.00s)
#1286:   test_query_correct_after_adding_property                        PASS (0.00s)
#1286:   test_fact_stays_fresh_until_the_query_runs                      PASS (0.00s)
#1286:   test_and_term_incremental                                       PASS (0.00s)
#1286:   test_gt_term_after_delete                                       PASS (0.00s)
#1286:   test_delete_clears_index                                        PASS (0.01s)
#1286:   test_fresh_fact_does_not_clear_index                            PASS (0.00s)
#1286:   test_query_consistency_after_property_update                    PASS (0.00s)
#1286:   test_incremental_indexing_on_insert                             PASS (0.00s)
#1286:   test_cached_query_sees_fresh_fact                               PASS (0.00s)
#1286:   test_transaction_clears_index_on_delete                         PASS (0.00s)
#1286:   test_not_term_after_modification                                PASS (0.00s)
#1286:   test_transaction_clears_fresh                                   PASS (0.00s)
#1286:   test_delete_clears_fresh                                        PASS (0.00s)
#1286:
#1286: Finished in 0.02455s
#1286: 14 tests, 45 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/factbase/indexed/test_indexed_absent.rb /#1297
#1297: Started with run options --seed 29099
#1297:
#1297: TestIndexedAbsent
#1297:   test_predicts_on_absent_with_array                              PASS (0.00s)
#1297:   test_predict_decorator_persistence                              PASS (0.00s)
#1297:   test_predicts_on_absent_with_lazy_taped                         PASS (0.00s)
#1297:   test_predicts_on_absent_with_taped                              PASS (0.00s)
#1297:
#1297: Finished in 0.00351s
#1297: 4 tests, 12 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/factbase/indexed/test_indexed_and.rb /#1308
#1308: Started with run options --seed 61529
#1308:
#1308: TestIndexedAnd
#1308:   test_predicts_on_single_and                                     PASS (0.00s)
#1308:   test_predicts_on_and                                            PASS (0.00s)
#1308:   test_predicts_on_and_returns_nil                                PASS (0.00s)
#1308:
#1308: Finished in 0.00279s
#1308: 3 tests, 4 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/factbase/indexed/test_indexed_eq.rb /#1319
#1319: Started with run options --seed 44983
#1319:
#1319: TestIndexedEq
#1319:   test_predicts_on_eq_with_array                                  PASS (0.00s)
#1319:   test_predicts_on_eq_with_taped                                  PASS (0.00s)
#1319:   test_predicts_on_eq_with_lazy_taped                             PASS (0.00s)
#1319:   test_yields_a_fact_with_repeated_values_once                    PASS (0.00s)
#1319:   test_predict_decorator_persistence                              PASS (0.00s)
#1319:
#1319: Finished in 0.00590s
#1319: 5 tests, 10 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/factbase/indexed/test_indexed_exists.rb /#1330
#1330: Started with run options --seed 54260
#1330:
#1330: TestIndexedExists
#1330:   test_predicts_on_exists_with_lazy_taped                         PASS (0.00s)
#1330:   test_predicts_on_exists_with_array                              PASS (0.00s)
#1330:   test_predicts_on_exists_with_taped                              PASS (0.00s)
#1330:   test_predict_decorator_persistence                              PASS (0.00s)
#1330:
#1330: Finished in 0.00324s
#1330: 4 tests, 9 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/factbase/indexed/test_indexed_fact.rb /#1341
#1341: Started with run options --seed 45091
#1341:
#1341: TestIndexedFact
#1341:   test_invalidates_index_of_existing_fact                         PASS (0.00s)
#1341:   test_updates_origin                                             PASS (0.00s)
#1341:
#1341: Finished in 0.00177s
#1341: 2 tests, 4 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/factbase/indexed/test_indexed_factbase.rb /#1352
#1352: Started with run options --seed 59140
#1352:
#1352: TestIndexedFactbase
#1352:   test_import_backward_compatibility                              PASS (0.00s)
#1352:   test_import_empty_raises_error                                  PASS (0.00s)
#1352:   test_indexed_term_lt_keeps_duplicates                           PASS (0.00s)
#1352:   test_indexed_term_gt_keeps_duplicates                           PASS (0.00s)
#1352:   test_queries_after_update_in_txn                                PASS (0.02s)
#1352:   test_insert_preserves_index                                     PASS (0.00s)
#1352:   test_queries_after_update_rollback_in_txn                       PASS (0.02s)
#1352:   test_indexed_term_one_keeps_duplicates                          PASS (0.00s)
#1352:   test_indexed_term_exists_keeps_duplicates                       PASS (0.00s)
#1352:   test_unique_and_context                                         PASS (0.01s)
#1352:   test_works_with_huge_dataset                                    PASS (1.75s)
#1352:   test_indexed_term_eq_keeps_duplicates_in_txn                    PASS (0.00s)
#1352:   test_indexed_term_one_keeps_duplicates_in_txn                   PASS (0.00s)
#1352:   test_indexed_term_gt_keeps_duplicates_in_txn                    PASS (0.00s)
#1352:   test_index_does_not_grow_unbounded_during_transactions          PASS (0.02s)
#1352:   test_multiple_import_accumulates                                PASS (0.00s)
#1352:   test_export_and_import_with_index                               PASS (0.00s)
#1352:   test_indexed_term_absent_keeps_duplicates_in_txn                PASS (0.00s)
#1352:   test_insert_allows_incremental_query                            PASS (0.00s)
#1352:   test_term_lt_keeps_duplicates                                   PASS (0.00s)
#1352:   test_indexed_term_eq_keeps_duplicates                           PASS (0.00s)
#1352:   test_term_one_keeps_duplicates                                  PASS (0.00s)
#1352:   test_indexed_term_exists_keeps_duplicates_in_txn                PASS (0.00s)
#1352:   test_term_gt_keeps_duplicates                                   PASS (0.00s)
#1352:   test_indexed_term_not_keeps_duplicates                          PASS (0.00s)
#1352:   test_queries_after_insert_in_txn                                PASS (0.00s)
#1352:   test_indexed_term_absent_keeps_duplicates                       PASS (0.00s)
#1352:   test_indexed_term_lt_keeps_duplicates_in_txn                    PASS (0.00s)
#1352:   test_term_eq_keeps_duplicates                                   PASS (0.00s)
#1352:   test_export_preserves_index                                     PASS (0.11s)
#1352:   test_queries_after_update                                       PASS (0.00s)
#1352:   test_term_exists_keeps_duplicates                               PASS (0.00s)
#1352:   test_term_absent_keeps_duplicates                               PASS (0.00s)
#1352:   test_term_not_keeps_duplicates                                  PASS (0.00s)
#1352:   test_indexed_term_and_keeps_many_duplicates_facts               PASS (0.01s)
#1352:   test_property_modification_clears_index                         PASS (0.00s)
#1352:   test_indexed_term_not_keeps_duplicates_in_txn                   PASS (0.00s)
#1352:   test_indexed_term_and_keeps_duplicates                          PASS (0.00s)
#1352:
#1352: Finished in 1.97228s
#1352: 38 tests, 214 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/factbase/indexed/test_indexed_gt.rb /#1364
#1364: Started with run options --seed 43708
#1364:
#1364: TestIndexedGt
#1364:   test_predict_decorator_persistence                              PASS (0.00s)
#1364:   test_predicts_on_gt_with_floats                                 PASS (0.00s)
#1364:   test_predicts_on_gt_with_missing_parameter                      PASS (0.00s)
#1364:   test_keeps_the_order_the_facts_were_inserted_in                 PASS (0.00s)
#1364:   test_predicts_on_gt_below_threshold                             PASS (0.00s)
#1364:   test_predicts_on_gt                                             PASS (0.00s)
#1364:
#1364: Finished in 0.00246s
#1364: 6 tests, 11 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/factbase/indexed/test_indexed_gte.rb /#1375
#1375: Started with run options --seed 44815
#1375:
#1375: TestIndexedGte
#1375:   test_orders_as_a_plain_factbase_does                            PASS (0.00s)
#1375:   test_keeps_the_order_the_facts_were_inserted_in                 PASS (0.00s)
#1375:
#1375: Finished in 0.00374s
#1375: 2 tests, 2 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/factbase/indexed/test_indexed_lt.rb /#1386
#1386: Started with run options --seed 39343
#1386:
#1386: TestIndexedLt
#1386:   test_predicts_on_lt_with_floats                                 PASS (0.00s)
#1386:   test_predict_decorator_persistence                              PASS (0.00s)
#1386:   test_predicts_on_lt                                             PASS (0.00s)
#1386:   test_predicts_on_lt_above_threshold                             PASS (0.00s)
#1386:   test_predicts_on_lt_with_missing_parameter                      PASS (0.00s)
#1386:   test_keeps_the_order_the_facts_were_inserted_in                 PASS (0.00s)
#1386:
#1386: Finished in 0.00268s
#1386: 6 tests, 11 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/factbase/indexed/test_indexed_lte.rb /#1397
#1397: Started with run options --seed 13732
#1397:
#1397: TestIndexedLte
#1397:   test_orders_as_a_plain_factbase_does                            PASS (0.00s)
#1397:   test_keeps_the_order_the_facts_were_inserted_in                 PASS (0.00s)
#1397:
#1397: Finished in 0.00334s
#1397: 2 tests, 2 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/factbase/indexed/test_indexed_not.rb /#1408
#1408: Started with run options --seed 28541
#1408:
#1408: TestIndexedNot
#1408:   test_answers_each_set_of_params_on_its_own                      PASS (0.00s)
#1408:   test_predicts_on_not_with_array                                 PASS (0.00s)
#1408:   test_predicts_on_not_with_taped                                 PASS (0.00s)
#1408:   test_predicts_on_not_returns_nil                                PASS (0.00s)
#1408:   test_predict_decorator_persistence                              PASS (0.00s)
#1408:   test_predicts_on_not_with_lazy_taped                            PASS (0.00s)
#1408:
#1408: Finished in 0.00809s
#1408: 6 tests, 16 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/factbase/indexed/test_indexed_one.rb /#1419
#1419: Started with run options --seed 2375
#1419:
#1419: TestIndexedOne
#1419:   test_predict_decorator_persistence                              PASS (0.00s)
#1419:   test_skips_a_subterm_operand                                    PASS (0.00s)
#1419:   test_predicts_on_one_with_lazy_taped                            PASS (0.00s)
#1419:   test_predicts_on_one_with_array                                 PASS (0.00s)
#1419:   test_predicts_on_one_with_taped                                 PASS (0.00s)
#1419:
#1419: Finished in 0.00507s
#1419: 5 tests, 16 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/factbase/indexed/test_indexed_or.rb /#1430
#1430: Started with run options --seed 44748
#1430:
#1430: TestIndexedOr
#1430:   test_predicts_on_or_with_nil                                    PASS (0.00s)
#1430:   test_predicts_on_or                                             PASS (0.00s)
#1430:   test_predicts_on_nested_or                                      PASS (0.00s)
#1430:
#1430: Finished in 0.00400s
#1430: 3 tests, 4 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/factbase/indexed/test_indexed_query.rb /#1441
#1441: Started with run options --seed 6929
#1441:
#1441: TestIndexedQuery
#1441:   test_finds_with_inversion                                       PASS (0.00s)
#1441:   test_deletes_too                                                PASS (0.00s)
#1441:   test_finds_by_eq                                                PASS (0.00s)
#1441:   test_finds_by_eq_in_txn                                         PASS (0.00s)
#1441:   test_converts_to_string                                         PASS (0.00s)
#1441:   test_joins_simple_one                                           PASS (0.00s)
#1441:   test_finds_with_disjunction_in_txn                              PASS (0.01s)
#1441:   test_queries_many_times                                         PASS (0.00s)
#1441:   test_joins_too                                                  PASS (2.44s)
#1441:   test_range_queries_with_mixed_types_match_plain_factbase_errors PASS (0.00s)
#1441:   test_finds_by_eq_with_array                                     PASS (0.00s)
#1441:   test_queries_and_updates_origin                                 PASS (0.00s)
#1441:   test_finds_by_eq_with_agg                                       PASS (0.00s)
#1441:   test_finds_with_disjunction                                     PASS (0.00s)
#1441:   test_materializes_before_iterating                              PASS (0.00s)
#1441:   test_attaches_alias                                             PASS (0.00s)
#1441:   test_finds_with_conjunction                                     PASS (0.00s)
#1441:   test_finds_by_eq_with_formula                                   PASS (0.00s)
#1441:   test_finds_max_value                                            PASS (0.00s)
#1441:   test_fills_up_the_index                                         PASS (0.00s)
#1441:   test_finds_by_eq_with_symbol                                    PASS (0.00s)
#1441:
#1441: Finished in 2.48475s
#1441: 21 tests, 66 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/factbase/indexed/test_indexed_term.rb /#1452
#1452: Started with run options --seed 24900
#1452:
#1452: TestIndexedTerm
#1452:   test_predicts_on_others                                         PASS (0.00s)
#1452:
#1452: Finished in 0.00109s
#1452: 1 tests, 1 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/factbase/indexed/test_indexed_unique.rb /#1463
#1463: Started with run options --seed 43329
#1463:
#1463: TestIndexedUnique
#1463:   test_predicts_on_unique                                         SKIP (0.00s)
#1463:   test_predicts_on_unique_with_combinations                       SKIP (0.00s)
#1463:
#1463: Finished in 0.00081s
#1463: 2 tests, 0 assertions, 0 failures, 0 errors, 2 skips
+ bundle exec ruby test/factbase/sync/test_sync_factbase.rb /#1474
#1474: Started with run options --seed 57974
#1474:
#1474: TestSyncFactbase
#1474:   test_queries_and_inserts                                        PASS (0.01s)
#1474:   test_nested_query_each_and_insert_threadsafe                    PASS (0.67s)
#1474:   test_change_property_value_in_txn_threadsafe                    PASS (0.71s)
#1474:   test_insert_threadsafe                                          PASS (0.20s)
#1474:
#1474: Finished in 1.59405s
#1474: 4 tests, 9 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/factbase/sync/test_sync_query.rb /#1605
#1605: Started with run options --seed 53992
#1605:
#1605: TestSyncQuery
#1605:   test_deletes_too                                                PASS (0.01s)
#1605:   test_queries_many_times                                         PASS (0.00s)
#1605:
#1605: Finished in 0.01514s
#1605: 2 tests, 6 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/factbase/terms/test_absent.rb /#1616
#1616: Started with run options --seed 51097
#1616:
#1616: TestAbsent
#1616:   test_absent                                                     PASS (0.00s)
#1616:
#1616: Finished in 0.00079s
#1616: 1 tests, 2 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/factbase/terms/test_agg.rb /#1627
#1627: Started with run options --seed 57709
#1627:
#1627: TestAgg
#1627:   test_agg_with_correct_arguments                                 PASS (0.00s)
#1627:   test_aggregation                                                PASS (0.01s)
#1627:   test_passes_outer_query_params_to_selector                      PASS (0.00s)
#1627:   test_agg_with_invalid_arguments                                 PASS (0.00s)
#1627:
#1627: Finished in 0.01856s
#1627: 4 tests, 27 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/factbase/terms/test_always.rb /#1638
#1638: Started with run options --seed 32176
#1638:
#1638: TestAlways
#1638:   test_always                                                     PASS (0.00s)
#1638:   test_always_with_arguments                                      PASS (0.00s)
#1638:
#1638: Finished in 0.00167s
#1638: 2 tests, 5 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/factbase/terms/test_and.rb /#1649
#1649: Started with run options --seed 13251
#1649:
#1649: TestAnd
#1649:   test_parses_a_non_term_operand                                  PASS (0.00s)
#1649:   test_reports_a_single_non_term_operand                          PASS (0.00s)
#1649:   test_and_true                                                   PASS (0.00s)
#1649:   test_and_false                                                  PASS (0.00s)
#1649:
#1649: Finished in 0.00570s
#1649: 4 tests, 9 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/factbase/terms/test_as.rb /#1660
#1660: Started with run options --seed 25258
#1660:
#1660: TestAs
#1660:   test_aliases                                                    PASS (0.00s)
#1660:
#1660: Finished in 0.00548s
#1660: 1 tests, 8 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/factbase/terms/test_assert.rb /#1671
#1671: Started with run options --seed 62201
#1671:
#1671: TestAssert
#1671:   test_assert_with_true_condition                                 PASS (0.00s)
#1671:   test_assert_with_mixed_array                                    PASS (0.00s)
#1671:   test_assert_raises_when_too_many_args                           PASS (0.00s)
#1671:   test_assert_raises_when_second_arg_not_term                     PASS (0.00s)
#1671:   test_assert_raises_when_too_few_args                            PASS (0.00s)
#1671:   test_assert_with_array_false_condition                          PASS (0.00s)
#1671:   test_assert_with_false_condition                                PASS (0.00s)
#1671:   test_assert_with_array_true_condition                           PASS (0.00s)
#1671:   test_assert_with_zero_value                                     PASS (0.00s)
#1671:   test_assert_raises_when_message_not_string                      PASS (0.00s)
#1671:
#1671: Finished in 0.00245s
#1671: 10 tests, 24 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/factbase/terms/test_at_absent.rb /#1682
#1682: Started with run options --seed 58346
#1682:
#1682: TestAtAbsent
#1682:   test_answers_nothing_for_an_absent_index                        PASS (0.01s)
#1682:
#1682: Finished in 0.01656s
#1682: 1 tests, 2 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/factbase/terms/test_best.rb /#1693
#1693: Started with run options --seed 29226
#1693:
#1693: TestBest
#1693:   test_best_max                                                   PASS (0.00s)
#1693:   test_best_min                                                   PASS (0.00s)
#1693:   test_best_always_left                                           PASS (0.00s)
#1693:   test_best_always_right                                          PASS (0.00s)
#1693:
#1693: Finished in 0.00094s
#1693: 4 tests, 4 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/factbase/terms/test_boolean.rb /#1704
#1704: Started with run options --seed 44034
#1704:
#1704: TestBoolean
#1704:   test_first_element_false                                        PASS (0.00s)
#1704:   test_direct_false                                               PASS (0.00s)
#1704:   test_invalid_value                                              PASS (0.00s)
#1704:   test_direct_true                                                PASS (0.00s)
#1704:   test_first_element                                              PASS (0.00s)
#1704:   test_nil_value                                                  PASS (0.00s)
#1704:
#1704: Finished in 0.00192s
#1704: 6 tests, 13 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/factbase/terms/test_compare.rb /#1715
#1715: Started with run options --seed 5948
#1715:
#1715: TestCompare
#1715:   test_wraps_incompatible_time_comparison                         PASS (0.00s)
#1715:   test_evaluates_comparison_less                                  PASS (0.00s)
#1715:   test_evaluates_comparison                                       PASS (0.00s)
#1715:   test_rounds_time_the_same_way_for_every_operator                PASS (0.00s)
#1715:   test_wraps_incompatible_type_comparison                         PASS (0.00s)
#1715:   test_wraps_a_missing_comparison_method                          PASS (0.00s)
#1715:
#1715: Finished in 0.00180s
#1715: 6 tests, 28 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/factbase/terms/test_compare_operand.rb /#1726
#1726: Started with run options --seed 6672
#1726:
#1726: TestCompareOperand
#1726:   test_names_the_operands_of_a_wrong_right_side                   PASS (0.01s)
#1726:
#1726: Finished in 0.01585s
#1726: 1 tests, 15 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/factbase/terms/test_concat.rb /#1737
#1737: Started with run options --seed 38124
#1737:
#1737: TestConcat
#1737:   test_concat_empty                                               PASS (0.00s)
#1737:   test_concat_all_values_of_a_property                            PASS (0.00s)
#1737:   test_concat                                                     PASS (0.00s)
#1737:
#1737: Finished in 0.00462s
#1737: 3 tests, 3 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/factbase/terms/test_contains.rb /#1748
#1748: Started with run options --seed 10002
#1748:
#1748: TestContains
#1748:   test_multi_value_property                                       PASS (0.00s)
#1748:   test_via_query_dispatch                                         PASS (0.00s)
#1748:   test_string_substring                                           PASS (0.00s)
#1748:
#1748: Finished in 0.00381s
#1748: 3 tests, 5 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/factbase/terms/test_count.rb /#1759
#1759: Started with run options --seed 64643
#1759:
#1759: TestCount
#1759:   test_refuses_operands                                           PASS (0.00s)
#1759:   test_count_several                                              PASS (0.00s)
#1759:   test_count_emptyseveral                                         PASS (0.00s)
#1759:
#1759: Finished in 0.00132s
#1759: 3 tests, 5 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/factbase/terms/test_defn.rb /#1770
#1770: Started with run options --seed 53638
#1770:
#1770: TestDefn
#1770:   test_defn_eval_arbitrary_code                                   PASS (0.00s)
#1770:   test_defn_again_by_mistake                                      PASS (0.00s)
#1770:   test_defn_bad_name_with_caps                                    PASS (0.00s)
#1770:   test_defn_bad_name_spelling_by_mistake                          PASS (0.00s)
#1770:   test_defn_bad_name_by_mistake                                   PASS (0.00s)
#1770:   test_defn_simple                                                PASS (0.00s)
#1770:   test_defn_non_symbol_argument                                   PASS (0.00s)
#1770:   test_defn_bad_name_with_digits                                  PASS (0.00s)
#1770:   test_defn_undef_then_use                                        PASS (0.00s)
#1770:   test_refuses_to_redefine_a_class_based_term                     PASS (0.00s)
#1770:
#1770: Finished in 0.00551s
#1770: 10 tests, 13 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/factbase/terms/test_defn_syntax.rb /#1781
#1781: Started with run options --seed 15323
#1781:
#1781: TestDefnSyntax
#1781:   test_explains_a_body_that_is_not_ruby                           PASS (0.01s)
#1781:
#1781: Finished in 0.01491s
#1781: 1 tests, 3 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/factbase/terms/test_div.rb /#1792
#1792: Started with run options --seed 42619
#1792:
#1792: TestDiv
#1792:   test_div_times_not_supported                                    PASS (0.00s)
#1792:   test_div_by_integer_zero                                        PASS (0.00s)
#1792:   test_div_numbers                                                PASS (0.00s)
#1792:   test_div_by_float_zero                                          PASS (0.00s)
#1792:
#1792: Finished in 0.00103s
#1792: 4 tests, 10 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/factbase/terms/test_either.rb /#1803
#1803: Started with run options --seed 39642
#1803:
#1803: TestEither
#1803:   test_either_first_nil                                           PASS (0.00s)
#1803:   test_either_first_not_nil                                       PASS (0.00s)
#1803:
#1803: Finished in 0.00091s
#1803: 2 tests, 2 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/factbase/terms/test_empty.rb /#1814
#1814: Started with run options --seed 51986
#1814:
#1814: TestEmpty
#1814:   test_empty_wrong_arguments                                      PASS (0.00s)
#1814:   test_not_empty_directly_with_terms                              PASS (0.00s)
#1814:   test_empty_directly_with_terms                                  PASS (0.00s)
#1814:   test_empty_query                                                PASS (0.00s)
#1814:   test_empty_query_with_params                                    PASS (0.00s)
#1814:
#1814: Finished in 0.00509s
#1814: 5 tests, 8 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/factbase/terms/test_ends_with.rb /#1825
#1825: Started with run options --seed 61195
#1825:
#1825: TestEndsWith
#1825:   test_via_query_dispatch                                         PASS (0.00s)
#1825:   test_string_suffix_matches                                      PASS (0.00s)
#1825:   test_any_value_in_array_matches                                 PASS (0.00s)
#1825:
#1825: Finished in 0.00437s
#1825: 3 tests, 5 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/factbase/terms/test_env.rb /#1836
#1836: Started with run options --seed 6734
#1836:
#1836: TestEnv
#1836:   test_missing_attr_returns_nil                                   PASS (0.00s)
#1836:   test_default_when_value_is_empty                                PASS (0.00s)
#1836:   test_default                                                    PASS (0.00s)
#1836:   test_missing_default_returns_nil                                PASS (0.00s)
#1836:   test_env                                                        PASS (0.00s)
#1836:   test_when_default_is_absent                                     PASS (0.00s)
#1836:
#1836: Finished in 0.00146s
#1836: 6 tests, 6 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/factbase/terms/test_env_name.rb /#1847
#1847: Started with run options --seed 749
#1847:
#1847: TestEnvName
#1847:   test_refuses_a_name_that_is_not_a_string                        PASS (0.01s)
#1847:
#1847: Finished in 0.01549s
#1847: 1 tests, 3 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/factbase/terms/test_eq.rb /#1858
#1858: Started with run options --seed 1459
#1858:
#1858: TestEq
#1858:   test_compares_not_equal                                         PASS (0.00s)
#1858:   test_compares_equal                                             PASS (0.00s)
#1858:
#1858: Finished in 0.00085s
#1858: 2 tests, 2 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/factbase/terms/test_exists.rb /#1869
#1869: Started with run options --seed 4250
#1869:
#1869: TestExists
#1869:   test_exists                                                     PASS (0.00s)
#1869:
#1869: Finished in 0.00083s
#1869: 1 tests, 2 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/factbase/terms/test_first.rb /#1880
#1880: Started with run options --seed 48594
#1880:
#1880: TestFirst
#1880:   test_first_several                                              PASS (0.00s)
#1880:   test_first_absent                                               PASS (0.00s)
#1880:
#1880: Finished in 0.00081s
#1880: 2 tests, 2 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/factbase/terms/test_gt.rb /#1891
#1891: Started with run options --seed 41234
#1891:
#1891: TestGt
#1891:   test_compares_greater_than                                      PASS (0.00s)
#1891:   test_compares_not_greater_than                                  PASS (0.00s)
#1891:
#1891: Finished in 0.00136s
#1891: 2 tests, 2 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/factbase/terms/test_gte.rb /#1902
#1902: Started with run options --seed 45115
#1902:
#1902: TestGte
#1902:   test_compares_greater_than_or_equal                             PASS (0.00s)
#1902:   test_compares_not_greater_than_or_equal                         PASS (0.00s)
#1902:
#1902: Finished in 0.00092s
#1902: 2 tests, 3 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/factbase/terms/test_head.rb /#1913
#1913: Started with run options --seed 34532
#1913:
#1913: TestHead
#1913:   test_refuses_a_negative_count                                   PASS (0.00s)
#1913:   test_does_not_turn_a_param_into_a_property                      PASS (0.00s)
#1913:   test_takes_the_first_ones                                       PASS (0.00s)
#1913:
#1913: Finished in 0.00335s
#1913: 3 tests, 6 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/factbase/terms/test_inverted.rb /#1924
#1924: Started with run options --seed 13155
#1924:
#1924: TestInverted
#1924:   test_does_not_turn_a_param_into_a_property                      PASS (0.00s)
#1924:   test_inverting                                                  PASS (0.00s)
#1924:
#1924: Finished in 0.00707s
#1924: 2 tests, 3 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/factbase/terms/test_join.rb /#1935
#1935: Started with run options --seed 19979
#1935:
#1935: TestJoin
#1935:   test_join                                                       PASS (0.01s)
#1935:
#1935: Finished in 0.00862s
#1935: 1 tests, 8 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/factbase/terms/test_logical.rb /#1946
#1946: Started with run options --seed 61546
#1946:
#1946: TestLogical
#1946:   test_or_matching                                                PASS (0.00s)
#1946:   test_either                                                     PASS (0.00s)
#1946:   test_not_eq_matching                                            PASS (0.00s)
#1946:   test_when_matching                                              PASS (0.00s)
#1946:   test_not_matching                                               PASS (0.00s)
#1946:
#1946: Finished in 0.00408s
#1946: 5 tests, 10 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/factbase/terms/test_lt.rb /#1957
#1957: Started with run options --seed 52078
#1957:
#1957: TestLt
#1957:   test_compares_not_less_than                                     PASS (0.00s)
#1957:   test_compares_less_than                                         PASS (0.00s)
#1957:
#1957: Finished in 0.00089s
#1957: 2 tests, 2 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/factbase/terms/test_lte.rb /#1968
#1968: Started with run options --seed 54115
#1968:
#1968: TestLte
#1968:   test_compares_less_than_or_equal                                PASS (0.00s)
#1968:   test_compares_not_greater_than                                  PASS (0.00s)
#1968:
#1968: Finished in 0.00113s
#1968: 2 tests, 3 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/factbase/terms/test_many.rb /#1979
#1979: Started with run options --seed 61559
#1979:
#1979: TestMany
#1979:   test_many                                                       PASS (0.00s)
#1979:
#1979: Finished in 0.00104s
#1979: 1 tests, 5 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/factbase/terms/test_matches.rb /#1990
#1990: Started with run options --seed 30645
#1990:
#1990: TestMatches
#1990:   test_reuses_compiled_regexp                                     PASS (0.00s)
#1990:   test_regexp_from_property                                       PASS (0.00s)
#1990:   test_rejects_invalid_regexp                                     PASS (0.00s)
#1990:   test_regexp_matching                                            PASS (0.00s)
#1990:
#1990: Finished in 0.00112s
#1990: 4 tests, 11 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/factbase/terms/test_math.rb /#2001
#2001: Started with run options --seed 4974
#2001:
#2001: TestMath
#2001:   test_gt                                                         PASS (0.00s)
#2001:   test_zero                                                       PASS (0.00s)
#2001:   test_minus_time                                                 PASS (0.00s)
#2001:   test_lte                                                        PASS (0.00s)
#2001:   test_minus_unknown_time_unit                                    PASS (0.00s)
#2001:   test_lt_time                                                    PASS (0.00s)
#2001:   test_simple                                                     PASS (0.00s)
#2001:   test_div_times_not_supported                                    PASS (0.00s)
#2001:   test_minus                                                      PASS (0.00s)
#2001:   test_gt_time                                                    PASS (0.00s)
#2001:   test_eq                                                         PASS (0.00s)
#2001:   test_minus_time_singular                                        PASS (0.00s)
#2001:   test_lt                                                         PASS (0.00s)
#2001:   test_gte                                                        PASS (0.00s)
#2001:   test_eq_time                                                    PASS (0.00s)
#2001:   test_gt_time_string                                             PASS (0.00s)
#2001:
#2001: Finished in 0.00733s
#2001: 16 tests, 49 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/factbase/terms/test_max.rb /#2012
#2012: Started with run options --seed 8125
#2012:
#2012: TestMax
#2012:   test_not_enough_args                                            PASS (0.00s)
#2012:   test_reports_incomparable_values                                PASS (0.01s)
#2012:   test_too_many_args                                              PASS (0.00s)
#2012:   test_max                                                        PASS (0.00s)
#2012:
#2012: Finished in 0.01561s
#2012: 4 tests, 13 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/factbase/terms/test_min.rb /#2023
#2023: Started with run options --seed 28280
#2023:
#2023: TestMin
#2023:   test_not_enough_args                                            PASS (0.00s)
#2023:   test_min_success                                                PASS (0.00s)
#2023:   test_too_many_args                                              PASS (0.00s)
#2023:
#2023: Finished in 0.00135s
#2023: 3 tests, 7 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/factbase/terms/test_minus.rb /#2034
#2034: Started with run options --seed 35543
#2034:
#2034: TestMinus
#2034:   test_rejects_a_fractional_duration                              PASS (0.00s)
#2034:   test_minus_time_singular                                        PASS (0.00s)
#2034:   test_minus                                                      PASS (0.00s)
#2034:   test_minus_time                                                 PASS (0.00s)
#2034:
#2034: Finished in 0.00605s
#2034: 4 tests, 12 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/factbase/terms/test_never.rb /#2045
#2045: Started with run options --seed 62376
#2045:
#2045: TestNever
#2045:   test_never_with_arguments                                       PASS (0.00s)
#2045:   test_never                                                      PASS (0.00s)
#2045:
#2045: Finished in 0.00192s
#2045: 2 tests, 5 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/factbase/terms/test_nil.rb /#2056
#2056: Started with run options --seed 50030
#2056:
#2056: TestNil
#2056:   test_nil                                                        PASS (0.00s)
#2056:
#2056: Finished in 0.00085s
#2056: 1 tests, 3 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/factbase/terms/test_not.rb /#2067
#2067: Started with run options --seed 34531
#2067:
#2067: TestNot
#2067:   test_not_with_arguments                                         PASS (0.00s)
#2067:   test_not_reverse                                                PASS (0.00s)
#2067:   test_not                                                        PASS (0.00s)
#2067:
#2067: Finished in 0.00116s
#2067: 3 tests, 5 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/factbase/terms/test_nth.rb /#2078
#2078: Started with run options --seed 36474
#2078:
#2078: TestNth
#2078:   test_nth                                                        PASS (0.00s)
#2078:   test_refuses_a_negative_position                                PASS (0.00s)
#2078:   test_nth_out_of_bounds                                          PASS (0.00s)
#2078:
#2078: Finished in 0.00090s
#2078: 3 tests, 5 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/factbase/terms/test_one.rb /#2089
#2089: Started with run options --seed 59987
#2089:
#2089: TestOne
#2089:   test_one                                                        PASS (0.00s)
#2089:
#2089: Finished in 0.00082s
#2089: 1 tests, 6 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/factbase/terms/test_or.rb /#2100
#2100: Started with run options --seed 9498
#2100:
#2100: TestOr
#2100:   test_names_the_bad_operand_when_evaluating                      PASS (0.00s)
#2100:   test_parses_a_non_term_operand                                  PASS (0.00s)
#2100:   test_or_true                                                    PASS (0.00s)
#2100:   test_or_false                                                   PASS (0.00s)
#2100:
#2100: Finished in 0.00345s
#2100: 4 tests, 6 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/factbase/terms/test_plus.rb /#2111
#2111: Started with run options --seed 56716
#2111:
#2111: TestPlus
#2111:   test_plus_time_minutesseconds                                   PASS (0.00s)
#2111:   test_plus_time                                                  PASS (0.00s)
#2111:   test_plus                                                       PASS (0.00s)
#2111:   test_plus_time_seconds                                          PASS (0.00s)
#2111:   test_plus_time_weeks                                            PASS (0.00s)
#2111:   test_plus_time_hoursminutes                                     PASS (0.00s)
#2111:
#2111: Finished in 0.00251s
#2111: 6 tests, 12 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/factbase/terms/test_prev.rb /#2122
#2122: Started with run options --seed 8361
#2122:
#2122: TestPrev
#2122:   test_prev                                                       PASS (0.00s)
#2122:
#2122: Finished in 0.00080s
#2122: 1 tests, 3 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/factbase/terms/test_simplified.rb /#2133
#2133: Started with run options --seed 57702
#2133:
#2133: TestSimplified
#2133:   test_unique_operands_simple                                     PASS (0.00s)
#2133:   test_unique_operands_complex                                    PASS (0.00s)
#2133:
#2133: Finished in 0.00088s
#2133: 2 tests, 2 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/factbase/terms/test_size.rb /#2144
#2144: Started with run options --seed 34637
#2144:
#2144: TestSize
#2144:   test_size                                                       PASS (0.00s)
#2144:
#2144: Finished in 0.00086s
#2144: 1 tests, 5 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/factbase/terms/test_sorted.rb /#2155
#2155: Started with run options --seed 57367
#2155:
#2155: TestSorted
#2155:   test_keeps_facts_without_the_property                           PASS (0.00s)
#2155:   test_join_and_sort                                              PASS (0.00s)
#2155:   test_sorting                                                    PASS (0.00s)
#2155:   test_does_not_turn_a_param_into_a_property                      PASS (0.00s)
#2155:
#2155: Finished in 0.00533s
#2155: 4 tests, 8 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/factbase/terms/test_sprintf.rb /#2166
#2166: Started with run options --seed 3932
#2166:
#2166: TestSprintf
#2166:   test_sprintf                                                    PASS (0.00s)
#2166:   test_rejects_missing_format_operand                             PASS (0.00s)
#2166:   test_rejects_invalid_format_operand                             PASS (0.00s)
#2166:   test_rejects_a_format_the_fact_does_not_have                    PASS (0.00s)
#2166:   test_names_the_format_when_an_operand_is_absent                 PASS (0.00s)
#2166:
#2166: Finished in 0.00103s
#2166: 5 tests, 24 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/factbase/terms/test_starts_with.rb /#2177
#2177: Started with run options --seed 26843
#2177:
#2177: TestStartsWith
#2177:   test_string_prefix_matches                                      PASS (0.00s)
#2177:   test_any_value_in_array_matches                                 PASS (0.00s)
#2177:   test_via_query_dispatch                                         PASS (0.00s)
#2177:
#2177: Finished in 0.00371s
#2177: 3 tests, 5 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/factbase/terms/test_sum.rb /#2188
#2188: Started with run options --seed 14699
#2188:
#2188: TestSum
#2188:   test_sum_with_absent_values                                     PASS (0.00s)
#2188:   test_sum_regular_values                                         PASS (0.00s)
#2188:   test_names_the_property_and_the_value                           PASS (0.00s)
#2188:   test_refuses_extra_operands                                     PASS (0.00s)
#2188:
#2188: Finished in 0.00419s
#2188: 4 tests, 8 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/factbase/terms/test_times.rb /#2199
#2199: Started with run options --seed 502
#2199:
#2199: TestTimes
#2199:   test_times                                                      PASS (0.00s)
#2199:
#2199: Finished in 0.00080s
#2199: 1 tests, 1 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/factbase/terms/test_to_float.rb /#2210
#2210: Started with run options --seed 34997
#2210:
#2210: TestToFloat
#2210:   test_to_float                                                   PASS (0.00s)
#2210:   test_rejects_invalid_value                                      PASS (0.00s)
#2210:
#2210: Finished in 0.00124s
#2210: 2 tests, 4 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/factbase/terms/test_to_integer.rb /#2221
#2221: Started with run options --seed 40147
#2221:
#2221: TestToInteger
#2221:   test_to_integer                                                 PASS (0.00s)
#2221:   test_rejects_invalid_value                                      PASS (0.00s)
#2221:   test_truncates_float                                            PASS (0.00s)
#2221:
#2221: Finished in 0.00092s
#2221: 3 tests, 5 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/factbase/terms/test_to_string.rb /#2232
#2232: Started with run options --seed 60885
#2232:
#2232: TestToString
#2232:   test_to_str                                                     PASS (0.00s)
#2232:
#2232: Finished in 0.00119s
#2232: 1 tests, 1 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/factbase/terms/test_to_time.rb /#2243
#2243: Started with run options --seed 33456
#2243:
#2243: TestToTime
#2243:   test_to_time                                                    PASS (0.00s)
#2243:   test_rejects_out_of_range_value                                 PASS (0.00s)
#2243:   test_rejects_unparsable_value                                   PASS (0.00s)
#2243:
#2243: Finished in 0.00114s
#2243: 3 tests, 11 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/factbase/terms/test_traced.rb /#2254
#2254: Started with run options --seed 30002
#2254:
#2254: TestTraced
#2254:   test_traced_raises                                              PASS (0.00s)
#2254:   test_traced                                                     PASS (0.00s)
#2254:   test_traced_raises_when_too_many_args                           PASS (0.00s)
#2254:
#2254: Finished in 0.00132s
#2254: 3 tests, 8 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/factbase/terms/test_type.rb /#2265
#2265: Started with run options --seed 63471
#2265:
#2265: TestType
#2265:   test_type                                                       PASS (0.00s)
#2265:
#2265: Finished in 0.00132s
#2265: 1 tests, 6 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/factbase/terms/test_undef.rb /#2276
#2276: Started with run options --seed 5162
#2276:
#2276: TestUndef
#2276:   test_undef_nonexistent                                          PASS (0.00s)
#2276:   test_undef_simple                                               PASS (0.00s)
#2276:   test_undef_defined_then_removed                                 PASS (0.00s)
#2276:   test_undef_non_symbol                                           PASS (0.00s)
#2276:   test_refuses_to_undefine_a_class_based_term                     PASS (0.00s)
#2276:
#2276: Finished in 0.00496s
#2276: 5 tests, 10 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/factbase/terms/test_unique.rb /#2287
#2287: Started with run options --seed 46136
#2287:
#2287: TestUnique
#2287:   test_unique_stops_when_all_arguments_are_duplicates             PASS (0.00s)
#2287:   test_unique                                                     PASS (0.00s)
#2287:   test_unique_when_one_value_is_new                               PASS (0.00s)
#2287:   test_unique_with_multiple_arguments                             PASS (0.00s)
#2287:
#2287: Finished in 0.00226s
#2287: 4 tests, 19 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/factbase/terms/test_when.rb /#2298
#2298: Started with run options --seed 43964
#2298:
#2298: TestWhen
#2298:   test_positive                                                   PASS (0.00s)
#2298:   test_negative                                                   PASS (0.00s)
#2298:   test_rejects_a_non_term_operand                                 PASS (0.00s)
#2298:
#2298: Finished in 0.00389s
#2298: 3 tests, 14 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/factbase/terms/test_zero.rb /#2309
#2309: Started with run options --seed 62758
#2309:
#2309: TestZero
#2309:   test_zero                                                       PASS (0.00s)
#2309:
#2309: Finished in 0.00126s
#2309: 1 tests, 5 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/factbase/test_accum.rb /#2320
#2320: Started with run options --seed 12708
#2320:
#2320: TestAccum
#2320:   test_appends_props                                              PASS (0.00s)
#2320:   test_prints_to_string                                           PASS (0.00s)
#2320:   test_empties                                                    PASS (0.00s)
#2320:   test_keep_duplicates                                            PASS (0.00s)
#2320:   test_passes_props                                               PASS (0.00s)
#2320:   test_fetches_without_conflict_with_global_name                  PASS (0.00s)
#2320:   test_all_properties_includes_accumulated                        PASS (0.00s)
#2320:   test_holds_props                                                PASS (0.00s)
#2320:
#2320: Finished in 0.00122s
#2320: 8 tests, 17 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/factbase/test_churn.rb /#2331
#2331: Started with run options --seed 12497
#2331:
#2331: TestChurn
#2331:   test_converts_empty_to_string                                   PASS (0.00s)
#2331:   test_checks_for_zero                                            PASS (0.00s)
#2331:   test_makes_a_duplicate                                          PASS (0.00s)
#2331:   test_appends                                                    PASS (0.00s)
#2331:   test_concatenates_with_other                                    PASS (0.00s)
#2331:
#2331: Finished in 0.00132s
#2331: 5 tests, 8 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/factbase/test_fact.rb /#2342
#2342: Started with run options --seed 17355
#2342:
#2342: TestFact
#2342:   test_refuses_a_float_that_is_not_a_number                       PASS (0.00s)
#2342:   test_fails_when_not_found                                       PASS (0.00s)
#2342:   test_stores_booleans                                            PASS (0.01s)
#2342:   test_fails_when_empty                                           PASS (0.00s)
#2342:   test_keeps_values_unique                                        PASS (0.00s)
#2342:   test_some_names_are_prohibited                                  PASS (0.00s)
#2342:   test_set_twice_same_value                                       PASS (0.00s)
#2342:   test_fails_when_setting_empty                                   PASS (0.00s)
#2342:   test_get_all_properties                                         PASS (0.00s)
#2342:   test_simple_resetting                                           PASS (0.00s)
#2342:   test_time_in_utc                                                PASS (0.00s)
#2342:   test_fails_when_setting_nil                                     PASS (0.00s)
#2342:   test_set_by_name                                                PASS (0.00s)
#2342:   test_injects_data_correctly                                     PASS (0.00s)
#2342:
#2342: Finished in 0.01491s
#2342: 14 tests, 26 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/factbase/test_fact_as_yaml.rb /#2353
#2353: Started with run options --seed 54190
#2353:
#2353: TestFactAsYaml
#2353:   test_simple_rendering                                           PASS (0.00s)
#2353:   test_usage_example_from_issue                                   PASS (0.01s)
#2353:   test_sorted_keys                                                PASS (0.00s)
#2353:   test_multiple_values                                            PASS (0.00s)
#2353:   test_prints_exactly                                             PASS (0.00s)
#2353:
#2353: Finished in 0.01620s
#2353: 5 tests, 14 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/factbase/test_flatten.rb /#2364
#2364: Started with run options --seed 4206
#2364:
#2364: TestFlatten
#2364:   test_sorts_strings_alphabetically                               PASS (0.00s)
#2364:   test_sorts_values_of_mixed_kinds                                PASS (0.00s)
#2364:   test_without_sorter                                             PASS (0.00s)
#2364:   test_sorts_numbers_in_their_own_order                           PASS (0.00s)
#2364:   test_sorts_with_incompatible_types                              PASS (0.00s)
#2364:   test_mapping                                                    PASS (0.00s)
#2364:   test_sorts_times_chronologically                                PASS (0.00s)
#2364:
#2364: Finished in 0.00126s
#2364: 7 tests, 9 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/factbase/test_impatient.rb /#2375
#2375: Started with run options --seed 15280
#2375:
#2375: TestImpatient
#2375:   test_delete_timeout                                             PASS (0.03s)
#2375:   test_with_txn                                                   PASS (0.00s)
#2375:   test_simple_query                                               PASS (0.00s)
#2375:   test_enumerator_support                                         PASS (0.00s)
#2375:   test_returns_to_s_correctly                                     PASS (0.00s)
#2375:   test_returns_int                                                PASS (0.00s)
#2375:   test_query_one_timeout                                          PASS (0.17s)
#2375:   test_custom_timeout                                             PASS (1.50s)
#2375:   test_each_does_not_time_out_consumer                            PASS (0.02s)
#2375:   test_query_completes_before_timeout                             PASS (0.00s)
#2375:   test_returns_int_when_empty                                     PASS (0.00s)
#2375:   test_query_one                                                  PASS (0.00s)
#2375:   test_nil_factbase_raises                                        PASS (0.00s)
#2375:
#2375: Finished in 1.73630s
#2375: 13 tests, 127 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/factbase/test_inv.rb /#2387
#2387: Started with run options --seed 31765
#2387:
#2387: TestInv
#2387:   test_simple_checking                                            PASS (0.01s)
#2387:   test_pre_and_inv                                                PASS (0.00s)
#2387:
#2387: Finished in 0.01389s
#2387: 2 tests, 4 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/factbase/test_lazy_taped.rb /#2398
#2398: Started with run options --seed 33470
#2398:
#2398: TestLazyTaped
#2398:   test_array_to_a                                                 PASS (0.00s)
#2398:   test_does_not_copy_on_read                                      PASS (0.00s)
#2398:   test_array_uniq_triggers_copy                                   PASS (0.00s)
#2398:   test_tracks_insertion                                           PASS (0.00s)
#2398:   test_copied_state                                               PASS (0.00s)
#2398:   test_array_each_enumerable                                      PASS (0.00s)
#2398:   test_rollback_does_not_modify                                   PASS (0.02s)
#2398:   test_modifying_txn_copies_lazily                                PASS (0.00s)
#2398:   test_copies_on_property_set                                     PASS (0.00s)
#2398:   test_safe_each_in_txn                                           PASS (0.01s)
#2398:   test_modifies_two_equal_facts_in_txn                            PASS (0.00s)
#2398:   test_does_not_copy_on_insert                                    PASS (0.00s)
#2398:   test_read_only_txn_does_not_copy                                PASS (0.00s)
#2398:   test_to_a_without_copy                                          PASS (0.00s)
#2398:   test_joins_with_empty                                           PASS (0.00s)
#2398:   test_tracks_addition_uniquely                                   PASS (0.00s)
#2398:   test_copies_on_array_append                                     PASS (0.00s)
#2398:   test_to_a_after_modification                                    PASS (0.00s)
#2398:   test_array_any                                                  PASS (0.00s)
#2398:   test_enumerable_without_block                                   PASS (0.00s)
#2398:   test_disjoins_with_empty                                        PASS (0.00s)
#2398:   test_unsafe_each_in_txn                                         PASS (0.00s)
#2398:   test_hash_keys                                                  PASS (0.00s)
#2398:   test_hash_map                                                   PASS (0.00s)
#2398:   test_joins_with_non_empty                                       PASS (0.00s)
#2398:   test_deletes_two_equal_facts_in_txn                             PASS (0.00s)
#2398:   test_disjoins_with_non_empty                                    PASS (0.00s)
#2398:   test_insert_in_txn                                              PASS (0.00s)
#2398:   test_delete_in_txn                                              PASS (0.00s)
#2398:   test_find_by_object_id                                          PASS (0.00s)
#2398:   test_array_index_access                                         PASS (0.00s)
#2398:   test_copies_on_delete                                           PASS (0.00s)
#2398:
#2398: Finished in 0.03486s
#2398: 32 tests, 70 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/factbase/test_lazy_taped_array.rb /#2409
#2409: Started with run options --seed 1030
#2409:
#2409: TestLazyTapedArray
#2409:   test_any                                                        PASS (0.00s)
#2409:   test_each                                                       PASS (0.00s)
#2409:   test_to_a                                                       PASS (0.00s)
#2409:   test_read                                                       PASS (0.00s)
#2409:   test_uniq                                                       PASS (0.00s)
#2409:   test_append                                                     PASS (0.00s)
#2409:
#2409: Finished in 0.00099s
#2409: 6 tests, 25 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/factbase/test_lazy_taped_hash.rb /#2420
#2420: Started with run options --seed 41477
#2420:
#2420: TestLazyTapedHash
#2420:   test_ensure_copied_after_ensure_copied_map                      PASS (0.00s)
#2420:   test_tracking_id                                                PASS (0.00s)
#2420:   test_method_missing_reader_does_not_copy                        PASS (0.00s)
#2420:   test_reed_scalar                                                PASS (0.00s)
#2420:   test_write_scalar                                               PASS (0.00s)
#2420:   test_keys                                                       PASS (0.00s)
#2420:   test_ensure_copied_after_get_copied_array                       PASS (0.00s)
#2420:   test_copying_state                                              PASS (0.00s)
#2420:   test_map                                                        PASS (0.00s)
#2420:   test_delegates_size                                             PASS (0.00s)
#2420:   test_method_missing_bang_triggers_copy                          PASS (0.00s)
#2420:   test_write_array                                                PASS (0.00s)
#2420:   test_reed_array                                                 PASS (0.00s)
#2420:
#2420: Finished in 0.00169s
#2420: 13 tests, 56 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/factbase/test_logged.rb /#2431
#2431: Started with run options --seed 33156
#2431:
#2431: TestLogged
#2431:   test_returns_int                                                PASS (0.00s)
#2431:   test_proper_logging                                             PASS (0.00s)
#2431:   test_with_empty_txn                                             PASS (0.00s)
#2431:   test_returns_int_when_empty                                     PASS (0.00s)
#2431:   test_avoid_inner_logging                                        PASS (0.00s)
#2431:   test_returns_to_s_correctly                                     PASS (0.00s)
#2431:   test_with_txn_thrown_rollback                                   PASS (0.00s)
#2431:   test_logs_when_enumerator                                       PASS (0.00s)
#2431:   test_simple_setting                                             PASS (0.00s)
#2431:   test_with_txn_rollback                                          PASS (0.00s)
#2431:   test_with_slow_txn                                              PASS (0.40s)
#2431:   test_reading_one                                                PASS (0.00s)
#2431:   test_with_txn                                                   PASS (0.00s)
#2431:   test_with_modifying_txn                                         PASS (0.01s)
#2431:
#2431: Finished in 0.42220s
#2431: 14 tests, 51 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/factbase/test_logged_length.rb /#2442
#2442: Started with run options --seed 27094
#2442:
#2442: TestLoggedLength
#2442:   test_cuts_a_long_value_down_to_the_limit                        PASS (0.00s)
#2442:
#2442: Finished in 0.00149s
#2442: 1 tests, 3 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/factbase/test_pre.rb /#2453
#2453: Started with run options --seed 21259
#2453:
#2453: TestPre
#2453:   test_in_transaction                                             PASS (0.01s)
#2453:   test_simple_setting                                             PASS (0.00s)
#2453:
#2453: Finished in 0.01661s
#2453: 2 tests, 4 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/factbase/test_query.rb /#2464
#2464: Started with run options --seed 52756
#2464:
#2464: TestQuery
#2464:   test_turns_query_to_string                                      PASS (0.01s)
#2464:   test_returns_int                                                PASS (0.00s)
#2464:   test_deleting_nothing                                           PASS (0.00s)
#2464:   test_scans_and_appends_in_queried_txn                           PASS (0.07s)
#2464:   test_simple_deleting                                            PASS (0.00s)
#2464:   test_with_nil_alias                                             PASS (0.00s)
#2464:   test_delete_by_id                                               PASS (0.00s)
#2464:   test_to_array                                                   PASS (0.00s)
#2464:   test_reading_one                                                PASS (0.12s)
#2464:   test_deletes_without_touching_survivors                         PASS (0.00s)
#2464:   test_retrieves_all_facts                                        PASS (0.00s)
#2464:   test_scans_and_inserts_in_txn                                   PASS (1.37s)
#2464:   test_with_params                                                PASS (0.00s)
#2464:   test_with_a_digit_in_the_param_name                             PASS (0.00s)
#2464:   test_finds_with_substitution                                    PASS (0.03s)
#2464:   test_scans_and_inserts_in_queried_txn                           PASS (0.10s)
#2464:   test_simple_parsing_with_time                                   PASS (0.00s)
#2464:   test_with_aliases                                               PASS (0.00s)
#2464:   test_complex_parsing                                            PASS (2.62s)
#2464:   test_deletes_only_the_head                                      PASS (0.00s)
#2464:   test_simple_parsing                                             PASS (0.00s)
#2464:   test_txn_performance_degradation                                PASS (4.17s)
#2464:   test_get_all_properties                                         PASS (0.00s)
#2464:   test_compare_time_with_the_past                                 PASS (0.00s)
#2464:   test_deletes_exactly_what_each_yields                           PASS (0.00s)
#2464:   test_error_names_the_term_not_the_object                        PASS (0.00s)
#2464:   test_scans_and_inserts                                          PASS (0.03s)
#2464:   test_deletes_facts_of_equal_content                             PASS (0.00s)
#2464:   test_stories                                                    PASS (3.96s)
#2464:
#2464: Finished in 12.50661s
#2464: 29 tests, 29046 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/factbase/test_rules.rb /#2476
#2476: Started with run options --seed 34222
#2476:
#2476: TestRules
#2476:   test_check_only_when_txn_is_closed                              PASS (0.00s)
#2476:   test_does_not_write_a_value_rejected_by_a_rule                  PASS (0.00s)
#2476:   test_to_string                                                  PASS (0.00s)
#2476:   test_error_message_truncates_long_expression                    PASS (0.00s)
#2476:   test_keeps_checking_after_a_rollback                            PASS (0.00s)
#2476:   test_query_one                                                  PASS (0.00s)
#2476:   test_fails_if_id_duplicates_are_there_already                   PASS (0.00s)
#2476:   test_in_combination_with_pre                                    PASS (0.01s)
#2476:   test_defends_against_id_duplicates                              PASS (0.00s)
#2476:   test_keeps_checking_after_a_failed_transaction                  PASS (0.00s)
#2476:   test_check_with_id                                              PASS (0.00s)
#2476:   test_rollback_on_violation                                      PASS (0.00s)
#2476:   test_error_message_includes_expression                          PASS (0.00s)
#2476:   test_simple_checking                                            PASS (0.00s)
#2476:
#2476: Finished in 0.02213s
#2476: 14 tests, 29 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/factbase/test_syntax.rb /#2487
#2487: Started with run options --seed 23619
#2487:
#2487: TestSyntax
#2487:   test_parses_string_right                                        PASS (0.00s)
#2487:   test_fails_when_term_is_wrong_class                             PASS (0.00s)
#2487:   test_broken_syntax                                              PASS (0.00s)
#2487:   test_fails_when_term_is_incorrectly_defined_class               PASS (0.00s)
#2487:   test_raises_on_broken_syntax                                    PASS (0.02s)
#2487:   test_parses_a_time_with_fractional_seconds                      PASS (0.00s)
#2487:   test_parses_empty_string_literal                                PASS (0.00s)
#2487:   test_simple_parsing                                             PASS (0.00s)
#2487:   test_makes_static_terms                                         PASS (0.00s)
#2487:   test_simplification                                             PASS (0.00s)
#2487:   test_names_the_term_with_too_few_operands                       PASS (0.01s)
#2487:   test_exact_parsing                                              PASS (0.00s)
#2487:   test_parses_negative_exponent_float                             PASS (0.00s)
#2487:   test_simple_matching                                            PASS (0.00s)
#2487:   test_tokenizes_across_tab                                       PASS (0.00s)
#2487:   test_makes_abstract_terms                                       PASS (0.00s)
#2487:   test_tokenizes_across_newline                                   PASS (0.00s)
#2487:   test_fails_when_term_is_not_a_class                             PASS (0.00s)
#2487:   test_matches_empty_string_literal                               PASS (0.00s)
#2487:
#2487: Finished in 0.03805s
#2487: 19 tests, 208 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/factbase/test_syntax_quotes.rb /#2498
#2498: Started with run options --seed 12579
#2498:
#2498: TestSyntaxQuotes
#2498:   test_does_not_split_a_literal_with_two_intruding_quotes         PASS (0.01s)
#2498:   test_keeps_a_quote_of_the_other_kind_inside_a_literal           PASS (0.00s)
#2498:
#2498: Finished in 0.01571s
#2498: 2 tests, 2 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/factbase/test_tallied.rb /#2509
#2509: Started with run options --seed 16425
#2509:
#2509: TestTallied
#2509:   test_counts_in_txn_after_rollback_throw                         PASS (0.00s)
#2509:   test_returns_all_props                                          PASS (0.00s)
#2509:   test_queries_empty_factbase                                     PASS (0.01s)
#2509:   test_counts_size                                                PASS (0.00s)
#2509:   test_counts_in_txn_in_threads                                   PASS (0.00s)
#2509:   test_counts_simple_changes                                      PASS (0.00s)
#2509:   test_counts_in_txn_after_rollback                               PASS (0.00s)
#2509:   test_counts_in_one                                              PASS (0.00s)
#2509:   test_counts_in_txn                                              PASS (0.00s)
#2509:
#2509: Finished in 0.02112s
#2509: 9 tests, 20 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/factbase/test_taped.rb /#2525
#2525: Started with run options --seed 2990
#2525:
#2525: TestTaped
#2525:   test_tracks_addition                                            PASS (0.00s)
#2525:   test_tracks_addition_uniquely                                   PASS (0.00s)
#2525:   test_disjoins_with_non_empty                                    PASS (0.00s)
#2525:   test_tracks_deletion                                            PASS (0.00s)
#2525:   test_joins_with_empty                                           PASS (0.00s)
#2525:   test_tracks_factbase                                            PASS (0.02s)
#2525:   test_checks_for_emptiness                                       PASS (0.00s)
#2525:   test_tracks_insertion                                           PASS (0.00s)
#2525:   test_disjoins_with_empty                                        PASS (0.00s)
#2525:   test_joins_with_non_empty                                       PASS (0.00s)
#2525:
#2525: Finished in 0.01740s
#2525: 10 tests, 14 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/factbase/test_tee.rb /#2536
#2536: Started with run options --seed 59824
#2536:
#2536: TestTee
#2536:   test_fetches_simply                                             PASS (0.00s)
#2536:   test_no_trip_to_prim_if_not_found                               PASS (0.00s)
#2536:   test_two_facts                                                  PASS (0.00s)
#2536:   test_all_properties                                             PASS (0.00s)
#2536:   test_recursively                                                PASS (0.00s)
#2536:   test_fetches_without_conflict_with_global_name                  PASS (0.00s)
#2536:   test_prints_to_string                                           PASS (0.00s)
#2536:   test_all_properties_lists_a_shared_name_once                    PASS (0.00s)
#2536:
#2536: Finished in 0.00126s
#2536: 8 tests, 13 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/factbase/test_term.rb /#2547
#2547: Started with run options --seed 25458
#2547:
#2547: TestTerm
#2547:   test_redresses_itself                                           PASS (0.01s)
#2547:   test_past                                                       PASS (0.00s)
#2547:   test_absent_matching                                            PASS (0.00s)
#2547:   test_report_other_error                                         PASS (0.00s)
#2547:   test_false_matching                                             PASS (0.00s)
#2547:   test_exists_matching                                            PASS (0.00s)
#2547:   test_at                                                         PASS (0.00s)
#2547:   test_size_matching                                              PASS (0.00s)
#2547:   test_report_missing_term                                        PASS (0.00s)
#2547:   test_type_matching                                              PASS (0.00s)
#2547:
#2547: Finished in 0.00953s
#2547: 10 tests, 27 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/factbase/test_term_at.rb /#2558
#2558: Started with run options --seed 21886
#2558:
#2558: TestTermAt
#2558:   test_refuses_a_negative_position                                PASS (0.01s)
#2558:
#2558: Finished in 0.01398s
#2558: 1 tests, 3 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/factbase/test_to_json.rb /#2569
#2569: Started with run options --seed 49509
#2569:
#2569: TestToJSON
#2569:   test_names_the_property_that_is_not_valid_utf8                  PASS (0.00s)
#2569:   test_string_value                                               PASS (0.00s)
#2569:   test_sort_keys                                                  PASS (0.00s)
#2569:   test_custom_sort_key                                            PASS (0.00s)
#2569:   test_time_value                                                 PASS (0.00s)
#2569:   test_empty_factbase                                             PASS (0.00s)
#2569:   test_simple_rendering                                           PASS (0.00s)
#2569:   test_time_value_in_iso8601                                      PASS (0.00s)
#2569:
#2569: Finished in 0.00334s
#2569: 8 tests, 15 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/factbase/test_to_xml.rb /#2580
#2580: Started with run options --seed 3307
#2580:
#2580: TestToXML
#2580:   test_size_counts_the_facts                                      PASS (0.00s)
#2580:   test_show_types_as_attributes                                   PASS (0.00s)
#2580:   test_sorts_keys                                                 PASS (0.00s)
#2580:   test_broken_utf8_rendering                                      PASS (0.00s)
#2580:   test_simple_rendering                                           PASS (0.00s)
#2580:   test_control_character_rendering                                PASS (0.00s)
#2580:   test_meta_data_presence                                         PASS (0.00s)
#2580:   test_to_xml_with_short_names                                    PASS (0.00s)
#2580:   test_complex_rendering                                          PASS (0.01s)
#2580:   test_empty_factbase                                             PASS (0.00s)
#2580:
#2580: Finished in 0.01357s
#2580: 10 tests, 44 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/factbase/test_to_yaml.rb /#2591
#2591: Started with run options --seed 25694
#2591:
#2591: TestToYAML
#2591:   test_string_value                                               PASS (0.00s)
#2591:   test_sorts_keys                                                 PASS (0.00s)
#2591:   test_time_value                                                 PASS (0.00s)
#2591:   test_simple_rendering                                           PASS (0.00s)
#2591:   test_empty_factbase                                             PASS (0.00s)
#2591:
#2591: Finished in 0.00559s
#2591: 5 tests, 8 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/test__helper.rb /#2602
#2602: Started with run options --seed 19139
#2602:
#2602: Finished in 0.00064s
#2602: 0 tests, 0 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/test_factbase.rb /#2613
#2613: Started with run options --seed 35978
#2613:
#2613: TestFactbase
#2613:   test_evals_complex_txn                                          PASS (0.00s)
#2613:   test_txn_inside_query                                           PASS (0.00s)
#2613:   test_get_raise_for_empty_fact                                   PASS (0.00s)
#2613:   test_serialize_and_deserialize                                  PASS (0.00s)
#2613:   test_keeps_order_when_modifying_a_fact_in_txn                   PASS (0.00s)
#2613:   test_import_of_corrupt_data                                     PASS (0.00s)
#2613:   test_concurrent_transactions_with_rollbacks                     PASS (0.00s)
#2613:   test_import_from_indexed_factbase                               PASS (0.01s)
#2613:   test_run_txn_with_inv                                           PASS (0.00s)
#2613:   test_injects_data_correctly                                     PASS (0.00s)
#2613:   test_converts_query_to_term                                     PASS (0.00s)
#2613:   test_reads_from_empty_file                                      PASS (0.00s)
#2613:   test_concurrent_transactions_successful                         PASS (0.01s)
#2613:   test_dup_concurrent                                             PASS (0.14s)
#2613:   test_txn_with_rollback                                          PASS (0.00s)
#2613:   test_modifies_existing_fact_in_txn                              PASS (0.00s)
#2613:   test_empty_or_not                                               PASS (0.00s)
#2613:   test_concurrent_transactions_inserts                            PASS (0.00s)
#2613:   test_simple_concurrent_inserts_in_txns_with_sleep               PASS (0.16s)
#2613:   test_appends_in_txn                                             PASS (0.00s)
#2613:   test_all_decorators                                             PASS (0.01s)
#2613:   test_deals_with_arrays_in_txn                                   PASS (0.00s)
#2613:   test_simple_concurrent_inserts_in_txns                          PASS (0.03s)
#2613:   test_query_many_times                                           PASS (0.00s)
#2613:   test_simple_concurrent_inserts                                  PASS (0.00s)
#2613:   test_txn_returns_boolean                                        PASS (0.00s)
#2613:   test_rolls_back                                                 PASS (0.00s)
#2613:   test_simple_setting                                             PASS (0.00s)
#2613:   test_different_properties_when_concurrent_inserts               PASS (0.00s)
#2613:   test_modify_via_query                                           PASS (0.00s)
#2613:   test_concurrent_queries                                         PASS (0.00s)
#2613:   test_run_txn                                                    PASS (0.00s)
#2613:   test_different_values_when_concurrent_inserts                   PASS (0.00s)
#2613:   test_commits_on_exit_by_throw                                   PASS (0.00s)
#2613:   test_concurrent_inserts                                         PASS (0.01s)
#2613:   test_run_txn_via_query                                          PASS (0.00s)
#2613:   test_export_import_concurrent                                   PASS (0.49s)
#2613:
#2613: Finished in 0.89325s
#2613: 37 tests, 757 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/test_fuzz.rb /#3063
#3063: Started with run options --seed 49608
#3063:
#3063: TestIndexedAnd
#3063:   test_contains_all_required_fields                               PASS (0.04s)
#3063:   test_make_generates_default_size                                PASS (0.20s)
#3063:   test_make_with_custom_size                                      PASS (0.03s)
#3063:   test_feed_accumulates_facts                                     PASS (0.03s)
#3063:
#3063: Finished in 0.29915s
#3063: 4 tests, 1008 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/test_no_useless_conditional_assignment.rb /#3074
#3074: warning: parser/current is loading parser/ruby34, which recognizes 3.4.0-dev-compliant syntax, but you are running 3.4.9.
#3074: Please see https://github.com/whitequark/parser#compatibility-with-ruby-mri.
#3074: Started with run options --seed 20446
#3074:
#3074: TestNoUselessConditionalAssignment
#3074:   test_lib_is_free_of_useless_conditional_assignments             PASS (0.38s)
#3074:
#3074: Finished in 0.38608s
#3074: 1 tests, 2 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/test_rakefile.rb /#3085
#3085: Run options: --seed 55845
#3085:
#3085: # Running:
#3085:
#3085: ..
#3085:
#3085: Finished in 0.000803s, 2491.0075 runs/s, 9964.0299 assertions/s.
#3085:
#3085: 2 runs, 8 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/test_readme.rb /#3096
#3096: Started with run options --seed 11547
#3096:
#3096: TestReadme
#3096:   test_every_documented_term_exists                               PASS (0.00s)
#3096:
#3096: Finished in 0.00203s
#3096: 1 tests, 51 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby test/test_yard.rb /#3107
#3107: Started with run options --seed 57297
#3107:
#3107: TestYard
#3107:   test_params_match_method_signatures                             PASS (0.68s)
#3107:
#3107: Finished in 0.68459s
#3107: 1 tests, 658 assertions, 0 failures, 0 errors, 0 skips
+ bundle exec ruby lib/factbase/accum.rb /#3118
+ bundle exec ruby lib/factbase/cached/cached_fact.rb /#3129
+ bundle exec ruby lib/factbase/cached/cached_factbase.rb /#3140
+ bundle exec ruby lib/factbase/cached/cached_query.rb /#3151
+ bundle exec ruby lib/factbase/cached/cached_term.rb /#3162
+ bundle exec ruby lib/factbase/churn.rb /#3173
+ bundle exec ruby lib/factbase/fact.rb /#3184
+ bundle exec ruby lib/factbase/fact_as_yaml.rb /#3195
+ bundle exec ruby lib/factbase/flatten.rb /#3206
+ bundle exec ruby lib/factbase/impatient.rb /#3217
+ bundle exec ruby lib/factbase/indexed/indexed_absent.rb /#3228
+ bundle exec ruby lib/factbase/indexed/indexed_and.rb /#3239
+ bundle exec ruby lib/factbase/indexed/indexed_eq.rb /#3250
+ bundle exec ruby lib/factbase/indexed/indexed_exists.rb /#3261
+ bundle exec ruby lib/factbase/indexed/indexed_fact.rb /#3272
+ bundle exec ruby lib/factbase/indexed/indexed_factbase.rb /#3283
+ bundle exec ruby lib/factbase/indexed/indexed_gt.rb /#3294
+ bundle exec ruby lib/factbase/indexed/indexed_gte.rb /#3305
+ bundle exec ruby lib/factbase/indexed/indexed_lt.rb /#3316
+ bundle exec ruby lib/factbase/indexed/indexed_lte.rb /#3327
+ bundle exec ruby lib/factbase/indexed/indexed_not.rb /#3338
+ bundle exec ruby lib/factbase/indexed/indexed_one.rb /#3349
+ bundle exec ruby lib/factbase/indexed/indexed_or.rb /#3360
+ bundle exec ruby lib/factbase/indexed/indexed_query.rb /#3371
+ bundle exec ruby lib/factbase/indexed/indexed_term.rb /#3382
+ bundle exec ruby lib/factbase/indexed/indexed_unique.rb /#3393
+ bundle exec ruby lib/factbase/inv.rb /#3404
+ bundle exec ruby lib/factbase/lazy_taped.rb /#3415
+ bundle exec ruby lib/factbase/lazy_taped_array.rb /#3426
+ bundle exec ruby lib/factbase/lazy_taped_hash.rb /#3437
+ bundle exec ruby lib/factbase/light.rb /#3448
+ bundle exec ruby lib/factbase/logged.rb /#3459
+ bundle exec ruby lib/factbase/pre.rb /#3470
+ bundle exec ruby lib/factbase/query.rb /#3481
+ bundle exec ruby lib/factbase/rules.rb /#3492
+ bundle exec ruby lib/factbase/sync/sync_factbase.rb /#3503
+ bundle exec ruby lib/factbase/sync/sync_query.rb /#3514
+ bundle exec ruby lib/factbase/syntax.rb /#3525
+ bundle exec ruby lib/factbase/tallied.rb /#3536
+ bundle exec ruby lib/factbase/taped.rb /#3547
+ bundle exec ruby lib/factbase/tee.rb /#3558
+ bundle exec ruby lib/factbase/term.rb /#3569
+ bundle exec ruby lib/factbase/terms/absent.rb /#3580
+ bundle exec ruby lib/factbase/terms/agg.rb /#3591
+ bundle exec ruby lib/factbase/terms/always.rb /#3602
+ bundle exec ruby lib/factbase/terms/and.rb /#3613
+ bundle exec ruby lib/factbase/terms/arithmetic.rb /#3624
+ bundle exec ruby lib/factbase/terms/as.rb /#3635
+ bundle exec ruby lib/factbase/terms/assert.rb /#3646
+ bundle exec ruby lib/factbase/terms/base.rb /#3657
+ bundle exec ruby lib/factbase/terms/best.rb /#3668
+ bundle exec ruby lib/factbase/terms/boolean.rb /#3679
+ bundle exec ruby lib/factbase/terms/compare.rb /#3690
+ bundle exec ruby lib/factbase/terms/concat.rb /#3701
+ bundle exec ruby lib/factbase/terms/contains.rb /#3712
+ bundle exec ruby lib/factbase/terms/count.rb /#3723
+ bundle exec ruby lib/factbase/terms/defn.rb /#3734
+ bundle exec ruby lib/factbase/terms/div.rb /#3745
+ bundle exec ruby lib/factbase/terms/either.rb /#3756
+ bundle exec ruby lib/factbase/terms/empty.rb /#3767
+ bundle exec ruby lib/factbase/terms/ends_with.rb /#3778
+ bundle exec ruby lib/factbase/terms/env.rb /#3789
+ bundle exec ruby lib/factbase/terms/eq.rb /#3800
+ bundle exec ruby lib/factbase/terms/exists.rb /#3811
+ bundle exec ruby lib/factbase/terms/first.rb /#3822
+ bundle exec ruby lib/factbase/terms/gt.rb /#3833
+ bundle exec ruby lib/factbase/terms/gte.rb /#3844
+ bundle exec ruby lib/factbase/terms/head.rb /#3855
+ bundle exec ruby lib/factbase/terms/inverted.rb /#3866
+ bundle exec ruby lib/factbase/terms/join.rb /#3877
+ bundle exec ruby lib/factbase/terms/lt.rb /#3888
+ bundle exec ruby lib/factbase/terms/lte.rb /#3899
+ bundle exec ruby lib/factbase/terms/many.rb /#3910
+ bundle exec ruby lib/factbase/terms/matches.rb /#3921
+ bundle exec ruby lib/factbase/terms/max.rb /#3932
+ bundle exec ruby lib/factbase/terms/min.rb /#3943
+ bundle exec ruby lib/factbase/terms/minus.rb /#3954
+ bundle exec ruby lib/factbase/terms/never.rb /#3965
+ bundle exec ruby lib/factbase/terms/nil.rb /#3976
+ bundle exec ruby lib/factbase/terms/not.rb /#3987
+ bundle exec ruby lib/factbase/terms/nth.rb /#3998
+ bundle exec ruby lib/factbase/terms/one.rb /#4009
+ bundle exec ruby lib/factbase/terms/or.rb /#4020
+ bundle exec ruby lib/factbase/terms/plus.rb /#4031
+ bundle exec ruby lib/factbase/terms/prev.rb /#4042
+ bundle exec ruby lib/factbase/terms/simplified.rb /#4053
+ bundle exec ruby lib/factbase/terms/size.rb /#4064
+ bundle exec ruby lib/factbase/terms/sorted.rb /#4075
+ bundle exec ruby lib/factbase/terms/sprintf.rb /#4086
+ bundle exec ruby lib/factbase/terms/starts_with.rb /#4097
+ bundle exec ruby lib/factbase/terms/sum.rb /#4108
+ bundle exec ruby lib/factbase/terms/times.rb /#4119
+ bundle exec ruby lib/factbase/terms/to_float.rb /#4130
+ bundle exec ruby lib/factbase/terms/to_integer.rb /#4141
+ bundle exec ruby lib/factbase/terms/to_string.rb /#4152
+ bundle exec ruby lib/factbase/terms/to_time.rb /#4163
+ bundle exec ruby lib/factbase/terms/traced.rb /#4174
+ bundle exec ruby lib/factbase/terms/type.rb /#4185
+ bundle exec ruby lib/factbase/terms/undef.rb /#4196
+ bundle exec ruby lib/factbase/terms/unique.rb /#4207
+ bundle exec ruby lib/factbase/terms/when.rb /#4218
+ bundle exec ruby lib/factbase/terms/zero.rb /#4229
+ bundle exec ruby lib/factbase/to_json.rb /#4240
+ bundle exec ruby lib/factbase/to_xml.rb /#4251
+ bundle exec ruby lib/factbase/to_yaml.rb /#4262
+ bundle exec ruby lib/factbase/version.rb /#4273
+ bundle exec ruby lib/factbase.rb /#4284
+ bundle exec ruby lib/fuzz.rb /#4295
Running RuboCop...
Inspecting 239 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.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.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.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.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.0m32m.0m32m.0m32m.0m32m.0m32m.0m32m.0m32m.0m32m.0m

239 files inspected, 32mno offenses0m detected
?25h2KFiles:neratingr108/Factbase/IndexedFactbase.html.0mtml0may.html0m
Modules:         2 (    0 undocumented)
Classes:       122 (    0 undocumented)
Constants:      11 (   11 undocumented)
Attributes:      6 (    0 undocumented)
Methods:       375 (  113 undocumented)
 75.97% documented
+ mv /home/r/repo .
++ whoami
+ chown -R root repo
+ '[' -n '' ']'
++ whoami
+ sudo chown -R ubuntu repo
+ cd repo
+ git push origin master
To github.com:yegor256/factbase.git
   ff2195ee..9d2a1d59  master -> master
container 01981f8433566a6d3b6f70717a1d189d6e32ec1bff48a5ab5b2520f6684b7478 is dead
Thu Sep 17 09:19:04 UTC 2026