Warning: Permanently added '2620:52:3:1:dead:beef:cafe:c148' (ED25519) to the list of known hosts. You can reproduce this build on your computer by running: sudo dnf install copr-rpmbuild /usr/bin/copr-rpmbuild --verbose --drop-resultdir --task-url https://copr.fedorainfracloud.org/backend/get-build-task/8443055-fedora-rawhide-x86_64 --chroot fedora-rawhide-x86_64 Version: 1.2 PID: 9527 Logging PID: 9528 Task: {'allow_user_ssh': False, 'appstream': False, 'background': True, 'build_id': 8443055, 'buildroot_pkgs': [], 'chroot': 'fedora-rawhide-x86_64', 'enable_net': False, 'fedora_review': False, 'git_hash': '0de62095bd3d34f13b6b6900b6de51119e41671a', 'git_repo': 'https://copr-dist-git.fedorainfracloud.org/git/vondruch/mpb.30.checker/rubygem-shoulda-matchers', 'isolation': 'default', 'memory_reqs': 2048, 'package_name': 'rubygem-shoulda-matchers', 'package_version': '5.1.0-8', 'project_dirname': 'mpb.30.checker', 'project_name': 'mpb.30.checker', 'project_owner': 'vondruch', 'repo_priority': None, 'repos': [{'baseurl': 'https://download.copr.fedorainfracloud.org/results/vondruch/mpb.30.checker/fedora-rawhide-x86_64/', 'id': 'copr_base', 'name': 'Copr repository', 'priority': None}], 'sandbox': 'vondruch/mpb.30.checker--vondruch', 'source_json': {}, 'source_type': None, 'ssh_public_keys': None, 'storage': 0, 'submitter': 'vondruch', 'tags': [], 'task_id': '8443055-fedora-rawhide-x86_64', 'timeout': 115200, 'uses_devel_repo': False, 'with_opts': [], 'without_opts': []} Running: git clone https://copr-dist-git.fedorainfracloud.org/git/vondruch/mpb.30.checker/rubygem-shoulda-matchers /var/lib/copr-rpmbuild/workspace/workdir-n3owkbq0/rubygem-shoulda-matchers --depth 500 --no-single-branch --recursive cmd: ['git', 'clone', 'https://copr-dist-git.fedorainfracloud.org/git/vondruch/mpb.30.checker/rubygem-shoulda-matchers', '/var/lib/copr-rpmbuild/workspace/workdir-n3owkbq0/rubygem-shoulda-matchers', '--depth', '500', '--no-single-branch', '--recursive'] cwd: . rc: 0 stdout: stderr: Cloning into '/var/lib/copr-rpmbuild/workspace/workdir-n3owkbq0/rubygem-shoulda-matchers'... Running: git checkout 0de62095bd3d34f13b6b6900b6de51119e41671a -- cmd: ['git', 'checkout', '0de62095bd3d34f13b6b6900b6de51119e41671a', '--'] cwd: /var/lib/copr-rpmbuild/workspace/workdir-n3owkbq0/rubygem-shoulda-matchers rc: 0 stdout: stderr: Note: switching to '0de62095bd3d34f13b6b6900b6de51119e41671a'. You are in 'detached HEAD' state. You can look around, make experimental changes and commit them, and you can discard any commits you make in this state without impacting any branches by switching back to a branch. If you want to create a new branch to retain commits you create, you may do so (now or later) by using -c with the switch command. Example: git switch -c Or undo this operation with: git switch - Turn off this advice by setting config variable advice.detachedHead to false HEAD is now at 0de6209 automatic import of rubygem-shoulda-matchers Running: dist-git-client sources 100 91934 100 91934 0 0 1904k 0 --:--:-- --:--:-- --:--:-- 1910k INFO: Reading stdout from command: md5sum shoulda-matchers-5.1.0-specs.tar.gz INFO: Downloading shoulda-matchers-5.1.0.gem /usr/bin/tail: /var/lib/copr-rpmbuild/main.log: file truncated INFO: Calling: curl -H Pragma: -o shoulda-matchers-5.1.0.gem --location --connect-timeout 60 --retry 3 --retry-delay 10 --remote-time --show-error --fail --retry-all-errors https://copr-dist-git.fedorainfracloud.org/repo/pkgs/vondruch/mpb.30.checker/rubygem-shoulda-matchers/shoulda-matchers-5.1.0.gem/md5/98ff5bf5c47b94c5300c68764eb02e9a/shoulda-matchers-5.1.0.gem % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 100 80384 100 80384 0 0 1718k 0 --:--:-- --:--:-- --:--:-- 1706k INFO: Reading stdout from command: md5sum shoulda-matchers-5.1.0.gem Running (timeout=115200): unbuffer mock --spec /var/lib/copr-rpmbuild/workspace/workdir-n3owkbq0/rubygem-shoulda-matchers/rubygem-shoulda-matchers.spec --sources /var/lib/copr-rpmbuild/workspace/workdir-n3owkbq0/rubygem-shoulda-matchers --resultdir /var/lib/copr-rpmbuild/results --uniqueext 1735002660.028497 -r /var/lib/copr-rpmbuild/results/configs/child.cfg INFO: mock.py version 6.0 starting (python version = 3.13.0, NVR = mock-6.0-1.fc41), args: /usr/libexec/mock/mock --spec /var/lib/copr-rpmbuild/workspace/workdir-n3owkbq0/rubygem-shoulda-matchers/rubygem-shoulda-matchers.spec --sources /var/lib/copr-rpmbuild/workspace/workdir-n3owkbq0/rubygem-shoulda-matchers --resultdir /var/lib/copr-rpmbuild/results --uniqueext 1735002660.028497 -r /var/lib/copr-rpmbuild/results/configs/child.cfg Start(bootstrap): init plugins INFO: tmpfs initialized INFO: selinux enabled INFO: chroot_scan: initialized INFO: compress_logs: initialized Finish(bootstrap): init plugins Start: init plugins INFO: tmpfs initialized INFO: selinux enabled INFO: chroot_scan: initialized INFO: compress_logs: initialized Finish: init plugins INFO: Signal handler active Start: run INFO: Start(/var/lib/copr-rpmbuild/workspace/workdir-n3owkbq0/rubygem-shoulda-matchers/rubygem-shoulda-matchers.spec) Config(fedora-rawhide-x86_64) Start: clean chroot Finish: clean chroot Mock Version: 6.0 INFO: Mock Version: 6.0 Start(bootstrap): chroot init INFO: mounting tmpfs at /var/lib/mock/fedora-rawhide-x86_64-bootstrap-1735002660.028497/root. INFO: calling preinit hooks INFO: enabled root cache INFO: enabled package manager cache Start(bootstrap): cleaning package manager metadata Finish(bootstrap): cleaning package manager metadata INFO: Guessed host environment type: unknown INFO: Using container image: registry.fedoraproject.org/fedora:rawhide INFO: Pulling image: registry.fedoraproject.org/fedora:rawhide INFO: Tagging container image as mock-bootstrap-582a31c0-c53e-4d67-ad61-8e6716f0fdc7 INFO: Checking that 3ee2b4292c98201ba2a0d5c79ac88fbb7c0450a6b17cb5f7f3c53f349c5f3b59 image matches host's architecture INFO: Copy content of container 3ee2b4292c98201ba2a0d5c79ac88fbb7c0450a6b17cb5f7f3c53f349c5f3b59 to /var/lib/mock/fedora-rawhide-x86_64-bootstrap-1735002660.028497/root INFO: mounting 3ee2b4292c98201ba2a0d5c79ac88fbb7c0450a6b17cb5f7f3c53f349c5f3b59 with podman image mount INFO: image 3ee2b4292c98201ba2a0d5c79ac88fbb7c0450a6b17cb5f7f3c53f349c5f3b59 as /var/lib/containers/storage/overlay/b14f71189f44dbc33f127c698ebe235fedb871063576ba22962412f77abab7ac/merged INFO: umounting image 3ee2b4292c98201ba2a0d5c79ac88fbb7c0450a6b17cb5f7f3c53f349c5f3b59 (/var/lib/containers/storage/overlay/b14f71189f44dbc33f127c698ebe235fedb871063576ba22962412f77abab7ac/merged) with podman image umount INFO: Removing image mock-bootstrap-582a31c0-c53e-4d67-ad61-8e6716f0fdc7 INFO: Package manager dnf5 detected and used (fallback) INFO: Not updating bootstrap chroot, bootstrap_image_ready=True Start(bootstrap): creating root cache Finish(bootstrap): creating root cache Finish(bootstrap): chroot init Start: chroot init INFO: mounting tmpfs at /var/lib/mock/fedora-rawhide-x86_64-1735002660.028497/root. INFO: calling preinit hooks INFO: enabled root cache INFO: enabled package manager cache Start: cleaning package manager metadata Finish: cleaning package manager metadata INFO: enabled HW Info plugin INFO: Package manager dnf5 detected and used (direct choice) INFO: Buildroot is handled by package management downloaded with a bootstrap image: rpm-4.20.0-1.fc42.x86_64 rpm-sequoia-1.7.0-3.fc42.x86_64 dnf5-5.2.8.1-2.fc42.x86_64 dnf5-plugins-5.2.8.1-2.fc42.x86_64 Start: installing minimal buildroot with dnf5 Updating and loading repositories: fedora 100% | 13.6 MiB/s | 21.9 MiB | 00m02s Copr repository 100% | 122.8 KiB/s | 7.7 KiB | 00m00s Repositories loaded. Package Arch Version Repository Size Installing group/module packages: bash x86_64 5.2.37-1.fc42 fedora 8.2 MiB bzip2 x86_64 1.0.8-19.fc41 fedora 95.7 KiB coreutils x86_64 9.5-11.fc42 fedora 5.4 MiB cpio x86_64 2.15-2.fc41 fedora 1.1 MiB diffutils x86_64 3.10-8.fc41 fedora 1.6 MiB fedora-release-common noarch 42-0.11 fedora 19.8 KiB findutils x86_64 1:4.10.0-4.fc41 fedora 1.8 MiB gawk x86_64 5.3.0-4.fc41 fedora 1.7 MiB glibc-minimal-langpack x86_64 2.40.9000-24.fc42 fedora 0.0 B grep x86_64 3.11-9.fc41 fedora 1.0 MiB gzip x86_64 1.13-2.fc41 fedora 389.0 KiB info x86_64 7.1.1-2.fc42 fedora 361.8 KiB patch x86_64 2.7.6-25.fc41 fedora 266.7 KiB redhat-rpm-config noarch 296-1.fc42 fedora 186.6 KiB rpm-build x86_64 4.20.0-1.fc42 fedora 194.3 KiB sed x86_64 4.9-3.fc41 fedora 861.5 KiB shadow-utils x86_64 2:4.17.0~rc1-2.fc42 fedora 4.0 MiB tar x86_64 2:1.35-4.fc41 fedora 2.9 MiB unzip x86_64 6.0-65.fc42 fedora 398.2 KiB util-linux x86_64 2.40.2-8.fc42 fedora 3.7 MiB which x86_64 2.21-42.fc41 fedora 80.2 KiB xz x86_64 1:5.6.3-2.fc42 fedora 1.2 MiB Installing dependencies: add-determinism x86_64 0.5.0-1.fc42 fedora 2.4 MiB alternatives x86_64 1.31-1.fc42 fedora 64.8 KiB ansible-srpm-macros noarch 1-16.fc41 fedora 35.7 KiB audit-libs x86_64 4.0.2-1.fc41 fedora 331.3 KiB authselect x86_64 1.5.0-8.fc42 fedora 157.5 KiB authselect-libs x86_64 1.5.0-8.fc42 fedora 822.2 KiB basesystem noarch 11-21.fc41 fedora 0.0 B binutils x86_64 2.43.50-9.fc42 fedora 25.8 MiB build-reproducibility-srpm-macros noarch 0.5.0-1.fc42 fedora 735.0 B bzip2-libs x86_64 1.0.8-19.fc41 fedora 80.7 KiB ca-certificates noarch 2024.2.69_v8.0.401-3.fc42 fedora 2.6 MiB coreutils-common x86_64 9.5-11.fc42 fedora 11.2 MiB cracklib x86_64 2.9.11-6.fc41 fedora 238.9 KiB crypto-policies noarch 20241128-1.gitbb7b0b0.fc42 fedora 137.3 KiB curl x86_64 8.11.1-2.fc42 fedora 452.0 KiB cyrus-sasl-lib x86_64 2.1.28-27.fc41 fedora 2.3 MiB debugedit x86_64 5.1-2.fc42 fedora 200.3 KiB dwz x86_64 0.15-8.fc42 fedora 299.2 KiB ed x86_64 1.20.2-2.fc41 fedora 146.9 KiB efi-srpm-macros noarch 5-13.fc42 fedora 40.2 KiB elfutils x86_64 0.192-7.fc42 fedora 2.6 MiB elfutils-debuginfod-client x86_64 0.192-7.fc42 fedora 81.4 KiB elfutils-default-yama-scope noarch 0.192-7.fc42 fedora 1.8 KiB elfutils-libelf x86_64 0.192-7.fc42 fedora 1.2 MiB elfutils-libs x86_64 0.192-7.fc42 fedora 662.9 KiB fedora-gpg-keys noarch 42-0.3 fedora 126.4 KiB fedora-release noarch 42-0.11 fedora 0.0 B fedora-release-identity-basic noarch 42-0.11 fedora 719.0 B fedora-repos noarch 42-0.3 fedora 4.9 KiB fedora-repos-rawhide noarch 42-0.3 fedora 2.2 KiB file x86_64 5.45-8.fc42 fedora 103.7 KiB file-libs x86_64 5.45-8.fc42 fedora 9.9 MiB filesystem x86_64 3.18-29.fc42 fedora 106.0 B fonts-srpm-macros noarch 1:2.0.5-17.fc41 fedora 55.8 KiB forge-srpm-macros noarch 0.4.0-1.fc42 fedora 38.9 KiB fpc-srpm-macros noarch 1.3-13.fc41 fedora 144.0 B gdb-minimal x86_64 15.2-4.fc42 fedora 12.7 MiB gdbm x86_64 1:1.23-7.fc41 fedora 460.9 KiB gdbm-libs x86_64 1:1.23-7.fc41 fedora 121.9 KiB ghc-srpm-macros noarch 1.9.2-1.fc42 fedora 779.0 B glibc x86_64 2.40.9000-24.fc42 fedora 6.7 MiB glibc-common x86_64 2.40.9000-24.fc42 fedora 1.0 MiB glibc-gconv-extra x86_64 2.40.9000-24.fc42 fedora 8.0 MiB gmp x86_64 1:6.3.0-2.fc41 fedora 811.4 KiB gnat-srpm-macros noarch 6-6.fc41 fedora 1.0 KiB go-srpm-macros noarch 3.6.0-5.fc42 fedora 60.8 KiB jansson x86_64 2.14-1.fc42 fedora 93.1 KiB json-c x86_64 0.18-1.fc42 fedora 83.3 KiB kernel-srpm-macros noarch 1.0-24.fc41 fedora 1.9 KiB keyutils-libs x86_64 1.6.3-4.fc41 fedora 54.4 KiB krb5-libs x86_64 1.21.3-3.fc42 fedora 2.3 MiB libacl x86_64 2.3.2-2.fc41 fedora 40.0 KiB libarchive x86_64 3.7.7-1.fc42 fedora 932.3 KiB libattr x86_64 2.5.2-4.fc41 fedora 28.5 KiB libblkid x86_64 2.40.2-8.fc42 fedora 262.5 KiB libbrotli x86_64 1.1.0-5.fc41 fedora 837.6 KiB libcap x86_64 2.71-1.fc42 fedora 210.8 KiB libcap-ng x86_64 0.8.5-3.fc41 fedora 69.2 KiB libcom_err x86_64 1.47.1-6.fc42 fedora 67.2 KiB libcurl x86_64 8.11.1-2.fc42 fedora 817.3 KiB libeconf x86_64 0.7.5-1.fc42 fedora 66.7 KiB libevent x86_64 2.1.12-14.fc41 fedora 895.7 KiB libfdisk x86_64 2.40.2-8.fc42 fedora 362.9 KiB libffi x86_64 3.4.6-3.fc42 fedora 86.4 KiB libgcc x86_64 14.2.1-6.fc42 fedora 270.6 KiB libgomp x86_64 14.2.1-6.fc42 fedora 519.8 KiB libidn2 x86_64 2.3.7-2.fc41 fedora 329.1 KiB libmount x86_64 2.40.2-8.fc42 fedora 355.8 KiB libnghttp2 x86_64 1.64.0-1.fc42 fedora 174.5 KiB libnsl2 x86_64 2.0.1-2.fc41 fedora 57.9 KiB libpkgconf x86_64 2.3.0-1.fc42 fedora 78.2 KiB libpsl x86_64 0.21.5-4.fc41 fedora 80.5 KiB libpwquality x86_64 1.4.5-11.fc41 fedora 417.8 KiB libselinux x86_64 3.8-0.rc3.1.fc42 fedora 191.6 KiB libsemanage x86_64 3.8-0.rc3.1.fc42 fedora 305.3 KiB libsepol x86_64 3.8-0.rc3.1.fc42 fedora 812.3 KiB libsmartcols x86_64 2.40.2-8.fc42 fedora 180.4 KiB libssh x86_64 0.11.1-1.fc42 fedora 569.6 KiB libssh-config noarch 0.11.1-1.fc42 fedora 277.0 B libstdc++ x86_64 14.2.1-6.fc42 fedora 2.8 MiB libtasn1 x86_64 4.19.0-9.fc41 fedora 175.7 KiB libtirpc x86_64 1.3.6-1.fc42 fedora 205.5 KiB libtool-ltdl x86_64 2.5.4-1.fc42 fedora 68.1 KiB libunistring x86_64 1.1-8.fc41 fedora 1.7 MiB libuuid x86_64 2.40.2-8.fc42 fedora 41.4 KiB libverto x86_64 0.3.2-9.fc41 fedora 29.5 KiB libxcrypt x86_64 4.4.36-12.fc42 fedora 269.3 KiB libxml2 x86_64 2.12.8-2.fc41 fedora 1.7 MiB libzstd x86_64 1.5.6-2.fc41 fedora 795.9 KiB lua-libs x86_64 5.4.7-1.fc42 fedora 285.0 KiB lua-srpm-macros noarch 1-14.fc41 fedora 1.3 KiB lz4-libs x86_64 1.10.0-1.fc41 fedora 145.5 KiB mpfr x86_64 4.2.1-5.fc41 fedora 832.1 KiB ncurses-base noarch 6.5-2.20240629.fc41 fedora 326.3 KiB ncurses-libs x86_64 6.5-2.20240629.fc41 fedora 975.2 KiB ocaml-srpm-macros noarch 10-3.fc41 fedora 1.9 KiB openblas-srpm-macros noarch 2-18.fc41 fedora 112.0 B openldap x86_64 2.6.8-6.fc42 fedora 647.4 KiB openssl-libs x86_64 1:3.2.2-8.fc42 fedora 7.8 MiB p11-kit x86_64 0.25.5-4.fc42 fedora 2.2 MiB p11-kit-trust x86_64 0.25.5-4.fc42 fedora 403.8 KiB package-notes-srpm-macros noarch 0.5-12.fc41 fedora 1.6 KiB pam x86_64 1.7.0-3.fc42 fedora 1.8 MiB pam-libs x86_64 1.7.0-3.fc42 fedora 139.4 KiB pcre2 x86_64 10.44-1.fc41.1 fedora 653.5 KiB pcre2-syntax noarch 10.44-1.fc41.1 fedora 251.6 KiB perl-srpm-macros noarch 1-56.fc41 fedora 861.0 B pkgconf x86_64 2.3.0-1.fc42 fedora 88.6 KiB pkgconf-m4 noarch 2.3.0-1.fc42 fedora 14.4 KiB pkgconf-pkg-config x86_64 2.3.0-1.fc42 fedora 989.0 B popt x86_64 1.19-7.fc41 fedora 136.9 KiB publicsuffix-list-dafsa noarch 20240107-4.fc41 fedora 67.5 KiB pyproject-srpm-macros noarch 1.16.3-1.fc42 fedora 1.9 KiB python-srpm-macros noarch 3.13-3.fc41 fedora 51.0 KiB qt5-srpm-macros noarch 5.15.15-1.fc42 fedora 500.0 B qt6-srpm-macros noarch 6.8.1-4.fc42 fedora 456.0 B readline x86_64 8.2-11.fc42 fedora 493.1 KiB rpm x86_64 4.20.0-1.fc42 fedora 3.1 MiB rpm-build-libs x86_64 4.20.0-1.fc42 fedora 206.7 KiB rpm-libs x86_64 4.20.0-1.fc42 fedora 726.1 KiB rpm-sequoia x86_64 1.7.0-3.fc42 fedora 2.3 MiB rust-srpm-macros noarch 26.3-3.fc42 fedora 4.8 KiB setup noarch 2.15.0-5.fc41 fedora 720.7 KiB sqlite-libs x86_64 3.47.2-1.fc42 fedora 1.4 MiB systemd-libs x86_64 257.1-1.fc42 fedora 2.2 MiB util-linux-core x86_64 2.40.2-8.fc42 fedora 1.5 MiB xxhash-libs x86_64 0.8.2-4.fc42 fedora 88.4 KiB xz-libs x86_64 1:5.6.3-2.fc42 fedora 218.4 KiB zig-srpm-macros noarch 1-3.fc41 fedora 1.1 KiB zip x86_64 3.0-42.fc42 fedora 695.9 KiB zlib-ng-compat x86_64 2.2.2-1.fc42 fedora 134.0 KiB zstd x86_64 1.5.6-2.fc41 fedora 1.7 MiB Installing groups: Buildsystem building group Transaction Summary: Installing: 154 packages Total size of inbound packages is 52 MiB. Need to download 52 MiB. After this operation, 178 MiB extra will be used (install 178 MiB, remove 0 B). [ 1/154] bzip2-0:1.0.8-19.fc41.x86_64 100% | 640.5 KiB/s | 52.5 KiB | 00m00s [ 2/154] cpio-0:2.15-2.fc41.x86_64 100% | 4.5 MiB/s | 291.8 KiB | 00m00s [ 3/154] diffutils-0:3.10-8.fc41.x86_6 100% | 11.0 MiB/s | 405.4 KiB | 00m00s [ 4/154] fedora-release-common-0:42-0. 100% | 1.4 MiB/s | 23.9 KiB | 00m00s [ 5/154] coreutils-0:9.5-11.fc42.x86_6 100% | 5.3 MiB/s | 1.1 MiB | 00m00s [ 6/154] glibc-minimal-langpack-0:2.40 100% | 5.0 MiB/s | 122.0 KiB | 00m00s [ 7/154] findutils-1:4.10.0-4.fc41.x86 100% | 15.3 MiB/s | 548.6 KiB | 00m00s [ 8/154] gzip-0:1.13-2.fc41.x86_64 100% | 8.7 MiB/s | 170.2 KiB | 00m00s [ 9/154] bash-0:5.2.37-1.fc42.x86_64 100% | 6.8 MiB/s | 1.8 MiB | 00m00s [ 10/154] grep-0:3.11-9.fc41.x86_64 100% | 8.1 MiB/s | 299.8 KiB | 00m00s [ 11/154] info-0:7.1.1-2.fc42.x86_64 100% | 9.4 MiB/s | 183.2 KiB | 00m00s [ 12/154] redhat-rpm-config-0:296-1.fc4 100% | 4.5 MiB/s | 82.4 KiB | 00m00s [ 13/154] patch-0:2.7.6-25.fc41.x86_64 100% | 5.1 MiB/s | 131.0 KiB | 00m00s [ 14/154] rpm-build-0:4.20.0-1.fc42.x86 100% | 4.5 MiB/s | 82.7 KiB | 00m00s [ 15/154] sed-0:4.9-3.fc41.x86_64 100% | 8.9 MiB/s | 317.7 KiB | 00m00s [ 16/154] tar-2:1.35-4.fc41.x86_64 100% | 22.1 MiB/s | 860.7 KiB | 00m00s [ 17/154] unzip-0:6.0-65.fc42.x86_64 100% | 9.5 MiB/s | 184.5 KiB | 00m00s [ 18/154] which-0:2.21-42.fc41.x86_64 100% | 2.4 MiB/s | 41.6 KiB | 00m00s [ 19/154] xz-1:5.6.3-2.fc42.x86_64 100% | 12.5 MiB/s | 475.4 KiB | 00m00s [ 20/154] shadow-utils-2:4.17.0~rc1-2.f 100% | 12.0 MiB/s | 1.3 MiB | 00m00s [ 21/154] gawk-0:5.3.0-4.fc41.x86_64 100% | 19.8 MiB/s | 1.1 MiB | 00m00s [ 22/154] util-linux-0:2.40.2-8.fc42.x8 100% | 12.6 MiB/s | 1.2 MiB | 00m00s [ 23/154] filesystem-0:3.18-29.fc42.x86 100% | 12.2 MiB/s | 1.1 MiB | 00m00s [ 24/154] glibc-0:2.40.9000-24.fc42.x86 100% | 24.1 MiB/s | 2.2 MiB | 00m00s [ 25/154] bzip2-libs-0:1.0.8-19.fc41.x8 100% | 2.4 MiB/s | 41.1 KiB | 00m00s [ 26/154] ncurses-libs-0:6.5-2.20240629 100% | 9.3 MiB/s | 334.0 KiB | 00m00s [ 27/154] libacl-0:2.3.2-2.fc41.x86_64 100% | 1.4 MiB/s | 24.5 KiB | 00m00s [ 28/154] gmp-1:6.3.0-2.fc41.x86_64 100% | 8.9 MiB/s | 318.0 KiB | 00m00s [ 29/154] libattr-0:2.5.2-4.fc41.x86_64 100% | 1.0 MiB/s | 18.2 KiB | 00m00s [ 30/154] libcap-0:2.71-1.fc42.x86_64 100% | 4.7 MiB/s | 86.4 KiB | 00m00s [ 31/154] libselinux-0:3.8-0.rc3.1.fc42 100% | 4.9 MiB/s | 91.2 KiB | 00m00s [ 32/154] coreutils-common-0:9.5-11.fc4 100% | 23.6 MiB/s | 2.1 MiB | 00m00s [ 33/154] fedora-repos-0:42-0.3.noarch 100% | 540.7 KiB/s | 9.2 KiB | 00m00s [ 34/154] glibc-common-0:2.40.9000-24.f 100% | 18.4 MiB/s | 396.0 KiB | 00m00s [ 35/154] systemd-libs-0:257.1-1.fc42.x 100% | 10.9 MiB/s | 770.4 KiB | 00m00s [ 36/154] pcre2-0:10.44-1.fc41.1.x86_64 100% | 11.9 MiB/s | 243.1 KiB | 00m00s [ 37/154] ed-0:1.20.2-2.fc41.x86_64 100% | 4.4 MiB/s | 81.8 KiB | 00m00s [ 38/154] ansible-srpm-macros-0:1-16.fc 100% | 1.1 MiB/s | 20.8 KiB | 00m00s [ 39/154] build-reproducibility-srpm-ma 100% | 674.9 KiB/s | 11.5 KiB | 00m00s [ 40/154] dwz-0:0.15-8.fc42.x86_64 100% | 7.1 MiB/s | 139.1 KiB | 00m00s [ 41/154] efi-srpm-macros-0:5-13.fc42.n 100% | 1.2 MiB/s | 22.5 KiB | 00m00s [ 42/154] file-0:5.45-8.fc42.x86_64 100% | 2.6 MiB/s | 48.6 KiB | 00m00s [ 43/154] fonts-srpm-macros-1:2.0.5-17. 100% | 1.5 MiB/s | 27.0 KiB | 00m00s [ 44/154] openssl-libs-1:3.2.2-8.fc42.x 100% | 14.3 MiB/s | 2.3 MiB | 00m00s [ 45/154] forge-srpm-macros-0:0.4.0-1.f 100% | 1.1 MiB/s | 19.8 KiB | 00m00s [ 46/154] fpc-srpm-macros-0:1.3-13.fc41 100% | 468.3 KiB/s | 8.0 KiB | 00m00s [ 47/154] ghc-srpm-macros-0:1.9.2-1.fc4 100% | 536.3 KiB/s | 9.1 KiB | 00m00s [ 48/154] gnat-srpm-macros-0:6-6.fc41.n 100% | 526.6 KiB/s | 9.0 KiB | 00m00s [ 49/154] go-srpm-macros-0:3.6.0-5.fc42 100% | 1.6 MiB/s | 28.0 KiB | 00m00s [ 50/154] kernel-srpm-macros-0:1.0-24.f 100% | 580.5 KiB/s | 9.9 KiB | 00m00s [ 51/154] lua-srpm-macros-0:1-14.fc41.n 100% | 522.3 KiB/s | 8.9 KiB | 00m00s [ 52/154] ocaml-srpm-macros-0:10-3.fc41 100% | 541.1 KiB/s | 9.2 KiB | 00m00s [ 53/154] openblas-srpm-macros-0:2-18.f 100% | 453.8 KiB/s | 7.7 KiB | 00m00s [ 54/154] package-notes-srpm-macros-0:0 100% | 578.2 KiB/s | 9.8 KiB | 00m00s [ 55/154] perl-srpm-macros-0:1-56.fc41. 100% | 500.7 KiB/s | 8.5 KiB | 00m00s [ 56/154] pyproject-srpm-macros-0:1.16. 100% | 815.7 KiB/s | 13.9 KiB | 00m00s [ 57/154] python-srpm-macros-0:3.13-3.f 100% | 1.4 MiB/s | 23.7 KiB | 00m00s [ 58/154] qt5-srpm-macros-0:5.15.15-1.f 100% | 523.4 KiB/s | 8.9 KiB | 00m00s [ 59/154] qt6-srpm-macros-0:6.8.1-4.fc4 100% | 545.2 KiB/s | 9.3 KiB | 00m00s [ 60/154] rust-srpm-macros-0:26.3-3.fc4 100% | 672.2 KiB/s | 12.1 KiB | 00m00s [ 61/154] zig-srpm-macros-0:1-3.fc41.no 100% | 477.8 KiB/s | 8.1 KiB | 00m00s [ 62/154] rpm-0:4.20.0-1.fc42.x86_64 100% | 15.3 MiB/s | 547.3 KiB | 00m00s [ 63/154] debugedit-0:5.1-2.fc42.x86_64 100% | 4.2 MiB/s | 78.2 KiB | 00m00s [ 64/154] zip-0:3.0-42.fc42.x86_64 100% | 6.8 MiB/s | 256.7 KiB | 00m00s [ 65/154] elfutils-0:0.192-7.fc42.x86_6 100% | 14.1 MiB/s | 504.7 KiB | 00m00s [ 66/154] elfutils-libelf-0:0.192-7.fc4 100% | 10.5 MiB/s | 204.6 KiB | 00m00s [ 67/154] popt-0:1.19-7.fc41.x86_64 100% | 3.2 MiB/s | 65.9 KiB | 00m00s [ 68/154] readline-0:8.2-11.fc42.x86_64 100% | 10.4 MiB/s | 213.4 KiB | 00m00s [ 69/154] libarchive-0:3.7.7-1.fc42.x86 100% | 10.6 MiB/s | 413.9 KiB | 00m00s [ 70/154] rpm-build-libs-0:4.20.0-1.fc4 100% | 5.4 MiB/s | 98.7 KiB | 00m00s [ 71/154] audit-libs-0:4.0.2-1.fc41.x86 100% | 6.8 MiB/s | 126.2 KiB | 00m00s [ 72/154] rpm-libs-0:4.20.0-1.fc42.x86_ 100% | 8.6 MiB/s | 309.5 KiB | 00m00s [ 73/154] zstd-0:1.5.6-2.fc41.x86_64 100% | 12.4 MiB/s | 481.5 KiB | 00m00s [ 74/154] libeconf-0:0.7.5-1.fc42.x86_6 100% | 1.9 MiB/s | 33.1 KiB | 00m00s [ 75/154] libsemanage-0:3.8-0.rc3.1.fc4 100% | 6.3 MiB/s | 116.1 KiB | 00m00s [ 76/154] libxcrypt-0:4.4.36-12.fc42.x8 100% | 6.3 MiB/s | 115.8 KiB | 00m00s [ 77/154] pam-libs-0:1.7.0-3.fc42.x86_6 100% | 3.1 MiB/s | 58.0 KiB | 00m00s [ 78/154] setup-0:2.15.0-5.fc41.noarch 100% | 8.4 MiB/s | 154.4 KiB | 00m00s [ 79/154] xz-libs-1:5.6.3-2.fc42.x86_64 100% | 6.1 MiB/s | 111.9 KiB | 00m00s [ 80/154] libblkid-0:2.40.2-8.fc42.x86_ 100% | 6.4 MiB/s | 125.0 KiB | 00m00s [ 81/154] libcap-ng-0:0.8.5-3.fc41.x86_ 100% | 1.9 MiB/s | 32.6 KiB | 00m00s [ 82/154] mpfr-0:4.2.1-5.fc41.x86_64 100% | 9.7 MiB/s | 346.3 KiB | 00m00s [ 83/154] libfdisk-0:2.40.2-8.fc42.x86_ 100% | 8.7 MiB/s | 159.6 KiB | 00m00s [ 84/154] libmount-0:2.40.2-8.fc42.x86_ 100% | 8.5 MiB/s | 156.1 KiB | 00m00s [ 85/154] libsmartcols-0:2.40.2-8.fc42. 100% | 4.6 MiB/s | 83.9 KiB | 00m00s [ 86/154] libuuid-0:2.40.2-8.fc42.x86_6 100% | 1.7 MiB/s | 29.0 KiB | 00m00s [ 87/154] zlib-ng-compat-0:2.2.2-1.fc42 100% | 4.2 MiB/s | 76.9 KiB | 00m00s [ 88/154] basesystem-0:11-21.fc41.noarc 100% | 433.7 KiB/s | 7.4 KiB | 00m00s [ 89/154] util-linux-core-0:2.40.2-8.fc 100% | 9.4 MiB/s | 537.3 KiB | 00m00s [ 90/154] libgcc-0:14.2.1-6.fc42.x86_64 100% | 7.3 MiB/s | 135.2 KiB | 00m00s [ 91/154] ncurses-base-0:6.5-2.20240629 100% | 4.8 MiB/s | 88.4 KiB | 00m00s [ 92/154] glibc-gconv-extra-0:2.40.9000 100% | 21.0 MiB/s | 1.5 MiB | 00m00s [ 93/154] libsepol-0:3.8-0.rc3.1.fc42.x 100% | 9.3 MiB/s | 332.6 KiB | 00m00s [ 94/154] crypto-policies-0:20241128-1. 100% | 5.3 MiB/s | 98.4 KiB | 00m00s [ 95/154] fedora-gpg-keys-0:42-0.3.noar 100% | 7.2 MiB/s | 133.6 KiB | 00m00s [ 96/154] fedora-repos-rawhide-0:42-0.3 100% | 515.5 KiB/s | 8.8 KiB | 00m00s [ 97/154] pcre2-syntax-0:10.44-1.fc41.1 100% | 8.1 MiB/s | 149.9 KiB | 00m00s [ 98/154] ca-certificates-0:2024.2.69_v 100% | 12.6 MiB/s | 944.5 KiB | 00m00s [ 99/154] add-determinism-0:0.5.0-1.fc4 100% | 21.3 MiB/s | 848.7 KiB | 00m00s [100/154] curl-0:8.11.1-2.fc42.x86_64 100% | 11.3 MiB/s | 220.2 KiB | 00m00s [101/154] elfutils-libs-0:0.192-7.fc42. 100% | 12.9 MiB/s | 251.9 KiB | 00m00s [102/154] elfutils-debuginfod-client-0: 100% | 2.5 MiB/s | 43.9 KiB | 00m00s [103/154] file-libs-0:5.45-8.fc42.x86_6 100% | 13.8 MiB/s | 763.6 KiB | 00m00s [104/154] libstdc++-0:14.2.1-6.fc42.x86 100% | 22.3 MiB/s | 890.1 KiB | 00m00s [105/154] libzstd-0:1.5.6-2.fc41.x86_64 100% | 8.2 MiB/s | 310.3 KiB | 00m00s [106/154] lz4-libs-0:1.10.0-1.fc41.x86_ 100% | 3.8 MiB/s | 70.7 KiB | 00m00s [107/154] libxml2-0:2.12.8-2.fc41.x86_6 100% | 12.7 MiB/s | 687.3 KiB | 00m00s [108/154] lua-libs-0:5.4.7-1.fc42.x86_6 100% | 7.2 MiB/s | 132.1 KiB | 00m00s [109/154] libgomp-0:14.2.1-6.fc42.x86_6 100% | 9.7 MiB/s | 356.9 KiB | 00m00s [110/154] elfutils-default-yama-scope-0 100% | 623.2 KiB/s | 12.5 KiB | 00m00s [111/154] sqlite-libs-0:3.47.2-1.fc42.x 100% | 18.5 MiB/s | 699.8 KiB | 00m00s [112/154] json-c-0:0.18-1.fc42.x86_64 100% | 2.6 MiB/s | 44.4 KiB | 00m00s [113/154] rpm-sequoia-0:1.7.0-3.fc42.x8 100% | 14.7 MiB/s | 826.0 KiB | 00m00s [114/154] authselect-libs-0:1.5.0-8.fc4 100% | 11.2 MiB/s | 218.0 KiB | 00m00s [115/154] authselect-0:1.5.0-8.fc42.x86 100% | 7.9 MiB/s | 145.8 KiB | 00m00s [116/154] gdbm-libs-1:1.23-7.fc41.x86_6 100% | 3.1 MiB/s | 56.3 KiB | 00m00s [117/154] libnsl2-0:2.0.1-2.fc41.x86_64 100% | 1.7 MiB/s | 29.6 KiB | 00m00s [118/154] pam-0:1.7.0-3.fc42.x86_64 100% | 10.4 MiB/s | 554.3 KiB | 00m00s [119/154] libpwquality-0:1.4.5-11.fc41. 100% | 6.5 MiB/s | 119.1 KiB | 00m00s [120/154] libtirpc-0:1.3.6-1.fc42.x86_6 100% | 5.1 MiB/s | 94.9 KiB | 00m00s [121/154] cracklib-0:2.9.11-6.fc41.x86_ 100% | 5.0 MiB/s | 92.0 KiB | 00m00s [122/154] libcom_err-0:1.47.1-6.fc42.x8 100% | 1.5 MiB/s | 26.6 KiB | 00m00s [123/154] keyutils-libs-0:1.6.3-4.fc41. 100% | 1.8 MiB/s | 31.6 KiB | 00m00s [124/154] krb5-libs-0:1.21.3-3.fc42.x86 100% | 20.1 MiB/s | 760.4 KiB | 00m00s [125/154] libverto-0:0.3.2-9.fc41.x86_6 100% | 1.2 MiB/s | 20.7 KiB | 00m00s [126/154] alternatives-0:1.31-1.fc42.x8 100% | 2.3 MiB/s | 39.4 KiB | 00m00s [127/154] jansson-0:2.14-1.fc42.x86_64 100% | 2.6 MiB/s | 45.3 KiB | 00m00s [128/154] pkgconf-pkg-config-0:2.3.0-1. 100% | 588.9 KiB/s | 10.0 KiB | 00m00s [129/154] pkgconf-0:2.3.0-1.fc42.x86_64 100% | 2.6 MiB/s | 45.2 KiB | 00m00s [130/154] pkgconf-m4-0:2.3.0-1.fc42.noa 100% | 842.4 KiB/s | 14.3 KiB | 00m00s [131/154] libpkgconf-0:2.3.0-1.fc42.x86 100% | 2.2 MiB/s | 38.5 KiB | 00m00s [132/154] gdbm-1:1.23-7.fc41.x86_64 100% | 8.2 MiB/s | 151.8 KiB | 00m00s [133/154] libffi-0:3.4.6-3.fc42.x86_64 100% | 2.3 MiB/s | 40.0 KiB | 00m00s [134/154] p11-kit-0:0.25.5-4.fc42.x86_6 100% | 21.8 MiB/s | 492.0 KiB | 00m00s [135/154] libtasn1-0:4.19.0-9.fc41.x86_ 100% | 3.5 MiB/s | 74.2 KiB | 00m00s [136/154] p11-kit-trust-0:0.25.5-4.fc42 100% | 7.2 MiB/s | 133.2 KiB | 00m00s [137/154] fedora-release-0:42-0.11.noar 100% | 721.2 KiB/s | 13.0 KiB | 00m00s [138/154] xxhash-libs-0:0.8.2-4.fc42.x8 100% | 2.0 MiB/s | 36.8 KiB | 00m00s [139/154] fedora-release-identity-basic 100% | 765.9 KiB/s | 13.8 KiB | 00m00s [140/154] libcurl-0:8.11.1-2.fc42.x86_6 100% | 16.6 MiB/s | 356.7 KiB | 00m00s [141/154] libbrotli-0:1.1.0-5.fc41.x86_ 100% | 15.8 MiB/s | 340.5 KiB | 00m00s [142/154] libidn2-0:2.3.7-2.fc41.x86_64 100% | 6.4 MiB/s | 118.4 KiB | 00m00s [143/154] libnghttp2-0:1.64.0-1.fc42.x8 100% | 4.2 MiB/s | 77.4 KiB | 00m00s [144/154] libpsl-0:0.21.5-4.fc41.x86_64 100% | 3.7 MiB/s | 64.1 KiB | 00m00s [145/154] libssh-0:0.11.1-1.fc42.x86_64 100% | 11.9 MiB/s | 231.9 KiB | 00m00s [146/154] openldap-0:2.6.8-6.fc42.x86_6 100% | 11.3 MiB/s | 243.4 KiB | 00m00s [147/154] libunistring-0:1.1-8.fc41.x86 100% | 14.8 MiB/s | 544.8 KiB | 00m00s [148/154] publicsuffix-list-dafsa-0:202 100% | 3.2 MiB/s | 58.3 KiB | 00m00s [149/154] libssh-config-0:0.11.1-1.fc42 100% | 552.1 KiB/s | 9.4 KiB | 00m00s [150/154] gdb-minimal-0:15.2-4.fc42.x86 100% | 15.1 MiB/s | 4.0 MiB | 00m00s [151/154] libevent-0:2.1.12-14.fc41.x86 100% | 12.6 MiB/s | 257.5 KiB | 00m00s [152/154] cyrus-sasl-lib-0:2.1.28-27.fc 100% | 19.4 MiB/s | 794.9 KiB | 00m00s [153/154] binutils-0:2.43.50-9.fc42.x86 100% | 13.9 MiB/s | 5.8 MiB | 00m00s [154/154] libtool-ltdl-0:2.5.4-1.fc42.x 100% | 2.0 MiB/s | 34.2 KiB | 00m00s -------------------------------------------------------------------------------- [154/154] Total 100% | 27.9 MiB/s | 51.9 MiB | 00m02s Running transaction Importing OpenPGP key 0x105EF944: UserID : "Fedora (42) " Fingerprint: B0F4950458F69E1150C6C5EDC8AC4916105EF944 From : file:///usr/share/distribution-gpg-keys/fedora/RPM-GPG-KEY-fedora-42-primary The key was successfully imported. Importing OpenPGP key 0x105EF944: UserID : "Fedora (42) " Fingerprint: B0F4950458F69E1150C6C5EDC8AC4916105EF944 From : file:///usr/share/distribution-gpg-keys/fedora/RPM-GPG-KEY-fedora-42-primary The key was successfully imported. Importing OpenPGP key 0xE99D6AD1: UserID : "Fedora (41) " Fingerprint: 466CF2D8B60BC3057AA9453ED0622462E99D6AD1 From : file:///usr/share/distribution-gpg-keys/fedora/RPM-GPG-KEY-fedora-41-primary The key was successfully imported. Importing OpenPGP key 0x31645531: UserID : "Fedora (43) " Fingerprint: C6E7F081CF80E13146676E88829B606631645531 From : file:///usr/share/distribution-gpg-keys/fedora/RPM-GPG-KEY-fedora-43-primary The key was successfully imported. [ 1/156] Verify package files 100% | 773.0 B/s | 154.0 B | 00m00s [ 2/156] Prepare transaction 100% | 1.8 KiB/s | 154.0 B | 00m00s [ 3/156] Installing libgcc-0:14.2.1-6. 100% | 132.9 MiB/s | 272.3 KiB | 00m00s [ 4/156] Installing libssh-config-0:0. 100% | 0.0 B/s | 816.0 B | 00m00s [ 5/156] Installing publicsuffix-list- 100% | 66.7 MiB/s | 68.3 KiB | 00m00s [ 6/156] Installing fedora-release-ide 100% | 0.0 B/s | 976.0 B | 00m00s [ 7/156] Installing fedora-repos-rawhi 100% | 2.4 MiB/s | 2.4 KiB | 00m00s [ 8/156] Installing fedora-gpg-keys-0: 100% | 18.7 MiB/s | 172.2 KiB | 00m00s [ 9/156] Installing fedora-repos-0:42- 100% | 0.0 B/s | 5.7 KiB | 00m00s [ 10/156] Installing fedora-release-com 100% | 11.8 MiB/s | 24.1 KiB | 00m00s [ 11/156] Installing fedora-release-0:4 100% | 0.0 B/s | 124.0 B | 00m00s [ 12/156] Installing setup-0:2.15.0-5.f 100% | 47.3 MiB/s | 726.1 KiB | 00m00s >>> [RPM] /etc/hosts created as /etc/hosts.rpmnew [ 13/156] Installing filesystem-0:3.18- 100% | 1.6 MiB/s | 212.6 KiB | 00m00s [ 14/156] Installing basesystem-0:11-21 100% | 0.0 B/s | 124.0 B | 00m00s [ 15/156] Installing pkgconf-m4-0:2.3.0 100% | 0.0 B/s | 14.8 KiB | 00m00s [ 16/156] Installing pcre2-syntax-0:10. 100% | 124.1 MiB/s | 254.1 KiB | 00m00s [ 17/156] Installing ncurses-base-0:6.5 100% | 34.3 MiB/s | 351.7 KiB | 00m00s [ 18/156] Installing glibc-minimal-lang 100% | 0.0 B/s | 124.0 B | 00m00s [ 19/156] Installing ncurses-libs-0:6.5 100% | 137.0 MiB/s | 981.8 KiB | 00m00s [ 20/156] Installing glibc-0:2.40.9000- 100% | 190.6 MiB/s | 6.7 MiB | 00m00s [ 21/156] Installing bash-0:5.2.37-1.fc 100% | 263.5 MiB/s | 8.2 MiB | 00m00s [ 22/156] Installing glibc-common-0:2.4 100% | 115.7 MiB/s | 1.0 MiB | 00m00s [ 23/156] Installing glibc-gconv-extra- 100% | 149.6 MiB/s | 8.1 MiB | 00m00s [ 24/156] Installing zlib-ng-compat-0:2 100% | 131.7 MiB/s | 134.9 KiB | 00m00s [ 25/156] Installing bzip2-libs-0:1.0.8 100% | 79.9 MiB/s | 81.8 KiB | 00m00s [ 26/156] Installing xz-libs-1:5.6.3-2. 100% | 214.3 MiB/s | 219.5 KiB | 00m00s [ 27/156] Installing popt-0:1.19-7.fc41 100% | 35.0 MiB/s | 143.5 KiB | 00m00s [ 28/156] Installing readline-0:8.2-11. 100% | 241.8 MiB/s | 495.3 KiB | 00m00s [ 29/156] Installing libuuid-0:2.40.2-8 100% | 41.5 MiB/s | 42.5 KiB | 00m00s [ 30/156] Installing libblkid-0:2.40.2- 100% | 128.7 MiB/s | 263.6 KiB | 00m00s [ 31/156] Installing gmp-1:6.3.0-2.fc41 100% | 264.9 MiB/s | 813.7 KiB | 00m00s [ 32/156] Installing libattr-0:2.5.2-4. 100% | 28.8 MiB/s | 29.5 KiB | 00m00s [ 33/156] Installing libacl-0:2.3.2-2.f 100% | 39.8 MiB/s | 40.7 KiB | 00m00s [ 34/156] Installing libxcrypt-0:4.4.36 100% | 88.5 MiB/s | 272.0 KiB | 00m00s [ 35/156] Installing libstdc++-0:14.2.1 100% | 276.0 MiB/s | 2.8 MiB | 00m00s [ 36/156] Installing libzstd-0:1.5.6-2. 100% | 194.6 MiB/s | 797.2 KiB | 00m00s [ 37/156] Installing elfutils-libelf-0: 100% | 291.7 MiB/s | 1.2 MiB | 00m00s [ 38/156] Installing libeconf-0:0.7.5-1 100% | 66.8 MiB/s | 68.4 KiB | 00m00s [ 39/156] Installing gdbm-libs-1:1.23-7 100% | 120.7 MiB/s | 123.6 KiB | 00m00s [ 40/156] Installing dwz-0:0.15-8.fc42. 100% | 146.8 MiB/s | 300.6 KiB | 00m00s [ 41/156] Installing mpfr-0:4.2.1-5.fc4 100% | 203.5 MiB/s | 833.7 KiB | 00m00s [ 42/156] Installing gawk-0:5.3.0-4.fc4 100% | 173.2 MiB/s | 1.7 MiB | 00m00s [ 43/156] Installing unzip-0:6.0-65.fc4 100% | 130.8 MiB/s | 401.7 KiB | 00m00s [ 44/156] Installing file-libs-0:5.45-8 100% | 473.3 MiB/s | 9.9 MiB | 00m00s [ 45/156] Installing file-0:5.45-8.fc42 100% | 7.3 MiB/s | 105.2 KiB | 00m00s [ 46/156] Installing crypto-policies-0: 100% | 14.5 MiB/s | 163.7 KiB | 00m00s [ 47/156] Installing pcre2-0:10.44-1.fc 100% | 213.2 MiB/s | 654.9 KiB | 00m00s [ 48/156] Installing grep-0:3.11-9.fc41 100% | 111.5 MiB/s | 1.0 MiB | 00m00s [ 49/156] Installing xz-1:5.6.3-2.fc42. 100% | 123.7 MiB/s | 1.2 MiB | 00m00s [ 50/156] Installing libcap-ng-0:0.8.5- 100% | 69.4 MiB/s | 71.0 KiB | 00m00s [ 51/156] Installing audit-libs-0:4.0.2 100% | 162.8 MiB/s | 333.4 KiB | 00m00s [ 52/156] Installing pam-libs-0:1.7.0-3 100% | 69.2 MiB/s | 141.8 KiB | 00m00s [ 53/156] Installing libcap-0:2.71-1.fc 100% | 70.3 MiB/s | 215.8 KiB | 00m00s [ 54/156] Installing systemd-libs-0:257 100% | 246.7 MiB/s | 2.2 MiB | 00m00s [ 55/156] Installing libsmartcols-0:2.4 100% | 177.1 MiB/s | 181.4 KiB | 00m00s [ 56/156] Installing libsepol-0:3.8-0.r 100% | 198.5 MiB/s | 813.3 KiB | 00m00s [ 57/156] Installing libselinux-0:3.8-0 100% | 94.2 MiB/s | 192.9 KiB | 00m00s [ 58/156] Installing sed-0:4.9-3.fc41.x 100% | 121.3 MiB/s | 869.7 KiB | 00m00s [ 59/156] Installing findutils-1:4.10.0 100% | 185.8 MiB/s | 1.9 MiB | 00m00s [ 60/156] Installing libmount-0:2.40.2- 100% | 174.3 MiB/s | 356.9 KiB | 00m00s [ 61/156] Installing lz4-libs-0:1.10.0- 100% | 143.1 MiB/s | 146.6 KiB | 00m00s [ 62/156] Installing lua-libs-0:5.4.7-1 100% | 139.7 MiB/s | 286.2 KiB | 00m00s [ 63/156] Installing libcom_err-0:1.47. 100% | 66.7 MiB/s | 68.3 KiB | 00m00s [ 64/156] Installing alternatives-0:1.3 100% | 64.8 MiB/s | 66.4 KiB | 00m00s [ 65/156] Installing libffi-0:3.4.6-3.f 100% | 85.7 MiB/s | 87.8 KiB | 00m00s [ 66/156] Installing libtasn1-0:4.19.0- 100% | 86.7 MiB/s | 177.5 KiB | 00m00s [ 67/156] Installing p11-kit-0:0.25.5-4 100% | 147.7 MiB/s | 2.2 MiB | 00m00s [ 68/156] Installing libunistring-0:1.1 100% | 247.2 MiB/s | 1.7 MiB | 00m00s [ 69/156] Installing libidn2-0:2.3.7-2. 100% | 65.4 MiB/s | 335.1 KiB | 00m00s [ 70/156] Installing libpsl-0:0.21.5-4. 100% | 79.7 MiB/s | 81.7 KiB | 00m00s [ 71/156] Installing p11-kit-trust-0:0. 100% | 26.4 MiB/s | 405.5 KiB | 00m00s [ 72/156] Installing zstd-0:1.5.6-2.fc4 100% | 211.4 MiB/s | 1.7 MiB | 00m00s [ 73/156] Installing util-linux-core-0: 100% | 127.3 MiB/s | 1.5 MiB | 00m00s [ 74/156] Installing tar-2:1.35-4.fc41. 100% | 211.3 MiB/s | 3.0 MiB | 00m00s [ 75/156] Installing libsemanage-0:3.8- 100% | 100.0 MiB/s | 307.1 KiB | 00m00s [ 76/156] Installing shadow-utils-2:4.1 100% | 119.1 MiB/s | 4.0 MiB | 00m00s [ 77/156] Installing zip-0:3.0-42.fc42. 100% | 170.9 MiB/s | 699.8 KiB | 00m00s [ 78/156] Installing gdbm-1:1.23-7.fc41 100% | 113.7 MiB/s | 465.8 KiB | 00m00s [ 79/156] Installing cyrus-sasl-lib-0:2 100% | 230.6 MiB/s | 2.3 MiB | 00m00s [ 80/156] Installing libfdisk-0:2.40.2- 100% | 177.7 MiB/s | 364.0 KiB | 00m00s [ 81/156] Installing libxml2-0:2.12.8-2 100% | 244.6 MiB/s | 1.7 MiB | 00m00s [ 82/156] Installing bzip2-0:1.0.8-19.f 100% | 32.6 MiB/s | 100.2 KiB | 00m00s [ 83/156] Installing add-determinism-0: 100% | 263.2 MiB/s | 2.4 MiB | 00m00s [ 84/156] Installing build-reproducibil 100% | 0.0 B/s | 1.0 KiB | 00m00s [ 85/156] Installing sqlite-libs-0:3.47 100% | 239.0 MiB/s | 1.4 MiB | 00m00s [ 86/156] Installing ed-0:1.20.2-2.fc41 100% | 72.8 MiB/s | 149.2 KiB | 00m00s [ 87/156] Installing patch-0:2.7.6-25.f 100% | 131.0 MiB/s | 268.2 KiB | 00m00s [ 88/156] Installing elfutils-default-y 100% | 157.2 KiB/s | 2.0 KiB | 00m00s [ 89/156] Installing elfutils-libs-0:0. 100% | 162.3 MiB/s | 664.7 KiB | 00m00s [ 90/156] Installing cpio-0:2.15-2.fc41 100% | 137.5 MiB/s | 1.1 MiB | 00m00s [ 91/156] Installing diffutils-0:3.10-8 100% | 159.0 MiB/s | 1.6 MiB | 00m00s [ 92/156] Installing libgomp-0:14.2.1-6 100% | 254.5 MiB/s | 521.2 KiB | 00m00s [ 93/156] Installing json-c-0:0.18-1.fc 100% | 82.6 MiB/s | 84.6 KiB | 00m00s [ 94/156] Installing keyutils-libs-0:1. 100% | 54.5 MiB/s | 55.8 KiB | 00m00s [ 95/156] Installing libverto-0:0.3.2-9 100% | 30.5 MiB/s | 31.3 KiB | 00m00s [ 96/156] Installing jansson-0:2.14-1.f 100% | 92.3 MiB/s | 94.5 KiB | 00m00s [ 97/156] Installing libpkgconf-0:2.3.0 100% | 77.5 MiB/s | 79.3 KiB | 00m00s [ 98/156] Installing pkgconf-0:2.3.0-1. 100% | 44.5 MiB/s | 91.1 KiB | 00m00s [ 99/156] Installing pkgconf-pkg-config 100% | 1.7 MiB/s | 1.8 KiB | 00m00s [100/156] Installing xxhash-libs-0:0.8. 100% | 87.7 MiB/s | 89.8 KiB | 00m00s [101/156] Installing libbrotli-0:1.1.0- 100% | 205.0 MiB/s | 839.9 KiB | 00m00s [102/156] Installing libnghttp2-0:1.64. 100% | 171.5 MiB/s | 175.6 KiB | 00m00s [103/156] Installing libtool-ltdl-0:2.5 100% | 67.6 MiB/s | 69.2 KiB | 00m00s [104/156] Installing rust-srpm-macros-0 100% | 0.0 B/s | 5.6 KiB | 00m00s [105/156] Installing qt6-srpm-macros-0: 100% | 0.0 B/s | 732.0 B | 00m00s [106/156] Installing qt5-srpm-macros-0: 100% | 0.0 B/s | 776.0 B | 00m00s [107/156] Installing perl-srpm-macros-0 100% | 0.0 B/s | 1.1 KiB | 00m00s [108/156] Installing package-notes-srpm 100% | 0.0 B/s | 2.0 KiB | 00m00s [109/156] Installing openblas-srpm-macr 100% | 0.0 B/s | 392.0 B | 00m00s [110/156] Installing ocaml-srpm-macros- 100% | 0.0 B/s | 2.2 KiB | 00m00s [111/156] Installing kernel-srpm-macros 100% | 2.3 MiB/s | 2.3 KiB | 00m00s [112/156] Installing gnat-srpm-macros-0 100% | 0.0 B/s | 1.3 KiB | 00m00s [113/156] Installing ghc-srpm-macros-0: 100% | 0.0 B/s | 1.0 KiB | 00m00s [114/156] Installing fpc-srpm-macros-0: 100% | 0.0 B/s | 420.0 B | 00m00s [115/156] Installing ansible-srpm-macro 100% | 35.4 MiB/s | 36.2 KiB | 00m00s [116/156] Installing coreutils-common-0 100% | 238.1 MiB/s | 11.2 MiB | 00m00s [117/156] Installing openssl-libs-1:3.2 100% | 301.1 MiB/s | 7.8 MiB | 00m00s [118/156] Installing coreutils-0:9.5-11 100% | 135.0 MiB/s | 5.4 MiB | 00m00s [119/156] Installing ca-certificates-0: 100% | 1.2 MiB/s | 2.4 MiB | 00m02s [120/156] Installing krb5-libs-0:1.21.3 100% | 177.3 MiB/s | 2.3 MiB | 00m00s [121/156] Installing libarchive-0:3.7.7 100% | 228.1 MiB/s | 934.2 KiB | 00m00s [122/156] Installing libtirpc-0:1.3.6-1 100% | 101.2 MiB/s | 207.3 KiB | 00m00s [123/156] Installing gzip-0:1.13-2.fc41 100% | 96.3 MiB/s | 394.6 KiB | 00m00s [124/156] Installing authselect-libs-0: 100% | 90.8 MiB/s | 837.2 KiB | 00m00s [125/156] Installing cracklib-0:2.9.11- 100% | 34.9 MiB/s | 250.3 KiB | 00m00s [126/156] Installing libpwquality-0:1.4 100% | 52.5 MiB/s | 430.1 KiB | 00m00s [127/156] Installing libnsl2-0:2.0.1-2. 100% | 28.8 MiB/s | 59.1 KiB | 00m00s [128/156] Installing pam-0:1.7.0-3.fc42 100% | 78.9 MiB/s | 1.9 MiB | 00m00s [129/156] Installing libssh-0:0.11.1-1. 100% | 139.6 MiB/s | 571.7 KiB | 00m00s [130/156] Installing rpm-sequoia-0:1.7. 100% | 258.2 MiB/s | 2.3 MiB | 00m00s [131/156] Installing rpm-libs-0:4.20.0- 100% | 236.9 MiB/s | 727.7 KiB | 00m00s [132/156] Installing rpm-build-libs-0:4 100% | 101.3 MiB/s | 207.5 KiB | 00m00s [133/156] Installing libevent-0:2.1.12- 100% | 175.7 MiB/s | 899.5 KiB | 00m00s [134/156] Installing openldap-0:2.6.8-6 100% | 159.0 MiB/s | 651.2 KiB | 00m00s [135/156] Installing libcurl-0:8.11.1-2 100% | 199.8 MiB/s | 818.4 KiB | 00m00s [136/156] Installing elfutils-debuginfo 100% | 40.9 MiB/s | 83.8 KiB | 00m00s [137/156] Installing elfutils-0:0.192-7 100% | 220.4 MiB/s | 2.6 MiB | 00m00s [138/156] Installing binutils-0:2.43.50 100% | 255.5 MiB/s | 25.8 MiB | 00m00s [139/156] Installing gdb-minimal-0:15.2 100% | 282.8 MiB/s | 12.7 MiB | 00m00s [140/156] Installing debugedit-0:5.1-2. 100% | 99.1 MiB/s | 203.0 KiB | 00m00s [141/156] Installing curl-0:8.11.1-2.fc 100% | 22.2 MiB/s | 454.5 KiB | 00m00s [142/156] Installing rpm-0:4.20.0-1.fc4 100% | 89.5 MiB/s | 2.5 MiB | 00m00s [143/156] Installing efi-srpm-macros-0: 100% | 40.2 MiB/s | 41.2 KiB | 00m00s [144/156] Installing lua-srpm-macros-0: 100% | 0.0 B/s | 1.9 KiB | 00m00s [145/156] Installing zig-srpm-macros-0: 100% | 0.0 B/s | 1.7 KiB | 00m00s [146/156] Installing fonts-srpm-macros- 100% | 55.7 MiB/s | 57.0 KiB | 00m00s [147/156] Installing forge-srpm-macros- 100% | 39.3 MiB/s | 40.3 KiB | 00m00s [148/156] Installing go-srpm-macros-0:3 100% | 60.5 MiB/s | 62.0 KiB | 00m00s [149/156] Installing python-srpm-macros 100% | 50.9 MiB/s | 52.2 KiB | 00m00s [150/156] Installing redhat-rpm-config- 100% | 62.9 MiB/s | 193.2 KiB | 00m00s [151/156] Installing rpm-build-0:4.20.0 100% | 49.5 MiB/s | 202.9 KiB | 00m00s [152/156] Installing pyproject-srpm-mac 100% | 1.2 MiB/s | 2.5 KiB | 00m00s [153/156] Installing util-linux-0:2.40. 100% | 88.5 MiB/s | 3.7 MiB | 00m00s [154/156] Installing authselect-0:1.5.0 100% | 39.5 MiB/s | 161.9 KiB | 00m00s [155/156] Installing which-0:2.21-42.fc 100% | 40.2 MiB/s | 82.4 KiB | 00m00s [156/156] Installing info-0:7.1.1-2.fc4 100% | 132.7 KiB/s | 362.2 KiB | 00m03s Complete! Finish: installing minimal buildroot with dnf5 Start: creating root cache Finish: creating root cache Finish: chroot init INFO: Installed packages: INFO: add-determinism-0.5.0-1.fc42.x86_64 alternatives-1.31-1.fc42.x86_64 ansible-srpm-macros-1-16.fc41.noarch audit-libs-4.0.2-1.fc41.x86_64 authselect-1.5.0-8.fc42.x86_64 authselect-libs-1.5.0-8.fc42.x86_64 basesystem-11-21.fc41.noarch bash-5.2.37-1.fc42.x86_64 binutils-2.43.50-9.fc42.x86_64 build-reproducibility-srpm-macros-0.5.0-1.fc42.noarch bzip2-1.0.8-19.fc41.x86_64 bzip2-libs-1.0.8-19.fc41.x86_64 ca-certificates-2024.2.69_v8.0.401-3.fc42.noarch coreutils-9.5-11.fc42.x86_64 coreutils-common-9.5-11.fc42.x86_64 cpio-2.15-2.fc41.x86_64 cracklib-2.9.11-6.fc41.x86_64 crypto-policies-20241128-1.gitbb7b0b0.fc42.noarch curl-8.11.1-2.fc42.x86_64 cyrus-sasl-lib-2.1.28-27.fc41.x86_64 debugedit-5.1-2.fc42.x86_64 diffutils-3.10-8.fc41.x86_64 dwz-0.15-8.fc42.x86_64 ed-1.20.2-2.fc41.x86_64 efi-srpm-macros-5-13.fc42.noarch elfutils-0.192-7.fc42.x86_64 elfutils-debuginfod-client-0.192-7.fc42.x86_64 elfutils-default-yama-scope-0.192-7.fc42.noarch elfutils-libelf-0.192-7.fc42.x86_64 elfutils-libs-0.192-7.fc42.x86_64 fedora-gpg-keys-42-0.3.noarch fedora-release-42-0.11.noarch fedora-release-common-42-0.11.noarch fedora-release-identity-basic-42-0.11.noarch fedora-repos-42-0.3.noarch fedora-repos-rawhide-42-0.3.noarch file-5.45-8.fc42.x86_64 file-libs-5.45-8.fc42.x86_64 filesystem-3.18-29.fc42.x86_64 findutils-4.10.0-4.fc41.x86_64 fonts-srpm-macros-2.0.5-17.fc41.noarch forge-srpm-macros-0.4.0-1.fc42.noarch fpc-srpm-macros-1.3-13.fc41.noarch gawk-5.3.0-4.fc41.x86_64 gdb-minimal-15.2-4.fc42.x86_64 gdbm-1.23-7.fc41.x86_64 gdbm-libs-1.23-7.fc41.x86_64 ghc-srpm-macros-1.9.2-1.fc42.noarch glibc-2.40.9000-24.fc42.x86_64 glibc-common-2.40.9000-24.fc42.x86_64 glibc-gconv-extra-2.40.9000-24.fc42.x86_64 glibc-minimal-langpack-2.40.9000-24.fc42.x86_64 gmp-6.3.0-2.fc41.x86_64 gnat-srpm-macros-6-6.fc41.noarch go-srpm-macros-3.6.0-5.fc42.noarch gpg-pubkey-105ef944-65ca83d1 gpg-pubkey-31645531-66b6dccf gpg-pubkey-e99d6ad1-64d2612c grep-3.11-9.fc41.x86_64 gzip-1.13-2.fc41.x86_64 info-7.1.1-2.fc42.x86_64 jansson-2.14-1.fc42.x86_64 json-c-0.18-1.fc42.x86_64 kernel-srpm-macros-1.0-24.fc41.noarch keyutils-libs-1.6.3-4.fc41.x86_64 krb5-libs-1.21.3-3.fc42.x86_64 libacl-2.3.2-2.fc41.x86_64 libarchive-3.7.7-1.fc42.x86_64 libattr-2.5.2-4.fc41.x86_64 libblkid-2.40.2-8.fc42.x86_64 libbrotli-1.1.0-5.fc41.x86_64 libcap-2.71-1.fc42.x86_64 libcap-ng-0.8.5-3.fc41.x86_64 libcom_err-1.47.1-6.fc42.x86_64 libcurl-8.11.1-2.fc42.x86_64 libeconf-0.7.5-1.fc42.x86_64 libevent-2.1.12-14.fc41.x86_64 libfdisk-2.40.2-8.fc42.x86_64 libffi-3.4.6-3.fc42.x86_64 libgcc-14.2.1-6.fc42.x86_64 libgomp-14.2.1-6.fc42.x86_64 libidn2-2.3.7-2.fc41.x86_64 libmount-2.40.2-8.fc42.x86_64 libnghttp2-1.64.0-1.fc42.x86_64 libnsl2-2.0.1-2.fc41.x86_64 libpkgconf-2.3.0-1.fc42.x86_64 libpsl-0.21.5-4.fc41.x86_64 libpwquality-1.4.5-11.fc41.x86_64 libselinux-3.8-0.rc3.1.fc42.x86_64 libsemanage-3.8-0.rc3.1.fc42.x86_64 libsepol-3.8-0.rc3.1.fc42.x86_64 libsmartcols-2.40.2-8.fc42.x86_64 libssh-0.11.1-1.fc42.x86_64 libssh-config-0.11.1-1.fc42.noarch libstdc++-14.2.1-6.fc42.x86_64 libtasn1-4.19.0-9.fc41.x86_64 libtirpc-1.3.6-1.fc42.x86_64 libtool-ltdl-2.5.4-1.fc42.x86_64 libunistring-1.1-8.fc41.x86_64 libuuid-2.40.2-8.fc42.x86_64 libverto-0.3.2-9.fc41.x86_64 libxcrypt-4.4.36-12.fc42.x86_64 libxml2-2.12.8-2.fc41.x86_64 libzstd-1.5.6-2.fc41.x86_64 lua-libs-5.4.7-1.fc42.x86_64 lua-srpm-macros-1-14.fc41.noarch lz4-libs-1.10.0-1.fc41.x86_64 mpfr-4.2.1-5.fc41.x86_64 ncurses-base-6.5-2.20240629.fc41.noarch ncurses-libs-6.5-2.20240629.fc41.x86_64 ocaml-srpm-macros-10-3.fc41.noarch openblas-srpm-macros-2-18.fc41.noarch openldap-2.6.8-6.fc42.x86_64 openssl-libs-3.2.2-8.fc42.x86_64 p11-kit-0.25.5-4.fc42.x86_64 p11-kit-trust-0.25.5-4.fc42.x86_64 package-notes-srpm-macros-0.5-12.fc41.noarch pam-1.7.0-3.fc42.x86_64 pam-libs-1.7.0-3.fc42.x86_64 patch-2.7.6-25.fc41.x86_64 pcre2-10.44-1.fc41.1.x86_64 pcre2-syntax-10.44-1.fc41.1.noarch perl-srpm-macros-1-56.fc41.noarch pkgconf-2.3.0-1.fc42.x86_64 pkgconf-m4-2.3.0-1.fc42.noarch pkgconf-pkg-config-2.3.0-1.fc42.x86_64 popt-1.19-7.fc41.x86_64 publicsuffix-list-dafsa-20240107-4.fc41.noarch pyproject-srpm-macros-1.16.3-1.fc42.noarch python-srpm-macros-3.13-3.fc41.noarch qt5-srpm-macros-5.15.15-1.fc42.noarch qt6-srpm-macros-6.8.1-4.fc42.noarch readline-8.2-11.fc42.x86_64 redhat-rpm-config-296-1.fc42.noarch rpm-4.20.0-1.fc42.x86_64 rpm-build-4.20.0-1.fc42.x86_64 rpm-build-libs-4.20.0-1.fc42.x86_64 rpm-libs-4.20.0-1.fc42.x86_64 rpm-sequoia-1.7.0-3.fc42.x86_64 rust-srpm-macros-26.3-3.fc42.noarch sed-4.9-3.fc41.x86_64 setup-2.15.0-5.fc41.noarch shadow-utils-4.17.0~rc1-2.fc42.x86_64 sqlite-libs-3.47.2-1.fc42.x86_64 systemd-libs-257.1-1.fc42.x86_64 tar-1.35-4.fc41.x86_64 unzip-6.0-65.fc42.x86_64 util-linux-2.40.2-8.fc42.x86_64 util-linux-core-2.40.2-8.fc42.x86_64 which-2.21-42.fc41.x86_64 xxhash-libs-0.8.2-4.fc42.x86_64 xz-5.6.3-2.fc42.x86_64 xz-libs-5.6.3-2.fc42.x86_64 zig-srpm-macros-1-3.fc41.noarch zip-3.0-42.fc42.x86_64 zlib-ng-compat-2.2.2-1.fc42.x86_64 zstd-1.5.6-2.fc41.x86_64 Start: buildsrpm Start: rpmbuild -bs Building target platforms: x86_64 Building for target x86_64 setting SOURCE_DATE_EPOCH=1733356800 Wrote: /builddir/build/SRPMS/rubygem-shoulda-matchers-5.1.0-8.fc42.src.rpm Finish: rpmbuild -bs INFO: chroot_scan: 1 files copied to /var/lib/copr-rpmbuild/results/chroot_scan INFO: /var/lib/mock/fedora-rawhide-x86_64-1735002660.028497/root/var/log/dnf5.log INFO: chroot_scan: creating tarball /var/lib/copr-rpmbuild/results/chroot_scan.tar.gz /bin/tar: Removing leading `/' from member names Finish: buildsrpm INFO: Done(/var/lib/copr-rpmbuild/workspace/workdir-n3owkbq0/rubygem-shoulda-matchers/rubygem-shoulda-matchers.spec) Config(child) 0 minutes 27 seconds INFO: Results and/or logs in: /var/lib/copr-rpmbuild/results INFO: Cleaning up build root ('cleanup_on_success=True') Start: clean chroot INFO: unmounting tmpfs. Finish: clean chroot INFO: Start(/var/lib/copr-rpmbuild/results/rubygem-shoulda-matchers-5.1.0-8.fc42.src.rpm) Config(fedora-rawhide-x86_64) Start(bootstrap): chroot init INFO: mounting tmpfs at /var/lib/mock/fedora-rawhide-x86_64-bootstrap-1735002660.028497/root. INFO: reusing tmpfs at /var/lib/mock/fedora-rawhide-x86_64-bootstrap-1735002660.028497/root. INFO: calling preinit hooks INFO: enabled root cache INFO: enabled package manager cache Start(bootstrap): cleaning package manager metadata Finish(bootstrap): cleaning package manager metadata Finish(bootstrap): chroot init Start: chroot init INFO: mounting tmpfs at /var/lib/mock/fedora-rawhide-x86_64-1735002660.028497/root. INFO: calling preinit hooks INFO: enabled root cache Start: unpacking root cache Finish: unpacking root cache INFO: enabled package manager cache Start: cleaning package manager metadata Finish: cleaning package manager metadata INFO: enabled HW Info plugin INFO: Buildroot is handled by package management downloaded with a bootstrap image: rpm-4.20.0-1.fc42.x86_64 rpm-sequoia-1.7.0-3.fc42.x86_64 dnf5-5.2.8.1-2.fc42.x86_64 dnf5-plugins-5.2.8.1-2.fc42.x86_64 Finish: chroot init Start: build phase for rubygem-shoulda-matchers-5.1.0-8.fc42.src.rpm Start: build setup for rubygem-shoulda-matchers-5.1.0-8.fc42.src.rpm Building target platforms: x86_64 Building for target x86_64 setting SOURCE_DATE_EPOCH=1733356800 Wrote: /builddir/build/SRPMS/rubygem-shoulda-matchers-5.1.0-8.fc42.src.rpm Updating and loading repositories: fedora 100% | 1.0 MiB/s | 27.7 KiB | 00m00s Copr repository 100% | 49.0 KiB/s | 1.5 KiB | 00m00s Repositories loaded. Package Arch Version Repository Size Installing: ruby x86_64 3.3.6-18.fc42 fedora 88.4 KiB ruby-libs x86_64 3.3.6-18.fc42 fedora 14.4 MiB rubygem-bcrypt x86_64 3.1.18-6.fc41 fedora 38.7 KiB rubygem-jbuilder noarch 2.11.5-7.fc41 fedora 35.2 KiB rubygem-puma x86_64 6.4.2-4.fc42 fedora 336.4 KiB rubygem-rails noarch 1:7.0.8-3.fc41 fedora 3.3 KiB rubygem-rails-controller-testing noarch 1.0.5-10.fc41 fedora 11.9 KiB rubygem-rspec noarch 3.13.0-2.fc41 fedora 6.5 KiB rubygem-rspec-rails noarch 7.1.0-1.fc42 fedora 196.9 KiB rubygem-shoulda-context noarch 2.0.0-3.fc41 fedora 30.1 KiB rubygem-spring noarch 4.1.1-4.fc41 fedora 71.8 KiB rubygem-sqlite3 x86_64 1.6.1-6.fc41 fedora 113.8 KiB rubygems-devel noarch 3.5.22-18.fc42 fedora 12.5 KiB Installing dependencies: libxslt x86_64 1.1.42-2.fc41 fedora 483.1 KiB libyaml x86_64 0.2.5-15.fc41 fedora 134.4 KiB procps-ng x86_64 4.0.4-4.fc41 fedora 1.0 MiB ruby-bundled-gems x86_64 3.3.6-18.fc42 fedora 1.1 MiB ruby-default-gems noarch 3.3.6-18.fc42 fedora 76.3 KiB rubygem-actioncable noarch 7.0.8-4.fc41 fedora 168.3 KiB rubygem-actionmailbox noarch 7.0.8-4.fc41 fedora 25.9 KiB rubygem-actionmailer noarch 1:7.0.8-5.fc41 fedora 87.4 KiB rubygem-actionpack noarch 1:7.0.8-8.fc42 fedora 823.4 KiB rubygem-actiontext noarch 7.0.8-4.fc41 fedora 422.5 KiB rubygem-actionview noarch 7.0.8-7.fc42 fedora 730.4 KiB rubygem-activejob noarch 7.0.8-5.fc42 fedora 109.6 KiB rubygem-activemodel noarch 7.0.8-5.fc42 fedora 232.7 KiB rubygem-activerecord noarch 1:7.0.8-5.fc42 fedora 1.9 MiB rubygem-activestorage noarch 7.0.8-5.fc42 fedora 238.8 KiB rubygem-activesupport noarch 1:7.0.8-9.fc42 fedora 829.2 KiB rubygem-bigdecimal x86_64 3.1.5-18.fc42 fedora 131.3 KiB rubygem-builder noarch 3.3.0-1.fc41 fedora 27.6 KiB rubygem-bundler noarch 2.5.22-18.fc42 fedora 1.4 MiB rubygem-concurrent-ruby noarch 1.1.9-7.fc41 fedora 693.1 KiB rubygem-crass noarch 1.0.4-16.fc41 fedora 42.3 KiB rubygem-diff-lcs noarch 1.5.0-6.fc41 fedora 99.0 KiB rubygem-erubi noarch 1.12.0-2.fc41 fedora 15.5 KiB rubygem-globalid noarch 1.2.1-1.fc42 fedora 30.4 KiB rubygem-i18n noarch 1.14.6-1.fc42 fedora 162.7 KiB rubygem-io-console x86_64 0.7.1-18.fc42 fedora 35.7 KiB rubygem-irb noarch 1.13.1-18.fc42 fedora 278.9 KiB rubygem-json x86_64 2.7.5-201.fc42 fedora 167.9 KiB rubygem-loofah noarch 2.22.0-4.fc41 fedora 70.6 KiB rubygem-mail noarch 2.8.1-4.fc41 fedora 3.6 MiB rubygem-marcel noarch 1.0.2-9.fc41 fedora 172.8 KiB rubygem-method_source noarch 1.1.0-1.fc42 fedora 16.9 KiB rubygem-mini_mime noarch 1.1.0-8.fc41 fedora 216.9 KiB rubygem-minitest noarch 5.25.1-101.fc42 fedora 149.5 KiB rubygem-nio4r x86_64 2.6.1-4.fc41 fedora 115.7 KiB rubygem-nokogiri x86_64 1.17.2-1.fc42 fedora 1.0 MiB rubygem-psych x86_64 5.1.2-18.fc42 fedora 134.4 KiB rubygem-racc x86_64 1.8.1-100.fc41 fedora 191.2 KiB rubygem-rack noarch 1:2.2.4-8.fc42 fedora 306.0 KiB rubygem-rack-test noarch 1.1.0-11.fc42 fedora 28.8 KiB rubygem-rails-dom-testing noarch 2.0.3-11.fc41 fedora 22.9 KiB rubygem-rails-html-sanitizer noarch 1.6.0-3.fc41 fedora 25.0 KiB rubygem-railties noarch 7.0.8-6.fc42 fedora 522.5 KiB rubygem-rake noarch 13.2.1-201.fc41 fedora 133.2 KiB rubygem-rdoc noarch 6.6.3.1-18.fc42 fedora 1.8 MiB rubygem-rspec-core noarch 3.13.2-4.fc42 fedora 601.7 KiB rubygem-rspec-expectations noarch 3.13.3-1.fc42 copr_base 332.6 KiB rubygem-rspec-mocks noarch 3.13.2-2.fc42 fedora 301.1 KiB rubygem-rspec-support noarch 3.13.2-1.fc42 fedora 109.7 KiB rubygem-thor noarch 1.2.1-8.fc42 fedora 174.7 KiB rubygem-tzinfo noarch 2.0.6-4.fc41 fedora 278.5 KiB rubygem-websocket-driver x86_64 0.7.5-13.fc42 fedora 52.5 KiB rubygem-websocket-extensions noarch 0.1.5-5.fc41 fedora 9.0 KiB rubygem-zeitwerk noarch 2.6.6-5.fc41 fedora 58.5 KiB rubygems noarch 3.5.22-18.fc42 fedora 1.4 MiB rubypick noarch 1.1.1-21.fc41 fedora 4.4 KiB tzdata noarch 2024b-1.fc42 fedora 1.6 MiB Transaction Summary: Installing: 70 packages Total size of inbound packages is 11 MiB. Need to download 11 MiB. After this operation, 40 MiB extra will be used (install 40 MiB, remove 0 B). [ 1/70] rubygem-jbuilder-0:2.11.5-7.fc4 100% | 50.3 KiB/s | 20.4 KiB | 00m00s [ 2/70] rubygem-bcrypt-0:3.1.18-6.fc41. 100% | 60.3 KiB/s | 27.6 KiB | 00m00s [ 3/70] rubygem-rails-1:7.0.8-3.fc41.no 100% | 103.8 KiB/s | 10.7 KiB | 00m00s [ 4/70] rubygem-puma-0:6.4.2-4.fc42.x86 100% | 208.8 KiB/s | 115.5 KiB | 00m01s [ 5/70] rubygem-rails-controller-testin 100% | 123.4 KiB/s | 13.2 KiB | 00m00s [ 6/70] rubygem-rspec-0:3.13.0-2.fc41.n 100% | 129.4 KiB/s | 12.6 KiB | 00m00s [ 7/70] rubygem-rspec-rails-0:7.1.0-1.f 100% | 830.3 KiB/s | 81.4 KiB | 00m00s [ 8/70] rubygem-shoulda-context-0:2.0.0 100% | 195.7 KiB/s | 20.4 KiB | 00m00s [ 9/70] rubygem-spring-0:4.1.1-4.fc41.n 100% | 212.0 KiB/s | 39.2 KiB | 00m00s [10/70] rubygem-sqlite3-0:1.6.1-6.fc41. 100% | 248.0 KiB/s | 43.9 KiB | 00m00s [11/70] rubygems-devel-0:3.5.22-18.fc42 100% | 69.3 KiB/s | 14.4 KiB | 00m00s [12/70] ruby-0:3.3.6-18.fc42.x86_64 100% | 341.6 KiB/s | 38.3 KiB | 00m00s [13/70] rubygem-actionview-0:7.0.8-7.fc 100% | 668.7 KiB/s | 182.6 KiB | 00m00s [14/70] rubygem-activesupport-1:7.0.8-9 100% | 920.5 KiB/s | 263.3 KiB | 00m00s [15/70] rubygem-nio4r-0:2.6.1-4.fc41.x8 100% | 539.2 KiB/s | 54.5 KiB | 00m00s [16/70] rubypick-0:1.1.1-21.fc41.noarch 100% | 118.0 KiB/s | 9.9 KiB | 00m00s [17/70] ruby-libs-0:3.3.6-18.fc42.x86_6 100% | 8.2 MiB/s | 3.8 MiB | 00m00s [18/70] rubygem-actioncable-0:7.0.8-4.f 100% | 711.8 KiB/s | 62.6 KiB | 00m00s [19/70] rubygem-actionmailbox-0:7.0.8-4 100% | 334.0 KiB/s | 27.7 KiB | 00m00s [20/70] rubygem-actionmailer-1:7.0.8-5. 100% | 392.2 KiB/s | 38.8 KiB | 00m00s [21/70] rubygem-actiontext-0:7.0.8-4.fc 100% | 1.0 MiB/s | 101.7 KiB | 00m00s [22/70] rubygem-activejob-0:7.0.8-5.fc4 100% | 504.2 KiB/s | 47.4 KiB | 00m00s [23/70] rubygem-activemodel-0:7.0.8-5.f 100% | 705.0 KiB/s | 75.4 KiB | 00m00s [24/70] rubygem-activerecord-1:7.0.8-5. 100% | 2.4 MiB/s | 465.8 KiB | 00m00s [25/70] rubygem-activestorage-0:7.0.8-5 100% | 749.0 KiB/s | 86.1 KiB | 00m00s [26/70] rubygem-actionpack-1:7.0.8-8.fc 100% | 605.8 KiB/s | 241.1 KiB | 00m00s >>> Status code: 404 for https://mirrors.xmission.com/fedora/linux/development/r >>> Status code: 404 for http://mirrors.xmission.com/fedora/linux/development/ra [27/70] rubygem-railties-0:7.0.8-6.fc42 100% | 1.9 MiB/s | 240.6 KiB | 00m00s [28/70] rubygem-rspec-core-0:3.13.2-4.f 100% | 1.3 MiB/s | 163.3 KiB | 00m00s [29/70] rubygem-rspec-mocks-0:3.13.2-2. 100% | 664.4 KiB/s | 85.0 KiB | 00m00s [30/70] rubygem-rspec-support-0:3.13.2- 100% | 533.1 KiB/s | 49.6 KiB | 00m00s [31/70] rubygem-json-0:2.7.5-201.fc42.x 100% | 632.5 KiB/s | 69.6 KiB | 00m00s [32/70] rubygem-rdoc-0:6.6.3.1-18.fc42. 100% | 3.8 MiB/s | 491.6 KiB | 00m00s [33/70] rubygems-0:3.5.22-18.fc42.noarc 100% | 3.3 MiB/s | 397.1 KiB | 00m00s [34/70] rubygem-builder-0:3.3.0-1.fc41. 100% | 179.2 KiB/s | 18.1 KiB | 00m00s [35/70] rubygem-erubi-0:1.12.0-2.fc41.n 100% | 171.1 KiB/s | 13.7 KiB | 00m00s [36/70] rubygem-rails-dom-testing-0:2.0 100% | 165.6 KiB/s | 16.7 KiB | 00m00s [37/70] rubygem-rails-html-sanitizer-0: 100% | 158.2 KiB/s | 15.7 KiB | 00m00s [38/70] ruby-default-gems-0:3.3.6-18.fc 100% | 444.2 KiB/s | 47.1 KiB | 00m00s [39/70] rubygem-bigdecimal-0:3.1.5-18.f 100% | 818.3 KiB/s | 66.3 KiB | 00m00s [40/70] rubygem-concurrent-ruby-0:1.1.9 100% | 2.5 MiB/s | 263.1 KiB | 00m00s [41/70] rubygem-minitest-0:5.25.1-101.f 100% | 567.7 KiB/s | 52.8 KiB | 00m00s [42/70] rubygem-i18n-0:1.14.6-1.fc42.no 100% | 488.7 KiB/s | 59.6 KiB | 00m00s [43/70] rubygem-tzinfo-0:2.0.6-4.fc41.n 100% | 547.3 KiB/s | 70.6 KiB | 00m00s [44/70] rubygem-websocket-driver-0:0.7. 100% | 354.6 KiB/s | 29.8 KiB | 00m00s [45/70] tzdata-0:2024b-1.fc42.noarch 100% | 5.9 MiB/s | 712.7 KiB | 00m00s [46/70] ruby-bundled-gems-0:3.3.6-18.fc 100% | 1.4 MiB/s | 274.2 KiB | 00m00s [47/70] rubygem-rack-1:2.2.4-8.fc42.noa 100% | 741.1 KiB/s | 103.8 KiB | 00m00s [48/70] rubygem-mail-0:2.8.1-4.fc41.noa 100% | 1.7 MiB/s | 318.9 KiB | 00m00s [49/70] rubygem-globalid-0:1.2.1-1.fc42 100% | 185.7 KiB/s | 18.2 KiB | 00m00s [50/70] rubygem-rack-test-0:1.1.0-11.fc 100% | 168.5 KiB/s | 17.7 KiB | 00m00s [51/70] rubygem-nokogiri-0:1.17.2-1.fc4 100% | 2.4 MiB/s | 302.3 KiB | 00m00s [52/70] rubygem-marcel-0:1.0.2-9.fc41.n 100% | 422.5 KiB/s | 43.9 KiB | 00m00s [53/70] rubygem-mini_mime-0:1.1.0-8.fc4 100% | 185.1 KiB/s | 25.4 KiB | 00m00s [54/70] rubygem-rake-0:13.2.1-201.fc41. 100% | 702.4 KiB/s | 59.7 KiB | 00m00s [55/70] rubygem-method_source-0:1.1.0-1 100% | 88.0 KiB/s | 13.7 KiB | 00m00s [56/70] rubygem-zeitwerk-0:2.6.6-5.fc41 100% | 279.0 KiB/s | 25.7 KiB | 00m00s [57/70] rubygem-thor-0:1.2.1-8.fc42.noa 100% | 374.7 KiB/s | 60.3 KiB | 00m00s [58/70] rubygem-diff-lcs-0:1.5.0-6.fc41 100% | 297.7 KiB/s | 37.5 KiB | 00m00s [59/70] rubygem-io-console-0:0.7.1-18.f 100% | 273.0 KiB/s | 22.4 KiB | 00m00s [60/70] rubygem-psych-0:5.1.2-18.fc42.x 100% | 405.6 KiB/s | 56.0 KiB | 00m00s [61/70] rubygem-websocket-extensions-0: 100% | 147.2 KiB/s | 11.6 KiB | 00m00s [62/70] rubygem-loofah-0:2.22.0-4.fc41. 100% | 222.4 KiB/s | 27.6 KiB | 00m00s [63/70] rubygem-irb-0:1.13.1-18.fc42.no 100% | 1.2 MiB/s | 110.3 KiB | 00m00s [64/70] rubygem-racc-0:1.8.1-100.fc41.x 100% | 573.0 KiB/s | 60.7 KiB | 00m00s [65/70] libxslt-0:1.1.42-2.fc41.x86_64 100% | 1.4 MiB/s | 189.1 KiB | 00m00s [66/70] libyaml-0:0.2.5-15.fc41.x86_64 100% | 571.1 KiB/s | 59.4 KiB | 00m00s [67/70] rubygem-crass-0:1.0.4-16.fc41.n 100% | 208.3 KiB/s | 18.3 KiB | 00m00s [68/70] rubygem-rspec-expectations-0:3. 100% | 2.3 MiB/s | 85.4 KiB | 00m00s [69/70] procps-ng-0:4.0.4-4.fc41.x86_64 100% | 3.7 MiB/s | 366.8 KiB | 00m00s [70/70] rubygem-bundler-0:2.5.22-18.fc4 100% | 4.4 MiB/s | 457.3 KiB | 00m00s -------------------------------------------------------------------------------- [70/70] Total 100% | 3.3 MiB/s | 11.3 MiB | 00m03s Running transaction [ 1/72] Verify package files 100% | 1.5 KiB/s | 70.0 B | 00m00s [ 2/72] Prepare transaction 100% | 786.0 B/s | 70.0 B | 00m00s [ 3/72] Installing ruby-libs-0:3.3.6-18 100% | 178.2 MiB/s | 14.4 MiB | 00m00s [ 4/72] Installing ruby-0:3.3.6-18.fc42 100% | 88.0 MiB/s | 90.1 KiB | 00m00s [ 5/72] Installing rubypick-0:1.1.1-21. 100% | 5.0 MiB/s | 5.1 KiB | 00m00s [ 6/72] Installing procps-ng-0:4.0.4-4. 100% | 130.1 MiB/s | 1.0 MiB | 00m00s [ 7/72] Installing libyaml-0:0.2.5-15.f 100% | 132.6 MiB/s | 135.8 KiB | 00m00s [ 8/72] Installing rubygem-io-console-0 100% | 18.5 MiB/s | 37.9 KiB | 00m00s [ 9/72] Installing rubygems-0:3.5.22-18 100% | 71.0 MiB/s | 1.5 MiB | 00m00s [10/72] Installing ruby-default-gems-0: 100% | 21.6 MiB/s | 88.5 KiB | 00m00s [11/72] Installing rubygem-psych-0:5.1. 100% | 35.0 MiB/s | 143.3 KiB | 00m00s [12/72] Installing rubygem-rspec-suppor 100% | 38.3 MiB/s | 117.7 KiB | 00m00s [13/72] Installing rubygem-json-0:2.7.5 100% | 42.8 MiB/s | 175.1 KiB | 00m00s [14/72] Installing rubygem-concurrent-r 100% | 70.5 MiB/s | 721.5 KiB | 00m00s [15/72] Installing rubygem-rdoc-0:6.6.3 100% | 108.7 MiB/s | 1.8 MiB | 00m00s [16/72] Installing rubygem-rspec-core-0 100% | 86.3 MiB/s | 618.3 KiB | 00m00s [17/72] Installing rubygem-rack-1:2.2.4 100% | 52.0 MiB/s | 319.3 KiB | 00m00s [18/72] Installing rubygem-nio4r-0:2.6. 100% | 57.8 MiB/s | 118.4 KiB | 00m00s [19/72] Installing rubygem-mini_mime-0: 100% | 107.2 MiB/s | 219.6 KiB | 00m00s [20/72] Installing rubygem-diff-lcs-0:1 100% | 50.4 MiB/s | 103.3 KiB | 00m00s [21/72] Installing rubygem-rspec-mocks- 100% | 75.8 MiB/s | 310.5 KiB | 00m00s [22/72] Installing rubygem-rspec-expect 100% | 84.0 MiB/s | 343.9 KiB | 00m00s [23/72] Installing rubygem-rack-test-0: 100% | 30.6 MiB/s | 31.3 KiB | 00m00s [24/72] Installing rubygem-irb-0:1.13.1 100% | 33.1 MiB/s | 305.0 KiB | 00m00s [25/72] Installing ruby-bundled-gems-0: 100% | 97.6 MiB/s | 1.2 MiB | 00m00s [26/72] Installing rubygem-mail-0:2.8.1 100% | 212.6 MiB/s | 3.6 MiB | 00m00s [27/72] Installing rubygem-i18n-0:1.14. 100% | 42.1 MiB/s | 172.6 KiB | 00m00s [28/72] Installing rubygem-tzinfo-0:2.0 100% | 70.5 MiB/s | 288.7 KiB | 00m00s [29/72] Installing rubygem-builder-0:3. 100% | 28.8 MiB/s | 29.5 KiB | 00m00s [30/72] Installing rubygem-erubi-0:1.12 100% | 16.4 MiB/s | 16.7 KiB | 00m00s [31/72] Installing rubygem-bigdecimal-0 100% | 65.5 MiB/s | 134.1 KiB | 00m00s [32/72] Installing rubygem-minitest-0:5 100% | 75.0 MiB/s | 153.7 KiB | 00m00s [33/72] Installing rubygem-marcel-0:1.0 100% | 85.4 MiB/s | 175.0 KiB | 00m00s [34/72] Installing rubygem-method_sourc 100% | 18.1 MiB/s | 18.5 KiB | 00m00s [35/72] Installing rubygem-rake-0:13.2. 100% | 34.7 MiB/s | 142.2 KiB | 00m00s [36/72] Installing rubygem-thor-0:1.2.1 100% | 44.4 MiB/s | 182.0 KiB | 00m00s [37/72] Installing rubygem-zeitwerk-0:2 100% | 30.4 MiB/s | 62.3 KiB | 00m00s [38/72] Installing rubygem-websocket-ex 100% | 10.2 MiB/s | 10.5 KiB | 00m00s [39/72] Installing rubygem-websocket-dr 100% | 18.9 MiB/s | 58.2 KiB | 00m00s [40/72] Installing rubygem-racc-0:1.8.1 100% | 64.1 MiB/s | 196.8 KiB | 00m00s [41/72] Installing rubygem-crass-0:1.0. 100% | 21.6 MiB/s | 44.2 KiB | 00m00s [42/72] Installing rubygem-bundler-0:2. 100% | 51.9 MiB/s | 1.5 MiB | 00m00s [43/72] Installing libxslt-0:1.1.42-2.f 100% | 118.7 MiB/s | 486.2 KiB | 00m00s [44/72] Installing rubygem-nokogiri-0:1 100% | 93.5 MiB/s | 1.0 MiB | 00m00s [45/72] Installing rubygem-loofah-0:2.2 100% | 36.6 MiB/s | 74.9 KiB | 00m00s [46/72] Installing rubygem-rails-html-s 100% | 5.3 MiB/s | 27.1 KiB | 00m00s [47/72] Installing tzdata-0:2024b-1.fc4 100% | 24.8 MiB/s | 1.9 MiB | 00m00s [48/72] Installing rubygem-activesuppor 100% | 41.3 MiB/s | 889.0 KiB | 00m00s [49/72] Installing rubygem-rails-dom-te 100% | 12.8 MiB/s | 26.3 KiB | 00m00s [50/72] Installing rubygem-actionview-0 100% | 67.1 MiB/s | 755.9 KiB | 00m00s [51/72] Installing rubygem-actionpack-1 100% | 56.2 MiB/s | 863.1 KiB | 00m00s [52/72] Installing rubygem-railties-0:7 100% | 13.9 MiB/s | 611.1 KiB | 00m00s [53/72] Installing rubygem-activemodel- 100% | 40.2 MiB/s | 247.2 KiB | 00m00s [54/72] Installing rubygem-activerecord 100% | 66.7 MiB/s | 1.9 MiB | 00m00s [55/72] Installing rubygem-globalid-0:1 100% | 32.4 MiB/s | 33.1 KiB | 00m00s [56/72] Installing rubygem-activejob-0: 100% | 29.4 MiB/s | 120.5 KiB | 00m00s [57/72] Installing rubygem-activestorag 100% | 25.6 MiB/s | 262.2 KiB | 00m00s [58/72] Installing rubygem-actionmailbo 100% | 8.3 MiB/s | 34.1 KiB | 00m00s [59/72] Installing rubygem-actiontext-0 100% | 53.4 MiB/s | 437.8 KiB | 00m00s [60/72] Installing rubygem-actionmailer 100% | 30.2 MiB/s | 92.9 KiB | 00m00s [61/72] Installing rubygem-actioncable- 100% | 29.8 MiB/s | 183.3 KiB | 00m00s [62/72] Installing rubygem-rails-1:7.0. 100% | 3.8 MiB/s | 3.9 KiB | 00m00s [63/72] Installing rubygem-rspec-rails- 100% | 19.8 MiB/s | 222.9 KiB | 00m00s [64/72] Installing rubygem-rails-contro 100% | 14.3 MiB/s | 14.6 KiB | 00m00s [65/72] Installing rubygem-jbuilder-0:2 100% | 19.3 MiB/s | 39.6 KiB | 00m00s [66/72] Installing rubygem-rspec-0:3.13 100% | 7.7 MiB/s | 7.9 KiB | 00m00s [67/72] Installing rubygem-puma-0:6.4.2 100% | 56.5 MiB/s | 347.3 KiB | 00m00s [68/72] Installing rubygems-devel-0:3.5 100% | 13.0 MiB/s | 13.3 KiB | 00m00s [69/72] Installing rubygem-bcrypt-0:3.1 100% | 40.1 MiB/s | 41.1 KiB | 00m00s [70/72] Installing rubygem-shoulda-cont 100% | 17.0 MiB/s | 34.9 KiB | 00m00s [71/72] Installing rubygem-spring-0:4.1 100% | 19.2 MiB/s | 78.8 KiB | 00m00s [72/72] Installing rubygem-sqlite3-0:1. 100% | 2.6 MiB/s | 117.4 KiB | 00m00s Warning: skipped OpenPGP checks for 1 package from repository: copr_base Complete! Finish: build setup for rubygem-shoulda-matchers-5.1.0-8.fc42.src.rpm Start: rpmbuild rubygem-shoulda-matchers-5.1.0-8.fc42.src.rpm Building target platforms: x86_64 Building for target x86_64 setting SOURCE_DATE_EPOCH=1733356800 Executing(%mkbuilddir): /bin/sh -e /var/tmp/rpm-tmp.Y188Vw + umask 022 + cd /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build + test -d /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build + /usr/bin/chmod -Rf a+rX,u+w,g-w,o-w /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build + /usr/bin/rm -rf /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build + /usr/bin/mkdir -p /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build + /usr/bin/mkdir -p /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/SPECPARTS + RPM_EC=0 ++ jobs -p + exit 0 Executing(%prep): /bin/sh -e /var/tmp/rpm-tmp.j9d5nD + umask 022 + cd /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build + cd /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build + rm -rf shoulda-matchers-5.1.0 + /usr/lib/rpm/rpmuncompress -x /builddir/build/SOURCES/shoulda-matchers-5.1.0-specs.tar.gz + STATUS=0 + '[' 0 -ne 0 ']' + /usr/lib/rpm/rpmuncompress -x /builddir/build/SOURCES/shoulda-matchers-5.1.0.gem Unpacked gem: '/builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0' + STATUS=0 + '[' 0 -ne 0 ']' + cd shoulda-matchers-5.1.0 + /usr/bin/chmod -Rf a+rX,u+w,g-w,o-w . Patch #4 (rubygem-shoulda-matchers-5.1.0-Address-differences-in-has_secure_password-in-Rails-7.patch): + echo 'Patch #4 (rubygem-shoulda-matchers-5.1.0-Address-differences-in-has_secure_password-in-Rails-7.patch):' + /usr/bin/patch --no-backup-if-mismatch -f -p1 --fuzz=0 patching file lib/shoulda/matchers/active_model/validate_presence_of_matcher.rb patching file lib/shoulda/matchers/rails_shim.rb Patch #8 (rubygem-shoulda-matchers-pr1579-ruby33-NoMethodError-msg.patch): + echo 'Patch #8 (rubygem-shoulda-matchers-pr1579-ruby33-NoMethodError-msg.patch):' + /usr/bin/patch --no-backup-if-mismatch -f -p1 --fuzz=0 patching file lib/shoulda/matchers/independent/delegate_method_matcher.rb Patch #11 (rubygem-shoulda-matchers-6.4.0-Add-Ruby-3.4-support.patch): + echo 'Patch #11 (rubygem-shoulda-matchers-6.4.0-Add-Ruby-3.4-support.patch):' + /usr/bin/patch --no-backup-if-mismatch -f -p1 --fuzz=0 patching file lib/shoulda/matchers/independent/delegate_method_matcher.rb ~/build/BUILD/rubygem-shoulda-matchers-5.1.0-build ~/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0 Patch #0 (rubygem-shoulda-matchers-5.1.0-Skip-bootsnap-on-the-test-project-creation.patch): + pushd /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build + echo 'Patch #0 (rubygem-shoulda-matchers-5.1.0-Skip-bootsnap-on-the-test-project-creation.patch):' + /usr/bin/patch --no-backup-if-mismatch -f -p1 --fuzz=0 patching file spec/support/acceptance/helpers/step_helpers.rb patching file spec/support/unit/rails_application.rb patching file spec/support/unit/rails_application.rb patching file spec/support/acceptance/helpers/step_helpers.rb patching file spec/support/unit/rails_application.rb Patch #1 (rubygem-shoulda-matchers-5.1.0-Only-mark-classes-as-unloadable-when-Rails-supports-it.patch): + echo 'Patch #1 (rubygem-shoulda-matchers-5.1.0-Only-mark-classes-as-unloadable-when-Rails-supports-it.patch):' + /usr/bin/patch --no-backup-if-mismatch -f -p1 --fuzz=0 patching file spec/support/unit/helpers/class_builder.rb Patch #2 (rubygem-shoulda-matchers-5.1.0-conditionally-use-unloadable-in-another-spot.patch): + echo 'Patch #2 (rubygem-shoulda-matchers-5.1.0-conditionally-use-unloadable-in-another-spot.patch):' + /usr/bin/patch --no-backup-if-mismatch -f -p1 --fuzz=0 patching file spec/support/unit/helpers/class_builder.rb Patch #3 (rubygem-shoulda-matchers-5.1.0-Use-a-hard-coded-DateTime-instead-of-DateTime.now-1.patch): + echo 'Patch #3 (rubygem-shoulda-matchers-5.1.0-Use-a-hard-coded-DateTime-instead-of-DateTime.now-1.patch):' + /usr/bin/patch --no-backup-if-mismatch -f -p1 --fuzz=0 patching file spec/unit/shoulda/matchers/active_model/validate_inclusion_of_matcher_spec.rb Patch #5 (rubygem-shoulda-matchers-5.1.0-Address-differences-in-has_secure_password-in-Rails-7-test.patch): + echo 'Patch #5 (rubygem-shoulda-matchers-5.1.0-Address-differences-in-has_secure_password-in-Rails-7-test.patch):' + /usr/bin/patch --no-backup-if-mismatch -f -p1 --fuzz=0 patching file spec/unit/shoulda/matchers/active_model/validate_presence_of_matcher_spec.rb Patch #6 (rubygem-shoulda-matchers-5.1.0-Using-local-gems-should-be-enough-for-testing.patch): + echo 'Patch #6 (rubygem-shoulda-matchers-5.1.0-Using-local-gems-should-be-enough-for-testing.patch):' + /usr/bin/patch --no-backup-if-mismatch -f -p1 --fuzz=0 patching file spec/support/acceptance/helpers/step_helpers.rb Hunk #1 succeeded at 118 (offset 2 lines). + echo 'Patch #7 (rubygem-shoulda-matchers-5.1.0-Always-use-sqlite-1.4.patch):' Patch #7 (rubygem-shoulda-matchers-5.1.0-Always-use-sqlite-1.4.patch): + /usr/bin/patch --no-backup-if-mismatch -f -p1 --fuzz=0 patching file spec/support/acceptance/helpers/step_helpers.rb Patch #9 (rubygem-shoulda-matchers-pr1506-action_text_rich_texts.patch): + echo 'Patch #9 (rubygem-shoulda-matchers-pr1506-action_text_rich_texts.patch):' + /usr/bin/patch --no-backup-if-mismatch -f -p1 --fuzz=0 patching file spec/support/unit/rails_application.rb Patch #10 (rubygem-shoulda-matchers-pr1506-psych-load.patch): + echo 'Patch #10 (rubygem-shoulda-matchers-pr1506-psych-load.patch):' + /usr/bin/patch --no-backup-if-mismatch -f -p1 --fuzz=0 patching file spec/support/tests/database_configuration.rb Patch #12 (rubygem-shoulda-matchers-6.4.0-Add-Ruby-3.4-support-spec.patch): + echo 'Patch #12 (rubygem-shoulda-matchers-6.4.0-Add-Ruby-3.4-support-spec.patch):' + /usr/bin/patch --no-backup-if-mismatch -f -p1 --fuzz=0 patching file spec/unit/shoulda/matchers/independent/delegate_method_matcher_spec.rb + popd ~/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0 + RPM_EC=0 ++ jobs -p + exit 0 Executing(%build): /bin/sh -e /var/tmp/rpm-tmp.vsoHgr + umask 022 + cd /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build + CFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -mtls-dialect=gnu2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer ' + export CFLAGS + CXXFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -mtls-dialect=gnu2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer ' + export CXXFLAGS + FFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -mtls-dialect=gnu2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -I/usr/lib64/gfortran/modules ' + export FFLAGS + FCFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -mtls-dialect=gnu2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -I/usr/lib64/gfortran/modules ' + export FCFLAGS + VALAFLAGS=-g + export VALAFLAGS + RUSTFLAGS='-Copt-level=3 -Cdebuginfo=2 -Ccodegen-units=1 -Cstrip=none -Cforce-frame-pointers=yes -Clink-arg=-specs=/usr/lib/rpm/redhat/redhat-package-notes --cap-lints=warn' + export RUSTFLAGS + LDFLAGS='-Wl,-z,relro -Wl,--as-needed -Wl,-z,pack-relative-relocs -Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -Wl,--build-id=sha1 -specs=/usr/lib/rpm/redhat/redhat-package-notes ' + export LDFLAGS + LT_SYS_LIBRARY_PATH=/usr/lib64: + export LT_SYS_LIBRARY_PATH + CC=gcc + export CC + CXX=g++ + export CXX + cd shoulda-matchers-5.1.0 + gem build ../shoulda-matchers-5.1.0.gemspec WARNING: expected RubyGems version 3.5.22, was 3.2.32 WARNING: open-ended dependency on activesupport (>= 5.2.0) is not recommended if activesupport is semantically versioned, use: add_runtime_dependency "activesupport", "~> 5.2", ">= 5.2.0" WARNING: See https://guides.rubygems.org/specification-reference/ for help Successfully built RubyGem Name: shoulda-matchers Version: 5.1.0 File: shoulda-matchers-5.1.0.gem + mkdir -p ./usr/share/gems + CONFIGURE_ARGS='--with-cflags='\''-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wno-complain-wrong-lang -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -mtls-dialect=gnu2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer'\'' --with-cxxflags='\''-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wno-complain-wrong-lang -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -mtls-dialect=gnu2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer'\'' --with-ldflags='\''-Wl,-z,relro -Wl,--as-needed -Wl,-z,pack-relative-relocs -Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -Wl,--build-id=sha1 '\'' ' + gem install -V --local --build-root . --force --document=ri,rdoc shoulda-matchers-5.1.0.gem WARNING: You build with buildroot. Build root: /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0 Bin dir: /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/bin Gem home: /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems Plugins dir: /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/plugins /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/LICENSE /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/README.md /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/docs/errors/NonCaseSwappableValueError.md /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda-matchers.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/action_controller.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/action_controller/callback_matcher.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/action_controller/filter_param_matcher.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/action_controller/flash_store.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/action_controller/permit_matcher.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/action_controller/redirect_to_matcher.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/action_controller/render_template_matcher.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/action_controller/render_with_layout_matcher.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/action_controller/rescue_from_matcher.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/action_controller/respond_with_matcher.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/action_controller/route_matcher.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/action_controller/route_params.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/action_controller/session_store.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/action_controller/set_flash_matcher.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/action_controller/set_session_matcher.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/action_controller/set_session_or_flash_matcher.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/active_model.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/active_model/allow_value_matcher.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/active_model/allow_value_matcher/attribute_changed_value_error.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/active_model/allow_value_matcher/attribute_does_not_exist_error.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/active_model/allow_value_matcher/attribute_setter.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/active_model/allow_value_matcher/attribute_setter_and_validator.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/active_model/allow_value_matcher/attribute_setters.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/active_model/allow_value_matcher/attribute_setters_and_validators.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/active_model/allow_value_matcher/successful_check.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/active_model/allow_value_matcher/successful_setting.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/active_model/disallow_value_matcher.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/active_model/errors.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/active_model/have_secure_password_matcher.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/active_model/helpers.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/active_model/numericality_matchers.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/active_model/numericality_matchers/comparison_matcher.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/active_model/numericality_matchers/even_number_matcher.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/active_model/numericality_matchers/numeric_type_matcher.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/active_model/numericality_matchers/odd_number_matcher.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/active_model/numericality_matchers/only_integer_matcher.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/active_model/qualifiers.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/active_model/qualifiers/allow_nil.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/active_model/qualifiers/ignore_interference_by_writer.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/active_model/qualifiers/ignoring_interference_by_writer.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/active_model/validate_absence_of_matcher.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/active_model/validate_acceptance_of_matcher.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/active_model/validate_confirmation_of_matcher.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/active_model/validate_exclusion_of_matcher.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/active_model/validate_inclusion_of_matcher.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/active_model/validate_length_of_matcher.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/active_model/validate_numericality_of_matcher.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/active_model/validate_presence_of_matcher.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/active_model/validation_matcher.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/active_model/validation_matcher/build_description.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/active_model/validation_message_finder.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/active_model/validator.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/active_record.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/active_record/accept_nested_attributes_for_matcher.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/active_record/association_matcher.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/active_record/association_matchers.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/active_record/association_matchers/counter_cache_matcher.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/active_record/association_matchers/dependent_matcher.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/active_record/association_matchers/inverse_of_matcher.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/active_record/association_matchers/join_table_matcher.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/active_record/association_matchers/model_reflection.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/active_record/association_matchers/model_reflector.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/active_record/association_matchers/option_verifier.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/active_record/association_matchers/optional_matcher.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/active_record/association_matchers/order_matcher.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/active_record/association_matchers/required_matcher.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/active_record/association_matchers/source_matcher.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/active_record/association_matchers/through_matcher.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/active_record/define_enum_for_matcher.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/active_record/have_attached_matcher.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/active_record/have_db_column_matcher.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/active_record/have_db_index_matcher.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/active_record/have_implicit_order_column.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/active_record/have_readonly_attribute_matcher.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/active_record/have_rich_text_matcher.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/active_record/have_secure_token_matcher.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/active_record/serialize_matcher.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/active_record/uniqueness.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/active_record/uniqueness/model.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/active_record/uniqueness/namespace.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/active_record/uniqueness/test_model_creator.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/active_record/uniqueness/test_models.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/active_record/validate_uniqueness_of_matcher.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/configuration.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/doublespeak.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/doublespeak/double.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/doublespeak/double_collection.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/doublespeak/double_implementation_registry.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/doublespeak/method_call.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/doublespeak/object_double.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/doublespeak/proxy_implementation.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/doublespeak/stub_implementation.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/doublespeak/world.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/error.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/independent.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/independent/delegate_method_matcher.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/independent/delegate_method_matcher/target_not_defined_error.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/integrations.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/integrations/configuration.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/integrations/configuration_error.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/integrations/inclusion.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/integrations/libraries.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/integrations/libraries/action_controller.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/integrations/libraries/active_model.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/integrations/libraries/active_record.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/integrations/libraries/missing_library.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/integrations/libraries/rails.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/integrations/libraries/routing.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/integrations/rails.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/integrations/registry.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/integrations/test_frameworks.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/integrations/test_frameworks/active_support_test_case.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/integrations/test_frameworks/minitest_4.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/integrations/test_frameworks/minitest_5.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/integrations/test_frameworks/missing_test_framework.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/integrations/test_frameworks/rspec.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/integrations/test_frameworks/test_unit.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/matcher_context.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/rails_shim.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/routing.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/util.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/util/word_wrap.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/version.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/lib/shoulda/matchers/warn.rb /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/shoulda-matchers.gemspec Successfully installed shoulda-matchers-5.1.0 Parsing documentation for shoulda-matchers-5.1.0 Parsing sources... 0% [ 1/126] lib/shoulda-matchers.rb 1% [ 2/126] lib/shoulda/matchers.rb 2% [ 3/126] lib/shoulda/matchers/action_controller.rb 3% [ 4/126] lib/shoulda/matchers/action_controller/callback_matcher.rb 3% [ 5/126] lib/shoulda/matchers/action_controller/filter_param_matcher.rb 4% [ 6/126] lib/shoulda/matchers/action_controller/flash_store.rb 5% [ 7/126] lib/shoulda/matchers/action_controller/permit_matcher.rb 6% [ 8/126] lib/shoulda/matchers/action_controller/redirect_to_matcher.rb 7% [ 9/126] lib/shoulda/matchers/action_controller/render_template_matcher.rb 7% [10/126] lib/shoulda/matchers/action_controller/render_with_layout_matcher.rb 8% [11/126] lib/shoulda/matchers/action_controller/rescue_from_matcher.rb 9% [12/126] lib/shoulda/matchers/action_controller/respond_with_matcher.rb 10% [13/126] lib/shoulda/matchers/action_controller/route_matcher.rb 11% [14/126] lib/shoulda/matchers/action_controller/route_params.rb 11% [15/126] lib/shoulda/matchers/action_controller/session_store.rb 12% [16/126] lib/shoulda/matchers/action_controller/set_flash_matcher.rb 13% [17/126] lib/shoulda/matchers/action_controller/set_session_matcher.rb 14% [18/126] lib/shoulda/matchers/action_controller/set_session_or_flash_matcher.rb 15% [19/126] lib/shoulda/matchers/active_model.rb 15% [20/126] lib/shoulda/matchers/active_model/allow_value_matcher.rb 16% [21/126] lib/shoulda/matchers/active_model/allow_value_matcher/attribute_changed_value_error.rb 17% [22/126] lib/shoulda/matchers/active_model/allow_value_matcher/attribute_does_not_exist_error.rb 18% [23/126] lib/shoulda/matchers/active_model/allow_value_matcher/attribute_setter.rb 19% [24/126] lib/shoulda/matchers/active_model/allow_value_matcher/attribute_setter_and_validator.rb 19% [25/126] lib/shoulda/matchers/active_model/allow_value_matcher/attribute_setters.rb 20% [26/126] lib/shoulda/matchers/active_model/allow_value_matcher/attribute_setters_and_validators.rb 21% [27/126] lib/shoulda/matchers/active_model/allow_value_matcher/successful_check.rb 22% [28/126] lib/shoulda/matchers/active_model/allow_value_matcher/successful_setting.rb 23% [29/126] lib/shoulda/matchers/active_model/disallow_value_matcher.rb 23% [30/126] lib/shoulda/matchers/active_model/errors.rb 24% [31/126] lib/shoulda/matchers/active_model/have_secure_password_matcher.rb 25% [32/126] lib/shoulda/matchers/active_model/helpers.rb 26% [33/126] lib/shoulda/matchers/active_model/numericality_matchers.rb 26% [34/126] lib/shoulda/matchers/active_model/numericality_matchers/comparison_matcher.rb 27% [35/126] lib/shoulda/matchers/active_model/numericality_matchers/even_number_matcher.rb 28% [36/126] lib/shoulda/matchers/active_model/numericality_matchers/numeric_type_matcher.rb 29% [37/126] lib/shoulda/matchers/active_model/numericality_matchers/odd_number_matcher.rb 30% [38/126] lib/shoulda/matchers/active_model/numericality_matchers/only_integer_matcher.rb 30% [39/126] lib/shoulda/matchers/active_model/qualifiers.rb 31% [40/126] lib/shoulda/matchers/active_model/qualifiers/allow_nil.rb 32% [41/126] lib/shoulda/matchers/active_model/qualifiers/ignore_interference_by_writer.rb 33% [42/126] lib/shoulda/matchers/active_model/qualifiers/ignoring_interference_by_writer.rb 34% [43/126] lib/shoulda/matchers/active_model/validate_absence_of_matcher.rb 34% [44/126] lib/shoulda/matchers/active_model/validate_acceptance_of_matcher.rb 35% [45/126] lib/shoulda/matchers/active_model/validate_confirmation_of_matcher.rb 36% [46/126] lib/shoulda/matchers/active_model/validate_exclusion_of_matcher.rb 37% [47/126] lib/shoulda/matchers/active_model/validate_inclusion_of_matcher.rb 38% [48/126] lib/shoulda/matchers/active_model/validate_length_of_matcher.rb 38% [49/126] lib/shoulda/matchers/active_model/validate_numericality_of_matcher.rb 39% [50/126] lib/shoulda/matchers/active_model/validate_presence_of_matcher.rb 40% [51/126] lib/shoulda/matchers/active_model/validation_matcher.rb 41% [52/126] lib/shoulda/matchers/active_model/validation_matcher/build_description.rb 42% [53/126] lib/shoulda/matchers/active_model/validation_message_finder.rb 42% [54/126] lib/shoulda/matchers/active_model/validator.rb 43% [55/126] lib/shoulda/matchers/active_record.rb 44% [56/126] lib/shoulda/matchers/active_record/accept_nested_attributes_for_matcher.rb 45% [57/126] lib/shoulda/matchers/active_record/association_matcher.rb 46% [58/126] lib/shoulda/matchers/active_record/association_matchers.rb 46% [59/126] lib/shoulda/matchers/active_record/association_matchers/counter_cache_matcher.rb 47% [60/126] lib/shoulda/matchers/active_record/association_matchers/dependent_matcher.rb 48% [61/126] lib/shoulda/matchers/active_record/association_matchers/inverse_of_matcher.rb 49% [62/126] lib/shoulda/matchers/active_record/association_matchers/join_table_matcher.rb 50% [63/126] lib/shoulda/matchers/active_record/association_matchers/model_reflection.rb 50% [64/126] lib/shoulda/matchers/active_record/association_matchers/model_reflector.rb 51% [65/126] lib/shoulda/matchers/active_record/association_matchers/option_verifier.rb 52% [66/126] lib/shoulda/matchers/active_record/association_matchers/optional_matcher.rb 53% [67/126] lib/shoulda/matchers/active_record/association_matchers/order_matcher.rb 53% [68/126] lib/shoulda/matchers/active_record/association_matchers/required_matcher.rb 54% [69/126] lib/shoulda/matchers/active_record/association_matchers/source_matcher.rb 55% [70/126] lib/shoulda/matchers/active_record/association_matchers/through_matcher.rb 56% [71/126] lib/shoulda/matchers/active_record/define_enum_for_matcher.rb 57% [72/126] lib/shoulda/matchers/active_record/have_attached_matcher.rb 57% [73/126] lib/shoulda/matchers/active_record/have_db_column_matcher.rb 58% [74/126] lib/shoulda/matchers/active_record/have_db_index_matcher.rb 59% [75/126] lib/shoulda/matchers/active_record/have_implicit_order_column.rb 60% [76/126] lib/shoulda/matchers/active_record/have_readonly_attribute_matcher.rb 61% [77/126] lib/shoulda/matchers/active_record/have_rich_text_matcher.rb 61% [78/126] lib/shoulda/matchers/active_record/have_secure_token_matcher.rb 62% [79/126] lib/shoulda/matchers/active_record/serialize_matcher.rb 63% [80/126] lib/shoulda/matchers/active_record/uniqueness.rb 64% [81/126] lib/shoulda/matchers/active_record/uniqueness/model.rb 65% [82/126] lib/shoulda/matchers/active_record/uniqueness/namespace.rb 65% [83/126] lib/shoulda/matchers/active_record/uniqueness/test_model_creator.rb 66% [84/126] lib/shoulda/matchers/active_record/uniqueness/test_models.rb 67% [85/126] lib/shoulda/matchers/active_record/validate_uniqueness_of_matcher.rb 68% [86/126] lib/shoulda/matchers/configuration.rb 69% [87/126] lib/shoulda/matchers/doublespeak.rb 69% [88/126] lib/shoulda/matchers/doublespeak/double.rb 70% [89/126] lib/shoulda/matchers/doublespeak/double_collection.rb 71% [90/126] lib/shoulda/matchers/doublespeak/double_implementation_registry.rb 72% [91/126] lib/shoulda/matchers/doublespeak/method_call.rb 73% [92/126] lib/shoulda/matchers/doublespeak/object_double.rb 73% [93/126] lib/shoulda/matchers/doublespeak/proxy_implementation.rb 74% [94/126] lib/shoulda/matchers/doublespeak/stub_implementation.rb 75% [95/126] lib/shoulda/matchers/doublespeak/world.rb 76% [96/126] lib/shoulda/matchers/error.rb 76% [97/126] lib/shoulda/matchers/independent.rb 77% [98/126] lib/shoulda/matchers/independent/delegate_method_matcher.rb 78% [99/126] lib/shoulda/matchers/independent/delegate_method_matcher/target_not_defined_error.rb 79% [100/126] lib/shoulda/matchers/integrations.rb 80% [101/126] lib/shoulda/matchers/integrations/configuration.rb 80% [102/126] lib/shoulda/matchers/integrations/configuration_error.rb 81% [103/126] lib/shoulda/matchers/integrations/inclusion.rb 82% [104/126] lib/shoulda/matchers/integrations/libraries.rb 83% [105/126] lib/shoulda/matchers/integrations/libraries/action_controller.rb 84% [106/126] lib/shoulda/matchers/integrations/libraries/active_model.rb 84% [107/126] lib/shoulda/matchers/integrations/libraries/active_record.rb 85% [108/126] lib/shoulda/matchers/integrations/libraries/missing_library.rb 86% [109/126] lib/shoulda/matchers/integrations/libraries/rails.rb 87% [110/126] lib/shoulda/matchers/integrations/libraries/routing.rb 88% [111/126] lib/shoulda/matchers/integrations/rails.rb 88% [112/126] lib/shoulda/matchers/integrations/registry.rb 89% [113/126] lib/shoulda/matchers/integrations/test_frameworks.rb 90% [114/126] lib/shoulda/matchers/integrations/test_frameworks/active_support_test_case.rb 91% [115/126] lib/shoulda/matchers/integrations/test_frameworks/minitest_4.rb 92% [116/126] lib/shoulda/matchers/integrations/test_frameworks/minitest_5.rb 92% [117/126] lib/shoulda/matchers/integrations/test_frameworks/missing_test_framework.rb 93% [118/126] lib/shoulda/matchers/integrations/test_frameworks/rspec.rb 94% [119/126] lib/shoulda/matchers/integrations/test_frameworks/test_unit.rb 95% [120/126] lib/shoulda/matchers/matcher_context.rb 96% [121/126] lib/shoulda/matchers/rails_shim.rb 96% [122/126] lib/shoulda/matchers/routing.rb 97% [123/126] lib/shoulda/matchers/util.rb 98% [124/126] lib/shoulda/matchers/util/word_wrap.rb 99% [125/126] lib/shoulda/matchers/version.rb 100% [126/126] lib/shoulda/matchers/warn.rb Installing ri documentation for shoulda-matchers-5.1.0 Installing darkfish documentation for shoulda-matchers-5.1.0 Done installing documentation for shoulda-matchers after 2 seconds 1 gem installed + RPM_EC=0 ++ jobs -p + exit 0 Executing(%install): /bin/sh -e /var/tmp/rpm-tmp.FQehBm + umask 022 + cd /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build + '[' /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/BUILDROOT '!=' / ']' + rm -rf /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/BUILDROOT ++ dirname /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/BUILDROOT + mkdir -p /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build + mkdir /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/BUILDROOT + CFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -mtls-dialect=gnu2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer ' + export CFLAGS + CXXFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -mtls-dialect=gnu2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer ' + export CXXFLAGS + FFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -mtls-dialect=gnu2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -I/usr/lib64/gfortran/modules ' + export FFLAGS + FCFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -mtls-dialect=gnu2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -I/usr/lib64/gfortran/modules ' + export FCFLAGS + VALAFLAGS=-g + export VALAFLAGS + RUSTFLAGS='-Copt-level=3 -Cdebuginfo=2 -Ccodegen-units=1 -Cstrip=none -Cforce-frame-pointers=yes -Clink-arg=-specs=/usr/lib/rpm/redhat/redhat-package-notes --cap-lints=warn' + export RUSTFLAGS + LDFLAGS='-Wl,-z,relro -Wl,--as-needed -Wl,-z,pack-relative-relocs -Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -Wl,--build-id=sha1 -specs=/usr/lib/rpm/redhat/redhat-package-notes ' + export LDFLAGS + LT_SYS_LIBRARY_PATH=/usr/lib64: + export LT_SYS_LIBRARY_PATH + CC=gcc + export CC + CXX=g++ + export CXX + cd shoulda-matchers-5.1.0 + mkdir -p /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/BUILDROOT/usr/share/gems + cp -a ./usr/share/gems/build_info ./usr/share/gems/cache ./usr/share/gems/doc ./usr/share/gems/extensions ./usr/share/gems/gems ./usr/share/gems/plugins ./usr/share/gems/specifications /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/BUILDROOT/usr/share/gems/ + /usr/lib/rpm/check-buildroot + /usr/lib/rpm/redhat/brp-ldconfig + /usr/lib/rpm/brp-compress + /usr/lib/rpm/brp-strip /usr/bin/strip + /usr/lib/rpm/brp-strip-comment-note /usr/bin/strip /usr/bin/objdump + /usr/lib/rpm/redhat/brp-strip-lto /usr/bin/strip + /usr/lib/rpm/brp-strip-static-archive /usr/bin/strip + /usr/lib/rpm/check-rpaths + /usr/lib/rpm/redhat/brp-mangle-shebangs + /usr/lib/rpm/brp-remove-la-files + env /usr/lib/rpm/redhat/brp-python-bytecompile '' 1 0 -j2 + /usr/lib/rpm/redhat/brp-python-hardlink + /usr/bin/add-determinism --brp -j2 /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/BUILDROOT Scanned 205 directories and 1908 files, processed 144 inodes, 0 modified (0 replaced + 0 rewritten), 0 unsupported format, 0 errors Executing(%check): /bin/sh -e /var/tmp/rpm-tmp.2mYeLI + umask 022 + cd /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build + CFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -mtls-dialect=gnu2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer ' + export CFLAGS + CXXFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -mtls-dialect=gnu2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer ' + export CXXFLAGS + FFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -mtls-dialect=gnu2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -I/usr/lib64/gfortran/modules ' + export FFLAGS + FCFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -mtls-dialect=gnu2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -I/usr/lib64/gfortran/modules ' + export FCFLAGS + VALAFLAGS=-g + export VALAFLAGS + RUSTFLAGS='-Copt-level=3 -Cdebuginfo=2 -Ccodegen-units=1 -Cstrip=none -Cforce-frame-pointers=yes -Clink-arg=-specs=/usr/lib/rpm/redhat/redhat-package-notes --cap-lints=warn' + export RUSTFLAGS + LDFLAGS='-Wl,-z,relro -Wl,--as-needed -Wl,-z,pack-relative-relocs -Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -Wl,--build-id=sha1 -specs=/usr/lib/rpm/redhat/redhat-package-notes ' + export LDFLAGS + LT_SYS_LIBRARY_PATH=/usr/lib64: + export LT_SYS_LIBRARY_PATH + CC=gcc + export CC + CXX=g++ + export CXX + cd shoulda-matchers-5.1.0 ~/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0 ~/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0 + pushd ./usr/share/gems/gems/shoulda-matchers-5.1.0 + ln -s /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/spec spec + cat + sed -i '/require '\''pry/ s/^/#/' spec/spec_helper.rb + sed -i '/current_bundle/ s/^/#/' spec/acceptance_spec_helper.rb spec/support/unit/load_environment.rb + sed -i '/CurrentBundle/ s/^/#/' spec/acceptance_spec_helper.rb spec/support/unit/load_environment.rb + sed -i '/def rails_new_command/,/^ end$/ { /rails new/ s/"$/ --skip-git --skip-asset-pipeline&/ }' spec/support/unit/rails_application.rb + sed -i '/def rails_new_command/,/^ end$/ { /rails new/ s/"$/ --skip-git --skip-asset-pipeline&/ }' spec/support/acceptance/helpers/step_helpers.rb + bundle exec rspec spec/unit /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/spec/unit/shoulda/matchers/active_model/validate_inclusion_of_matcher_spec.rb:451: warning: assigned but unused variable - new_now /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/shoulda-matchers-5.1.0/usr/share/gems/gems/shoulda-matchers-5.1.0/spec/unit/shoulda/matchers/active_model/validate_presence_of_matcher_spec.rb:891: warning: assigned but unused variable - assertion Randomized with seed 56908 Shoulda::Matchers::ActionController::RespondWithMatcher a controller responding with missing rejects responding with another status accepts responding with a numeric response code accepts responding with a symbol response code a controller responding with success rejects responding with another status accepts responding with a numeric response code accepts responding with a symbol response code a controller responding with redirect accepts responding with a numeric response code rejects responding with another status accepts responding with a symbol response code a controller responding with error accepts responding with a numeric response code accepts responding with a symbol response code rejects responding with another status a controller responding with not_implemented accepts responding with a numeric response code rejects responding with another status accepts responding with a symbol response code Shoulda::Matchers::Doublespeak::Double #to_return tells its implementation to return the given value tells its implementation to call the given block prefers a block over a non-block #deactivate still restores the original method if #activate was called twice does nothing if the method has not been doubled restores the original method after being doubled #activate replaces the method with an implementation #call_original_method binds the stored method object to the given object and calls it with the given args and block does not store the original method multiple times when a method is doubled multiple times does nothing if no method has been stored initializer if doubles are currently activated on the world level immediately activates the new Double #record_call adds the given call to the list of calls Shoulda::Matchers::ActionController::RenderWithLayoutMatcher given a context with layouts accepts that layout in that context a controller that renders with a layout accepts rendering with that layout accepts rendering with any layout rejects rendering with another layout a controller that renders a partial rejects rendering with a layout a controller that renders without a layout rejects rendering with a layout Shoulda::Matchers::ActiveModel::HaveSecurePasswordMatcher with no arguments passed to has_secure_password does not match when the subject does not authenticate a password matches when the subject configures has_secure_password with default options does not match when the subject is missing the password_digest attribute when custom attribute is given to has_secure_password does not match when the subject is missing the custom digest attribute matches when the subject configures has_secure_password with correct options does not match when the subject does not authenticate a password Shoulda::Matchers::ActionController::RouteParams #normalize when the route params is a string produces a hash of route params when the route parameters is a hash stringifies the values in the hash when the route parameters is a string and a hash produces a hash of route parameters Shoulda::Matchers::Doublespeak::World #double_collection_for returns the created DoubleCollection calls DoubleCollection.new once with the given class #with_doubles_activated still makes sure to uninstall all doubles even if the block raises an error installs all doubles, yields the block, then uninstalls them all Shoulda::Matchers::ActiveModel::ValidateExclusionOfMatcher an attribute which must be excluded from an array accepts with correct array rejects when array does not match at all fails when used in the negative rejects when only part of array matches it supports ignoring_interference_by_writer when the writer method for the attribute changes incoming values and the value change causes a test failure lists how the value got changed in the failure message when there is one value has correct description when there are two values has correct description when there are three or more values has correct description an attribute with a custom validation message accepts ensuring the correct range accepts ensuring the correct range with an interpolated variable in the message an attribute with custom range validations accepts ensuring the correct range and messages has correct description an attribute which must be excluded from a range rejects if the given range spills past the bottom of the range in the validation accepts ensuring the correct range rejects if the given range falls short of the bottom of the range in the validation rejects if the given range falls short of the top of the range in the validation fails when used in the negative does not override the default message with a blank rejects if the given range spills past the top of the range in the validation it supports ignoring_interference_by_writer when the writer method for the attribute changes incoming values and the value change causes a test failure lists how the value got changed in the failure message an attribute which must be excluded from a range with excluded end accepts ensuring the correct range rejects ensuring excluded value Shoulda::Matchers::Doublespeak::DoubleCollection #register_stub calls DoubleImplementationRegistry.find correctly calls Double.new correctly if a double has already been registered for the method does not call Double.new again returns the same Double #calls_to returns all calls to the given method returns an empty array if the method has never been doubled #register_proxy calls Double.new correctly calls DoubleImplementationRegistry.find correctly if a double has already been registered for the method returns the same Double does not call Double.new again #deactivate restores the original methods that were doubled #activate replaces all registered methods with doubles Shoulda::Matchers::ActionController::SetSessionOrFlashMatcher with #[] produces the right description in the positive if the given key is present in the store accepts if the given key is not present in the store produces the correct failure message rejects in the negative if the given key is present in the store produces the correct failure message without any qualifiers produces the right description in the positive if the store is not empty accepts if the store is empty rejects produces the correct failure message in the negative if the given key is present in the store produces the correct failure message with #[] + #to given a dynamic value produces the right description in the negative if the value evaluated in the context is present in the store produces the correct failure message in the positive if the value evaluated in the context is present in the store accepts if the value evaluated in the context is not present in the store rejects produces the correct failure message given a static value produces the right description in the negative if the given value is present in the store produces the correct failure message in the positive if the given value is present in the store accepts if the given value is not present in the store rejects produces the correct failure message with #to given a static value produces the right description in the positive if the given value is present in the store accepts accepts given a value of false accepts given a value of nil if the given value is not present in the store rejects produces the correct failure message in the negative if the given value is present in the store produces the correct failure message given a regexp produces the right description in the positive if the given value is present in the store accepts if the given value is not present in the store produces the correct failure message rejects in the negative if the given value is present in the store produces the correct failure message given a dynamic value requires in_context to be specified beforehand produces the right description in the positive if the value evaluated in the context is not present in the store produces the correct failure message rejects if the value evaluated in the context is present in the store accepts in the negative if the value evaluated in the context is present in the store produces the correct failure message Shoulda::Matchers::ActiveModel::Helpers default_error_message if the translation for the model attribute’s error exists provides the right error message for validate_presence_of provides the right error message for validates_length_of if no translation for the model attribute’s error exists and no translation for the model’s error exists and the translation for the message exists provides the right error message for validate_presence_of provides the right error message for validates_length_of and no translation for the message exists and the translation for the attribute exists provides the right error message for validate_presence_of provides the right error message for validates_length_of and no translation for the attribute exists provides the general error message for validates_length_of provides the general error message for validate_presence_of and the translation for the model’s error exists provides the right error message for validate_presence_of provides the right error message for validates_length_of Shoulda::Matchers::Doublespeak::ObjectDouble records every method call returns nil from any method call responds to any method #calls_to returns an empty array if the given method was never called returns all of the invocations of the given method and their arguments/block Shoulda::Matchers::ActionController::FilterParamMatcher accepts filtering a parameter matching a filtered regex accepts filtering a filtered parameter rejects filtering an unfiltered parameter Shoulda::Matchers::ActiveRecord::AssociationMatchers::ModelReflection delegates other methods to the given Reflection object #join_table_name when the association was defined with a :join_table option returns the value of the option when the association was not defined with :join_table returns the default join_table that ActiveRecord generates #through? returns true if the reflection is for a has_many :through association returns false if not #associated_class returns the model that the association refers to #association_relation when the reflection object has a #scope method when the scope is a block passes the object that has the association to the block executes the block in the context of an empty scope when the scope is nil returns an empty scope Shoulda::Matchers::ActiveModel::ValidatePresenceOfMatcher a has_and_belongs_to_many association with a presence validation on it accepts it supports ignoring_interference_by_writer when the writer method for the attribute changes incoming values and the value change does not cause a test failure accepts (and does not raise an error) and the value change causes a test failure lists how the value got changed in the failure message an ActiveModel class without a presence validation rejects with the correct failure message against a belongs_to association declared with required: true and an explicit presence validation is on the association matches and an explicit presence validation is not on the association does not match, instructing the user to use belongs_to instead declared with required: false and an explicit presence validation is on the association matches and an explicit presence validation is not on the association does not match declared with optional: true and an explicit presence validation is on the association matches and an explicit presence validation is not on the association does not match declared with optional: false and an explicit presence validation is on the association matches and an explicit presence validation is not on the association does not match, instructing the user to use belongs_to instead not declared with an optional or required option when belongs_to is configured to be required by default and an explicit presence validation is not on the association does not match, instructing the user to use belong_to instead and an explicit presence validation is on the association matches when belongs_to is configured to be optional by default and an explicit presence validation is on the association matches and an explicit presence validation is not on the association does not match a has_one_attached association with a presence validation requires the attribute to be set it supports ignoring_interference_by_writer when the writer method for the attribute changes incoming values and the value change does not cause a test failure accepts (and does not raise an error) and the value change causes a test failure lists how the value got changed in the failure message an ActiveModel class with a presence validation does not override the default message with a blank accepts when the attribute has not been configured with a type and it is assumed to be something other than a string still works when the attribute has been configured with a type and it is a string works and it is not a string still works it supports ignoring_interference_by_writer when the writer method for the attribute changes incoming values and the value change does not cause a test failure accepts (and does not raise an error) and the value change causes a test failure lists how the value got changed in the failure message a has_many_attached association with a presence validation requires the attribute to be set it supports ignoring_interference_by_writer when the writer method for the attribute changes incoming values and the value change does not cause a test failure accepts (and does not raise an error) and the value change causes a test failure lists how the value got changed in the failure message an attribute with a context-dependent validation with the validation context matches without the validation context does not match when the attribute typecasts nil to another blank value, such as an empty array accepts (and does not raise an AttributeChangedValueError) a has_one_attached association without a presence validation requires the attribute to be set a has_many association without a presence validation does not require the attribute to be set a has_many_attached association without a presence validation does not require the attribute to be set a strictly required attribute rejects with the correct failure message when the :strict options do not match does not override the default message with a blank accepts when the :strict options match a model without a presence validation rejects with the correct failure message qualified with allow_nil when validating a model with a presence validator matches in the negative and it is not specified with allow_nil: true does not match in the positive and it is specified with allow_nil: true matches in the positive does not match in the negative when validating a model without a presence validator matches in the negative does not match in the positive a has_and_belongs_to_many association without a presence validation on it rejects with the correct failure message a model with a presence validation does not override the default message with a blank fails when used in the negative accepts when the column backing the attribute is a scalar, but not a string still works it supports ignoring_interference_by_writer when the writer method for the attribute changes incoming values and the value change does not cause a test failure accepts (and does not raise an error) and the value change causes a test failure lists how the value got changed in the failure message when the attribute is decorated with serialize and the serializer is JSON still works and the serializer is a built-in Ruby type and the type is not a string still works and the type is a string still works and the serializer is something custom still works an i18n translation containing %{attribute} and %{model} does not raise an exception against a pre-set password in a model that has_secure_password does not raises a CouldNotSetPasswordError a has_many association with a presence validation requires the attribute to be set it supports ignoring_interference_by_writer when the writer method for the attribute changes incoming values and the value change causes a test failure lists how the value got changed in the failure message and the value change does not cause a test failure accepts (and does not raise an error) Shoulda::Matchers::Independent::DelegateMethodMatcher raises an error if the delegate object was never specified before matching stubbing a delegating method on an instance only happens temporarily and is removed after the match when the delegating method is private accepts qualified with #allow_nil when using delegate from Rails when delegations were not defined with :allow_nil rejects with the correct failure message when delegations were defined with :allow_nil accepts when delegating manually when the delegating method does not account for the delegate object being nil rejects with the correct failure message when the delegating method accounts for the delegate object being nil accepts when using Forwardable when the delegate object is nil rejects with the correct failure message qualified with #as when the given method is not the same as the subject's delegating method rejects with the correct failure message when the given method is the same as the subject's delegating method accepts negating the assertion rejects with the correct failure message qualified with #with_prefix without arguments when the subject's delegating method also has a prefix accepts when the subject's delegating method does not have a prefix rejects with the correct failure message as true when the subject's delegating method also has a prefix accepts when the subject's delegating method does not have a prefix rejects with the correct failure message as a symbol/string when the subject's delegating method has a different prefix rejects with the correct failure message when the subject's delegating method has the same prefix accepts when the subject delegates correctly accepts negating the matcher rejects with the correct failure message #description when the subject is an instance qualified with #as states that it should delegate method to the right object and method qualified with #with_arguments states that it should delegate method to the right object with right argument qualified with #with_prefix as a symbol/string should delegate as (prefix_supplied)_(method_on_target) without arguments when the subject's delegating method also has a prefix produces the correct description as true when the subject's delegating method also has a prefix produces the correct description without any qualifiers states that it should delegate method to the right object when the subject is a class qualified with #as states that it should delegate method to the right object and method without any qualifiers states that it should delegate method to the right object qualified with #with_arguments states that it should delegate method to the right object with right argument qualified with #with_arguments qualified with #with_arguments when not given the correct arguments rejects with the correct failure message when the subject delegates with matching arguments accepts negating the matcher rejects with the correct failure message when the subject does not delegate anything when the subject is an instance rejects with the correct failure message when the subject is a class uses the proper syntax for class methods in errors Shoulda::Matchers::ActiveRecord::HaveRichTextMatcher when the model does not have a RichText association does not match when provided with a model attribute that exist does not match when provided with a model attribute that does not exist #description returns the message including the name of the provided association when the model has a RichText association matches when the subject configures has_rich_text Shoulda::Matchers::ActiveModel #allow_values is aliased to #allow_value Shoulda::Matchers::ActiveModel::ValidateNumericalityOfMatcher qualified with is_other_than and not validating with other_than rejects since it does not disallow numbers that are not the value and validating with other_than accepts rejects when used in the negative when the attribute is a virtual attribute in an ActiveRecord model accepts when the column is a float column accepts (and does not raise an error) when the column is a decimal column accepts (and does not raise an error) it supports ignoring_interference_by_writer when the writer method for the attribute changes incoming values and the value change causes a test failure lists how the value got changed in the failure message when the column is an integer column accepts (and does not raise an error) qualified with with_message and validating with the same message accepts and the validation is missing from the model rejects with the correct failure message and no message is provided ignores the qualifier and validating with a different message rejects with the correct failure message against an ActiveModel model accepts it supports ignoring_interference_by_writer when the writer method for the attribute changes incoming values and the value change does not cause a test failure accepts (and does not raise an error) and the value change causes a test failure lists how the value got changed in the failure message qualified with is_less_than and validating with less_than rejects when used in the negative accepts when the column is an integer column accepts (and does not raise an error) when the attribute is a virtual attribute in an ActiveRecord model accepts when the column is a decimal column accepts (and does not raise an error) it supports ignoring_interference_by_writer when the writer method for the attribute changes incoming values and the value change causes a test failure lists how the value got changed in the failure message when the column is a float column accepts (and does not raise an error) and not validating with less_than rejects since it does not disallow numbers greater than or equal to the value qualified with on but not validating with on accepts since the validation never considers a context qualified with is_less_than_or_equal_to and validating with less_than_or_equal_to rejects when used in the negative accepts when the column is an integer column accepts (and does not raise an error) when the attribute is a virtual attribute in an ActiveRecord model accepts when the column is a float column accepts (and does not raise an error) it supports ignoring_interference_by_writer when the writer method for the attribute changes incoming values and the value change causes a test failure lists how the value got changed in the failure message when the column is a decimal column accepts (and does not raise an error) and not validating with less_than_or_equal_to rejects since it does not disallow numbers greater than the value #description qualified with even describes that it allows even numbers qualified with odd + is_greater_than_or_equal_to describes that it allows odd numbers greater than or equal to a certain value qualified with nothing describes that it allows numbers qualified with strict describes that it relies upon a strict validation and qualified with a comparison qualifier places the comparison description after "strictly" qualified with only_integer describes that it allows integers qualified with is_greater_than_or_equal_to describes that it allows numbers greater than or equal to a certain value qualified with is_less_than describes that it allows numbers less than a certain value qualified with is_other_than describes that it allows numbers other than a certain value qualified with is_equal_to describes that it allows numbers equal to a certain value qualified with only integer + is_greater_than + less_than_or_equal_to describes that it allows integer greater than one value and less than or equal to another qualified with is_greater_than describes that it allows numbers greater than a certain value qualified with is_less_than_or_equal_to describes that it allows numbers less than or equal to a certain value qualified with odd describes that it allows odd numbers qualified with is_greater_than_or_equal to not validating with greater_than_or_equal_to rejects since it does not disallow numbers that are less than the value validating with greater_than_or_equal_to accepts rejects when used in the negative it supports ignoring_interference_by_writer when the writer method for the attribute changes incoming values and the value change causes a test failure lists how the value got changed in the failure message when the column is a float column accepts (and does not raise an error) when the column is an integer column accepts (and does not raise an error) when the column is a decimal column accepts (and does not raise an error) when the attribute is a virtual attribute in an ActiveRecord model accepts with combinations of qualifiers together is expected to validate that :attr looks like an integer equal to 1 is expected to validate that :attr looks like a number equal to 1 is expected to validate that :attr looks like an integer greater than 1 is expected to validate that :attr looks like an integer equal to 1 is expected to validate that :attr looks like an integer greater than 1 is expected to validate that :attr looks like an integer greater than or equal to 1 is expected to validate that :attr looks like a number less than 1 is expected to validate that :attr looks like an integer is expected to validate that :attr looks like an integer is expected to validate that :attr looks like an integer less than or equal to 1 is expected to validate that :attr looks like an integer less than or equal to 1 is expected to validate that :attr looks like an integer is expected to validate that :attr looks like an integer is expected to validate that :attr looks like an even number is expected to validate that :attr looks like an integer less than 1 is expected to validate that :attr looks like an integer other than 1 is expected to validate that :attr looks like an integer greater than or equal to 1 is expected to validate that :attr looks like a number greater than or equal to 1 is expected to validate that :attr looks like a number less than or equal to 1 is expected to validate that :attr looks like a number greater than 1 is expected to validate that :attr looks like an odd number is expected to validate that :attr looks like an integer is expected to validate that :attr looks like a number other than 1 is expected to validate that :attr looks like an integer other than 1 is expected to validate that :attr looks like an integer less than 1 when qualifiers match the validation options but the values are different such as testing greater_than (+ only_integer) with lower value such as testing greater_than (+ even) with lower value such as testing less_than_or_equal_to (+ odd) with higher value such as testing less_than_or_equal_to (+ odd) with lower value such as testing greater than (+ even) with higher value such as testing greater_than (+ only_integer) with higher value such as testing less_than (+ only_integer + greater_than) with higher value such as testing greater_than (+ only_integer + less_than) with lower value when the qualifiers do not match the validation options such as not validating only_integer but testing that only_integer is validated such as validating greater_than_or_equal_to (+ only_integer + less_than) but testing that greater_than is validated such as validating odd (+ greater_than) but testing that even is validated such as validating even but testing that only_integer is validated such as validating greater_than_or_equal_to (+ odd) but testing that is_less_than_or_equal_to is validated such as validating greater_than_or_equal_to (+ even) but testing that greater_than is validated with large numbers is expected to validate that :attr looks like a number less than 100000 is expected to validate that :attr looks like a number greater than or equal to 100000 is expected to validate that :attr looks like a number greater than 100000 is expected to validate that :attr looks like a number less than or equal to 100000 qualified with nothing and not validating anything rejects since it does not disallow non-numbers and validating numericality accepts when the column is an integer column accepts (and does not raise an AttributeChangedValueError) when the column is a float column accepts (and does not raise an AttributeChangedValueError) when used in the negative fails it supports ignoring_interference_by_writer when the writer method for the attribute changes incoming values and the value change causes a test failure lists how the value got changed in the failure message and the value change does not cause a test failure accepts (and does not raise an error) when the attribute is a virtual attribute in an ActiveRecord model accepts when the column is a decimal column accepts (and does not raise an AttributeChangedValueError) qualified with odd and not validating with odd rejects since it does not disallow even numbers and validating with odd accepts rejects when used in the negative when the column is a decimal column accepts (and does not raise an error) it supports ignoring_interference_by_writer when the writer method for the attribute changes incoming values and the value change causes a test failure lists how the value got changed in the failure message and the value change does not cause a test failure accepts (and does not raise an error) when the column is an integer column accepts (and does not raise an error) when the column is a float column accepts (and does not raise an error) when the attribute is a virtual attribute in ActiveRecord model accepts qualified with is_greater_than and validating with greater_than accepts rejects when used in the negative when the column is a decimal column accepts (and does not raise an error) when the attribute is a virtual attribute in an ActiveRecord model accepts when the column is an integer column accepts (and does not raise an error) it supports ignoring_interference_by_writer when the writer method for the attribute changes incoming values and the value change causes a test failure lists how the value got changed in the failure message when the column is a float column accepts (and does not raise an error) and not validating with greater_than rejects since it does not disallow numbers that are less than or equal to the value qualified with on and validating with on accepts not qualified with on but validating with on rejects since the validation never runs when the subject is stubbed retains that stub while the validate_numericality is matching qualified with strict and validating strictly accepts and not validating strictly rejects since ActiveModel::StrictValidationFailed is never raised qualified with is_equal_to and not validating with equal_to rejects since it does not disallow numbers that are not the value and validating with equal_to accepts rejects when used in the negative when the column is a float column accepts (and does not raise an error) when the column is a decimal column accepts (and does not raise an error) when the column is an integer column accepts (and does not raise an error) it supports ignoring_interference_by_writer when the writer method for the attribute changes incoming values and the value change causes a test failure lists how the value got changed in the failure message when the attribute is a virtual attribute in an ActiveRecord model accepts qualified with only_integer and not validating with only_integer rejects since it does not disallow non-integers and validating with only_integer accepts rejects when used in the negative it supports ignoring_interference_by_writer when the writer method for the attribute changes incoming values and the value change causes a test failure lists how the value got changed in the failure message and the value change does not cause a test failure accepts (and does not raise an error) qualified with even and validating with even accepts rejects when used in the negative it supports ignoring_interference_by_writer when the writer method for the attribute changes incoming values and the value change causes a test failure lists how the value got changed in the failure message and the value change does not cause a test failure accepts (and does not raise an error) when the column is a decimal column accepts (and does not raise an error) when the column is an integer column accepts (and does not raise an error) when the attribute is a virtual attribute in an ActiveRecord model accepts when the column is a float column accepts (and does not raise an error) and not validating with even rejects since it does not disallow odd numbers qualified with allow_nil and not validating with allow_nil rejects since it tries to treat nil as a number and validating with allow_nil accepts it supports ignoring_interference_by_writer when the writer method for the attribute changes incoming values and the value change does not cause a test failure accepts (and does not raise an error) and the value change causes a test failure lists how the value got changed in the failure message Shoulda::Matchers::ActiveRecord::HaveDbColumnMatcher rejects a nonexistent database column accepts an existing database column with precision option accepts a column of correct precision rejects a column of wrong precision with null option rejects a column of wrong null accepts a column of correct null with default option rejects a column with wrong default accepts a column with correct default #of_type accepts a column of correct type rejects a nonexistent database column rejects a column of wrong type with scale option rejects a column of wrong scale accepts a column of correct scale with invalid argument option raises an error with the unknown options with limit option rejects a column of wrong limit accepts a column of correct limit with primary option accepts a column that is primary rejects a column that is not primary Shoulda::Matchers::ActiveModel::AllowValueMatcher when the attribute being validated is different than the attribute that receives the validation error when the validation error message was provided via i18n passes given a valid value fails given an invalid value when the validation error message was provided directly given an invalid value rejects if the messages do not match technically accepts given a valid value accepts with no values raises an error when the attribute does not exist on the model when the assertion is negative raises an AttributeDoesNotExistError when the assertion is positive raises an AttributeDoesNotExistError with a single value allows you to call description before calling matches? given an ActiveRecord model where the attribute under test is an enum and the given value is a value in that enum accepts an attribute with a context-dependent validation with the validation context allows a good value rejects a bad value without the validation context allows a bad value an attribute with a validation and a custom message allows a good value rejects a bad value with an appropriate failure message when interpolation values are provided along with a custom message when the messages do not match rejects with an appropriate failure message when the messages match accepts when the custom messages do not match rejects with an appropriate failure message an attribute with a validation given several bad values when used in the negative accepts when used in the positive rejects with an appropriate failure message given bad values along with good values when used in the negative rejects with an appropriate failure message when used in the positive rejects with an appropriate failure message given one good value when used in the negative rejects with an appropriate failure message when used in the positive accepts given several good values when used in the negative rejects with an appropriate failure message when used in the positive accepts given good values along with bad values when used in the positive rejects with an appropriate failure message when used in the negative rejects with an appropriate failure message given one bad value when used in the negative accepts when used in the positive rejects with an appropriate failure message #description describes itself with more than two values truncates the description when long describes itself with two values describes itself with a single value when the attribute interferes with attempts to be set when the attribute cannot be changed from nil to non-nil and the record remains valid accepts (and does not raise an AttributeChangedValueError) and the record becomes invalid rejects with an appropriate failure message when the attribute cannot be changed from a non-nil value to another non-nil value and the record remains valid accepts (and does not raise an AttributeChangedValueError) and the record becomes invalid rejects with an appropriate failure message when the attribute cannot be changed from non-nil to nil and the record remains valid accepts (and does not raise an AttributeChangedValueError) and the record becomes invalid rejects with an appropriate failure message #_after_setting_value sets a block which is yielded after each value is set on the attribute given attributes to preset on the record before validation when the assertion is negative if any attributes do not exist on the model raises an AttributeDoesNotExistError when the assertion is positive if any attributes do not exist on the model raises an AttributeDoesNotExistError an attribute with several validations does not match given good values along with bad values matches given a good value does not match given a bad value does not match given bad values along with good values does not match given multiple bad values Shoulda::Matchers::Doublespeak .with_doubles_activated delegates to its world .double_collection_for delegates to its world Shoulda::Matchers::Doublespeak::StubImplementation #call calls #record_call on the double if no explicit implementation was set returns nil if the implementation was set as a block returns the return value of the block calls the block with the MethodCall object the implementation was called with if the implementation was set as a value returns the set return value if the implementation was set as both a value and a block prefers the block over the value Shoulda::Matchers::ActiveRecord::HaveAttachedMatcher have_many_attached #description returns the message with the name of the association when the attached exists on the model matches and the blobs association is invalid matches and the attachments association does not exist matches and the writer attribute does not exist matches and the eager loading scope does not exist matches and the reader attribute does not exist matches have_one_attached when the attached exists on the model matches and the writer attribute does not exist matches and the eager loading scope does not exist matches and the blobs association is invalid matches and the reader attribute does not exist matches and the attachments association does not exist matches #description returns the message with the name of the association Shoulda::Matchers::ActiveRecord::HaveReadonlyAttributeMatcher a read-only attribute accepts an attribute on a class with no readonly attributes assigns a failure message rejects being read-only an attribute that is not part of the read-only set rejects being read-only Shoulda::Matchers::ActiveModel::ValidateAcceptanceOfMatcher a model without an acceptance validation rejects a model with an acceptance validation fails when used in the negative does not overwrite the default message with nil accepts when the attributes match it supports ignoring_interference_by_writer when the writer method for the attribute changes incoming values and the value change does not cause a test failure accepts (and does not raise an error) and the value change causes a test failure lists how the value got changed in the failure message an attribute which must be accepted with a custom message accepts when the message matches rejects when the message does not match Shoulda::Matchers::ActiveRecord::HaveSecureTokenMatcher matches when called with ignoring_check_for_db_index without db index does not match when missing a column for a custom attribute does not match when missing a token column does not match when when lacking has_secure_token fails with the appropriate message when negated matches when the subject configures has_secure_token with the db does not match when missing an token index does not match when when lacking has_secure_token for the attribute matches when the subject configures has_secure_token with the db for a custom attribute does not match when missing an index for a custom attribute #description returns the message including the name of the default column returns the message including the name of a provided column Shoulda::Matchers::ActionController::SetFlashMatcher when the now qualifier is called after the key is set raises a QualifierOrderError behaves like set session or flash matcher without any qualifiers produces the right description in the positive if the store is not empty accepts if the store is empty rejects produces the correct failure message in the negative if the given key is present in the store produces the correct failure message with #[] produces the right description in the positive if the given key is not present in the store produces the correct failure message rejects if the given key is present in the store accepts the param as a symbol accepts the param as a string in the negative if the given key is present in the store produces the correct failure message with #[] + #to given a dynamic value produces the right description in the positive if the value evaluated in the context is not present in the store rejects produces the correct failure message if the value evaluated in the context is present in the store accepts in the negative if the value evaluated in the context is present in the store produces the correct failure message given a static value produces the right description in the positive if the given value is present in the store accepts if the given value is not present in the store produces the correct failure message rejects in the negative if the given value is present in the store produces the correct failure message with #to given a static value produces the right description in the negative if the given value is present in the store produces the correct failure message in the positive if the given value is not present in the store rejects produces the correct failure message rejects checking for nil if the given value is present in the store accepts given a value of nil accepts accepts given a value of false given a regexp produces the right description in the negative if the given value is present in the store produces the correct failure message in the positive if the given value is present in the store accepts given a value of nil accepts given a value of false accepts if the given value is not present in the store rejects produces the correct failure message when the now qualifier is called after the to qualifier raises a QualifierOrderError when the controller sets both flash and flash.now does not mix flash and flash.now behaves like set session or flash matcher with #[] + #to given a dynamic value produces the right description in the positive if the value evaluated in the context is present in the store accepts if the value evaluated in the context is not present in the store rejects produces the correct failure message in the negative if the value evaluated in the context is present in the store produces the correct failure message given a static value produces the right description in the positive if the given value is not present in the store rejects produces the correct failure message if the given value is present in the store accepts in the negative if the given value is present in the store produces the correct failure message with #to given a regexp produces the right description in the negative if the given value is present in the store produces the correct failure message in the positive if the given value is present in the store accepts given a value of nil accepts given a value of false accepts if the given value is not present in the store produces the correct failure message rejects given a static value produces the right description in the positive if the given value is present in the store accepts given a value of false accepts given a value of nil accepts if the given value is not present in the store produces the correct failure message rejects checking for nil rejects in the negative if the given value is present in the store produces the correct failure message without any qualifiers produces the right description in the positive if the store is empty rejects produces the correct failure message if the store is not empty accepts in the negative if the given key is present in the store produces the correct failure message with #[] produces the right description in the negative if the given key is present in the store produces the correct failure message in the positive if the given key is not present in the store produces the correct failure message rejects if the given key is present in the store accepts the param as a string accepts the param as a symbol Shoulda::Matchers::ActionController::SetSessionMatcher behaves like set session or flash matcher with #[] + #to given a dynamic value produces the right description in the positive if the value evaluated in the context is not present in the store rejects produces the correct failure message if the value evaluated in the context is present in the store accepts in the negative if the value evaluated in the context is present in the store produces the correct failure message given a static value produces the right description in the positive if the given value is not present in the store produces the correct failure message rejects if the given value is present in the store accepts in the negative if the given value is present in the store produces the correct failure message with #[] produces the right description in the positive if the given key is not present in the store rejects produces the correct failure message if the given key is present in the store accepts the param as a string accepts the param as a symbol in the negative if the given key is present in the store produces the correct failure message without any qualifiers produces the right description in the negative if the given key is present in the store produces the correct failure message in the positive if the store is not empty accepts if the store is empty produces the correct failure message rejects with #to given a regexp produces the right description in the negative if the given value is present in the store produces the correct failure message in the positive if the given value is present in the store accepts accepts given a value of false accepts given a value of nil if the given value is not present in the store produces the correct failure message rejects given a static value produces the right description in the positive if the given value is not present in the store rejects rejects checking for nil produces the correct failure message if the given value is present in the store accepts given a value of false accepts given a value of nil accepts in the negative if the given value is present in the store produces the correct failure message Shoulda::Matchers::ActiveRecord::HaveImplicitOrderColumnMatcher when the given column does not exist and it is a string does not match, producing an appropriate message and it is a symbol does not match, producing an appropriate message when the given column exists when an implicit_order_column is set on the model and it matches the given column name and the column name is a symbol matches and the column name is a string matches and it does not match the given column name and the column name is a symbol does not match, producing an appropriate message and the column name is a string does not match, producing an appropriate message when no implicit_order_column is set on the model and the given column name is a string does not match, producing an appropriate message and the given column name is a symbol does not match, producing an appropriate message #description returns the correct description Shoulda::Matchers::ActionController::RouteMatcher given a controller that is namespaced given just an action when the existing route has a glob segment and no param is given which represents the segment rejects and a param is given which represents the segment accepts when all parts of the expected route but the action match an existing route rejects when the actual route has a param and the expected params do not match the actual params rejects and the expected params include that param accepts but its value was not specified as a string accepts, treating it as a string when no parts of the expected route match an existing route rejects when the actual route has a default param whose value is a symbol and the expected params include a value for it as a symbol accepts as a string accepts when all parts of the expected route but the method match an existing route rejects when all parts of the expected route but the path match an existing route rejects when all parts of the expected route match an existing route accepts and the expected action is specified as a symbol accepts given a controller and action specified as individual options when all parts of the expected route but the controller match an existing route rejects when the actual route has a default param whose value is a symbol and the expected params include a value for it as a string accepts as a symbol accepts when the actual route has a param and the expected params include that param accepts but its value was not specified as a string accepts, treating it as a string and the expected params do not match the actual params rejects when the existing route has a glob segment and no param is given which represents the segment rejects and a param is given which represents the segment accepts when all parts of the expected route but the action match an existing route rejects when no parts of the expected route match an existing route rejects when all parts of the expected route match an existing route accepts and the expected action is specified as a symbol accepts and the expected controller is specified as a symbol accepts when all parts of the expected route but the path match an existing route rejects when all parts of the expected route but the method match an existing route rejects given a controller and action joined together in a string when all parts of the expected route match an existing route accepts and the expected controller is specified as a symbol accepts and the expected action is specified as a symbol accepts when all parts of the expected route but the controller match an existing route rejects when all parts of the expected route but the method match an existing route rejects when the actual route has a param and the expected params do not match the actual params rejects and the expected params include that param accepts but its value was not specified as a string accepts, treating it as a string when all parts of the expected route but the path match an existing route rejects when all parts of the expected route but the action match an existing route rejects when the actual route has a default param whose value is a symbol and the expected params include a value for it as a string accepts as a symbol accepts when no parts of the expected route match an existing route rejects when the existing route has a glob segment and a param is given which represents the segment accepts and no param is given which represents the segment rejects given a controller that is not namespaced given a controller and action specified as individual options when no parts of the expected route match an existing route rejects when all parts of the expected route but the action match an existing route rejects when the actual route has a default param whose value is a symbol and the expected params include a value for it as a string accepts as a symbol accepts when all parts of the expected route match an existing route accepts and the expected controller is specified as a symbol accepts and the expected action is specified as a symbol accepts when the actual route has a param and the expected params do not match the actual params rejects and the expected params include that param accepts but its value was not specified as a string accepts, treating it as a string when the existing route has a glob segment and a param is given which represents the segment accepts and no param is given which represents the segment rejects when all parts of the expected route but the controller match an existing route rejects when all parts of the expected route but the path match an existing route rejects when all parts of the expected route but the method match an existing route rejects given just an action when all parts of the expected route but the method match an existing route rejects when the actual route has a default param whose value is a symbol and the expected params include a value for it as a string accepts as a symbol accepts when all parts of the expected route but the path match an existing route rejects when the existing route has a glob segment and no param is given which represents the segment rejects and a param is given which represents the segment accepts when all parts of the expected route but the action match an existing route rejects when the actual route has a param and the expected params include that param accepts but its value was not specified as a string accepts, treating it as a string and the expected params do not match the actual params rejects when all parts of the expected route match an existing route accepts and the expected action is specified as a symbol accepts when no parts of the expected route match an existing route rejects given a controller and action joined together in a string when all parts of the expected route but the method match an existing route rejects when all parts of the expected route match an existing route accepts and the expected action is specified as a symbol accepts and the expected controller is specified as a symbol accepts when all parts of the expected route but the path match an existing route rejects when all parts of the expected route but the action match an existing route rejects when the existing route has a glob segment and no param is given which represents the segment rejects and a param is given which represents the segment accepts when no parts of the expected route match an existing route rejects when the actual route has a default param whose value is a symbol and the expected params include a value for it as a string accepts as a symbol accepts when the actual route has a param and the expected params do not match the actual params rejects and the expected params include that param accepts but its value was not specified as a string accepts, treating it as a string when all parts of the expected route but the controller match an existing route rejects Shoulda::Matchers::ActiveRecord::AcceptNestedAttributesForMatcher accepts an existing declaration rejects a missing declaration limit accepts a correct value rejects a false value allow_destroy accepts a valid falsey value rejects an invalid truthy value rejects an invalid falsey value accepts a valid truthy value update_only rejects an invalid truthy value rejects an invalid falsey value accepts a valid falsey value accepts a valid truthy value Shoulda::Matchers::ActiveRecord::SerializeMatcher accepts when the attribute is serialized an attribute that will end up being serialized as YAML rejects when using as_instance_of rejects when the types do not match accepts when the types match a serializer that is an instance of a class rejects when using #as accepts when using #as_instance_of when attribute is not serialized assigns a helpful failure message when using #as_instance_of rejects assigns a helpful failure message when using #as assigns a helpful failure message Shoulda::Matchers::Doublespeak::ProxyImplementation #call delegates to its stub_implementation calls #call_original_method on the double returns the return value of the original method #returns delegates to its stub_implementation Shoulda::Matchers::Routing::RouteMatcher given a controller and action joined together in a string when the actual route has a param and the expected params do not match the actual params rejects and the expected params include that param accepts but its value was not specified as a string accepts, treating it as a string when the given path, controller, and action match an existing route but the method does not rejects when the given method, controller, and action match an existing route but the path does not rejects when the actual route has a default param whose value is a symbol and the expected params include a value for it as a symbol accepts as a string accepts when the given method, path, and controller match an existing route but the action does not rejects when the existing route has a glob segment and no param is given which represents the segment rejects and a param is given which represents the segment accepts when a port is specified when the route is constrained to the same port accepts when the route is not constrained to the same port rejects when the given method and path match an existing route but the controller does not rejects when the given method, path, controller, and action match an existing route accepts and the expected action is specified as a symbol accepts and the expected controller is specified as a symbol accepts when the given method, path, controller, and action do not match an existing route rejects given a controller and action specified as individual options when the actual route has a default param whose value is a symbol and the expected params include a value for it as a symbol accepts as a string accepts when the actual route has a param and the expected params include that param accepts but its value was not specified as a string accepts, treating it as a string and the expected params do not match the actual params rejects when a port is specified when the route is constrained to the same port accepts when the route is not constrained to the same port rejects when the given method, path, controller, and action do not match an existing route rejects when the existing route has a glob segment and no param is given which represents the segment rejects and a param is given which represents the segment accepts when the given method, controller, and action match an existing route but the path does not rejects when the given method, path, and controller match an existing route but the action does not rejects when the given path, controller, and action match an existing route but the method does not rejects when the given method and path match an existing route but the controller does not rejects when the given method, path, controller, and action match an existing route accepts and the expected action is specified as a symbol accepts and the expected controller is specified as a symbol accepts Shoulda::Matchers::ActiveModel::ValidateAbsenceOfMatcher a model with an absence validation accepts does not override the default message with a present when column is of type binary accepts it supports ignoring_interference_by_writer when the writer method for the attribute changes incoming values and the value change does not cause a test failure accepts (and does not raise an error) when column is of type text accepts it supports ignoring_interference_by_writer when the writer method for the attribute changes incoming values and the value change does not cause a test failure accepts (and does not raise an error) when column is of type integer accepts it supports ignoring_interference_by_writer when the writer method for the attribute changes incoming values and the value change does not cause a test failure accepts (and does not raise an error) when column is of type string accepts it supports ignoring_interference_by_writer when the writer method for the attribute changes incoming values and the value change does not cause a test failure accepts (and does not raise an error) when used in the negative fails when column is of type datetime accepts it supports ignoring_interference_by_writer when the writer method for the attribute changes incoming values and the value change does not cause a test failure accepts (and does not raise an error) when column is of type timestamp accepts it supports ignoring_interference_by_writer when the writer method for the attribute changes incoming values and the value change does not cause a test failure accepts (and does not raise an error) when column is of type date accepts it supports ignoring_interference_by_writer when the writer method for the attribute changes incoming values and the value change does not cause a test failure accepts (and does not raise an error) when the column backing the attribute is an enum still works when column is of type float accepts it supports ignoring_interference_by_writer when the writer method for the attribute changes incoming values and the value change does not cause a test failure accepts (and does not raise an error) when column is of type decimal accepts it supports ignoring_interference_by_writer when the writer method for the attribute changes incoming values and the value change does not cause a test failure accepts (and does not raise an error) when column is of type time accepts it supports ignoring_interference_by_writer when the writer method for the attribute changes incoming values and the value change does not cause a test failure accepts (and does not raise an error) a non-absent has_and_belongs_to_many association rejects with the correct failure message an absent has_and_belongs_to_many association accepts it supports ignoring_interference_by_writer when the writer method for the attribute changes incoming values and the value change does not cause a test failure accepts (and does not raise an error) an i18n translation containing %{attribute} and %{model} does not raise an exception a has_many association without an absence validation does not require the attribute to not be set an ActiveModel class with an absence validation accepts does not override the default message with a blank it supports ignoring_interference_by_writer when the writer method for the attribute changes incoming values and the value change does not cause a test failure accepts (and does not raise an error) an ActiveModel class without an absence validation rejects with the correct failure message a model without an absence validation rejects with the correct failure message an attribute with a context-dependent validation without the validation context does not match with the validation context matches a has_many association with an absence validation requires the attribute to not be set it supports ignoring_interference_by_writer when the writer method for the attribute changes incoming values and the value change does not cause a test failure accepts (and does not raise an error) Shoulda::Matchers::ActionController::CallbackMatcher #use_after_action behaves like CallbackMatcher matches when a after hook is in place does not match when a after hook is missing failure message includes the filter kind and name that was expected failure message when negated includes the filter kind and name that was expected description includes the filter kind and name #use_before_action behaves like CallbackMatcher matches when a before hook is in place does not match when a before hook is missing description includes the filter kind and name failure message when negated includes the filter kind and name that was expected failure message includes the filter kind and name that was expected #use_around_action behaves like CallbackMatcher does not match when a around hook is missing matches when a around hook is in place failure message includes the filter kind and name that was expected failure message when negated includes the filter kind and name that was expected description includes the filter kind and name Shoulda::Matchers::Doublespeak::DoubleImplementationRegistry .find returns an instance of StubImplementation if given :stub raises an ArgumentError if not given a registered implementation returns ProxyImplementation if given :proxy Shoulda::Matchers::ActionController::PermitMatcher works with #update specifically requires an action works when multiple ActionController::Parameters were instantiated allows extra parameters to be provided if the route requires them requires a verb for a non-restful action can be used more than once in the same test when operating on a slice of the params hash accepts all of the permitted attributes tracks multiple calls to #permit for different subparameters accepts a subset of the permitted attributes rejects attributes that have not been permitted rejects when #permit has not been called rejects if asserting that parameters were not permitted, but on the wrong slice tracks multiple calls to #permit for the same subparameter when operating on the entire params hash rejects when #permit has not been called rejects attributes that have not been permitted accepts a subset of the permitted attributes accepts all of the permitted attributes tracks multiple calls to #permit for different subparameters #for when given :update PATCHes to the controller when given a custom action and verb calls the action with the verb when given :create POSTs to the controller #description returns the correct string when a verb is specified returns the correct string #matches? does not raise an error when #fetch was used instead of #require (issue #495) stubbing params on the controller does not permanently stub the params hash still allows #require to return a slice of the params prevents permanently stubbing params on error still allows the original params hash to be modified and accessed prior to the call to #require positive failure message when some, but not all, parameters were permitted returns the correct message, including missing attributes when no parameters were permitted returns the correct message qualified with #on when the subparameter was required but some, but not all, parameters were permitted returns the correct message but no parameters were permitted returns the correct message when the subparameter was never required returns the correct message negative failure message returns the correct message qualified with #on returns the correct message Shoulda::Matchers::ActionController::RenderTemplateMatcher a controller that renders a template rejects rendering a different template in the given context accepts rendering that template rejects rendering a different template accepts rendering that template in the given context a controller that does not render a template rejects rendering a template a controller that renders a partial rejects rendering a different template in the given context accepts rendering that partial accepts rendering that template in the given context rejects rendering a different template a controller that renders a partial several times accepts rendering that partial twice a controller that does not render partials accepts not rendering a partial Shoulda::Matchers::ActiveModel::ValidateLengthOfMatcher an attribute with a required exact length rejects ensuring a lower maximum length with any message does not override the default message with a blank rejects ensuring a higher maximum length with any message accepts ensuring the correct length it supports ignoring_interference_by_writer when the writer method for the attribute changes incoming values and the value change does not cause a test failure accepts (and does not raise an error) and the value change causes a test failure lists how the value got changed in the failure message an attribute with a minimum length validation of 0 accepts ensuring the correct minimum length qualified with allow_blank and not validating with allow_blank rejects and validating with allow_blank with minimum and minimum is 1 accepts and minimum is greater than 1 accepts with maximum and maximum is greater than 0 accepts and maximum is 0 accepts an attribute with a maximum length accepts ensuring the correct maximum length rejects ensuring a lower maximum length with any message does not override the default message with a blank rejects ensuring a higher maximum length with any message it supports ignoring_interference_by_writer when the writer method for the attribute changes incoming values and the value change does not cause a test failure accepts (and does not raise an error) and the value change causes a test failure lists how the value got changed in the failure message an attribute with a non-zero minimum length validation accepts ensuring the correct minimum length does not override the default message with a blank rejects ensuring a higher minimum length with any message fails when used in the negative rejects ensuring a lower minimum length with any message it supports ignoring_interference_by_writer when the writer method for the attribute changes incoming values and the value change does not cause a test failure accepts (and does not raise an error) and the value change causes a test failure lists how the value got changed in the failure message an attribute without a length validation rejects ensuring a minimum length an attribute with a custom minimum length validation accepts ensuring the correct minimum length qualified with allow_nil and not validating with allow_nil rejects and validating with allow_nil accepts an attribute with a custom equal validation accepts ensuring the correct exact length using translations a too_short translation containing %{attribute}, %{model} does not raise an exception a wrong_length translation containing %{attribute}, %{model} does not raise an exception a too_long translation containing %{attribute}, %{model} does not raise an exception an attribute with a required exact length and another validation accepts ensuring the correct length an attribute with a custom maximum length validation accepts ensuring the correct minimum length Shoulda::Matchers.word_wrap re-wraps numbered lists can wrap a numbered list re-wraps entire paragraphs re-wraps numbered lists using x) instead of x. as the leader can wrap a numbered list, using x) instead of x. as the leader can wrap a simple paragraph considers punctuation as part of a word doesn't mess with indented blocks can wrap multiple paragraphs re-wraps bulleted lists does not split words up when wrapping does not break at the maximum line length, but afterward can wrap a bulleted list when :indent is given uses the given indentation level when determining where to wrap lines given a string with a word longer than the max character limit which stands on its own simply returns the string which is followed by some text leaves the word on its own line which is preceded by some text leaves the word on its own line Shoulda::Matchers::ActionController::RescueFromMatcher a controller that does not rescue from RuntimeError asserts controller is not setup with rescue_from a controller that rescues from RuntimeError asserts controller is setup with rescue_from without a handler method the handler method is not included in the description with a handler method asserts rescue_from can find the handler when it is protected asserts rescue_from can find the handler when it is private asserts rescue_from can find the handler when it is public asserts rescue_from was not set up with incorrect handler method asserts the controller responds to the handler method Shoulda::Matchers::ActiveModel::ValidateInclusionOfMatcher #description given an array of values when there are two values returns the correct string when there is one value returns the correct string when there are three or more values returns the correct string given a range of values returns the correct string for a plain Ruby attribute against a date attribute behaves like it supports in_array raises an error when valid and given value is our test outside value matches given a subset of the valid values fails when used in the negative does not match when one of the given values is invalid matches given the same array of valid values it supports ignoring_interference_by_writer when the writer method for the attribute changes incoming values and the value change causes a test failure lists how the value got changed in the failure message behaves like it supports with_message given nil is as if with_message had never been called given a regex does not match when validation uses the default message instead of given message does not match when validation uses a message but it does not match regex matches when validation uses a message that matches the regex not having been qualified does not match when the validation is configured with an overridden message matches when the validation uses the default message and it is overridden in i18n matches when the validation uses the default message given a string does not match when validation uses a message but it is not same as given does not match when validation uses the default message instead of given message matches when validation uses given message that has an interpolated variable matches when validation uses given message behaves like it supports allow_blank matches when the validation specifies allow_blank does not match when the validation does not specify allow_blank behaves like it supports allow_blank matches when the validation specifies allow_blank behaves like it supports allow_nil allows other qualifiers to be chained afterward matches when the validation specifies allow_nil when the record has no validations fails when used in the positive with an appropriate failure message passes when used in the negative behaves like it supports allow_nil allows other qualifiers to be chained afterward does not match when the validation does not specify allow_nil matches when the validation specifies allow_nil behaves like it supports with_message given nil is as if with_message had never been called given a string matches when validation uses given message does not match when validation uses the default message instead of given message does not match when validation uses a message but it is not same as given matches when validation uses given message that has an interpolated variable given a regex does not match when validation uses the default message instead of given message does not match when validation uses a message but it does not match regex matches when validation uses a message that matches the regex not having been qualified matches when the validation uses the default message and it is overridden in i18n does not match when the validation is configured with an overridden message matches when the validation uses the default message behaves like it supports in_range does not match given a range whose end value falls inside valid range does not match a record with no validations does not match given a range whose end value falls outside valid range does not match given a range whose start value falls inside valid range does not match given a range whose start value falls outside valid range matches given a range that exactly matches the valid range behaves like it supports allow_nil allows other qualifiers to be chained afterward matches when the validation does not specify allow_nil matches when the validation specifies allow_nil behaves like it supports with_message given a regex does not match when validation uses a message but it does not match regex does not match when validation uses the default message instead of given message matches when validation uses a message that matches the regex given a string does not match when validation uses the default message instead of given message matches when validation uses given message that has an interpolated variable matches when validation uses given message does not match when validation uses a message but it is not same as given given nil is as if with_message had never been called not having been qualified matches when the validation uses the default message does not match when the validation is configured with an overridden message matches when the validation uses the default message and it is overridden in i18n behaves like it supports allow_nil allows other qualifiers to be chained afterward matches when the validation specifies allow_nil it supports ignoring_interference_by_writer when the writer method for the attribute changes incoming values and the value change causes a test failure lists how the value got changed in the failure message behaves like it supports allow_blank matches when the validation does not specify allow_blank matches when the validation specifies allow_blank behaves like it supports with_message given a string does not match when validation uses a message but it is not same as given does not match when validation uses the default message instead of given message matches when validation uses given message matches when validation uses given message that has an interpolated variable not having been qualified does not match when the validation is configured with an overridden message matches when the validation uses the default message and it is overridden in i18n matches when the validation uses the default message given a regex does not match when validation uses a message but it does not match regex matches when validation uses a message that matches the regex does not match when validation uses the default message instead of given message given nil is as if with_message had never been called behaves like it supports allow_blank matches when the validation specifies allow_blank against a float attribute behaves like it supports in_array matches when one of the given values is a zero does not match when one of the given values is invalid matches given the same array of valid values fails when used in the negative raises an error when valid and given value is our test outside value matches given a subset of the valid values behaves like it supports allow_nil matches when the validation specifies allow_nil allows other qualifiers to be chained afterward behaves like it supports allow_nil does not match when the validation does not specify allow_nil matches when the validation specifies allow_nil allows other qualifiers to be chained afterward behaves like it supports allow_blank matches when the validation specifies allow_blank behaves like it supports with_message given a regex does not match when validation uses a message but it does not match regex does not match when validation uses the default message instead of given message matches when validation uses a message that matches the regex not having been qualified matches when the validation uses the default message and it is overridden in i18n matches when the validation uses the default message does not match when the validation is configured with an overridden message given a string does not match when validation uses the default message instead of given message matches when validation uses given message that has an interpolated variable does not match when validation uses a message but it is not same as given matches when validation uses given message given nil is as if with_message had never been called behaves like it supports allow_blank matches when the validation specifies allow_blank does not match when the validation does not specify allow_blank when the record has no validations passes when used in the negative fails when used in the positive with an appropriate failure message behaves like it supports with_message given nil is as if with_message had never been called not having been qualified matches when the validation uses the default message does not match when the validation is configured with an overridden message matches when the validation uses the default message and it is overridden in i18n given a regex does not match when validation uses a message but it does not match regex does not match when validation uses the default message instead of given message matches when validation uses a message that matches the regex given a string does not match when validation uses the default message instead of given message does not match when validation uses a message but it is not same as given matches when validation uses given message matches when validation uses given message that has an interpolated variable it supports ignoring_interference_by_writer when the writer method for the attribute changes incoming values and the value change causes a test failure lists how the value got changed in the failure message behaves like it supports in_range does not match given a range whose start value falls inside valid range matches given a range that exactly matches the valid range does not match given a range whose end value falls outside valid range does not match given a range whose end value falls inside valid range does not match a record with no validations does not match given a range whose start value falls outside valid range behaves like it supports with_message given a string does not match when validation uses the default message instead of given message matches when validation uses given message that has an interpolated variable does not match when validation uses a message but it is not same as given matches when validation uses given message given nil is as if with_message had never been called not having been qualified matches when the validation uses the default message and it is overridden in i18n matches when the validation uses the default message does not match when the validation is configured with an overridden message given a regex matches when validation uses a message that matches the regex does not match when validation uses a message but it does not match regex does not match when validation uses the default message instead of given message behaves like it supports allow_blank matches when the validation specifies allow_blank matches when the validation does not specify allow_blank behaves like it supports with_message given nil is as if with_message had never been called not having been qualified does not match when the validation is configured with an overridden message matches when the validation uses the default message matches when the validation uses the default message and it is overridden in i18n given a regex matches when validation uses a message that matches the regex does not match when validation uses a message but it does not match regex does not match when validation uses the default message instead of given message given a string does not match when validation uses a message but it is not same as given does not match when validation uses the default message instead of given message matches when validation uses given message matches when validation uses given message that has an interpolated variable it supports ignoring_interference_by_writer when the writer method for the attribute changes incoming values and the value change causes a test failure lists how the value got changed in the failure message behaves like it supports allow_nil allows other qualifiers to be chained afterward matches when the validation specifies allow_nil behaves like it supports allow_nil matches when the validation specifies allow_nil matches when the validation does not specify allow_nil allows other qualifiers to be chained afterward behaves like it supports allow_blank matches when the validation specifies allow_blank against a time attribute behaves like it supports in_array matches given a subset of the valid values does not match when one of the given values is invalid fails when used in the negative matches given the same array of valid values it supports ignoring_interference_by_writer when the writer method for the attribute changes incoming values and the value change causes a test failure lists how the value got changed in the failure message behaves like it supports with_message given nil is as if with_message had never been called not having been qualified matches when the validation uses the default message and it is overridden in i18n does not match when the validation is configured with an overridden message matches when the validation uses the default message given a string matches when validation uses given message does not match when validation uses the default message instead of given message does not match when validation uses a message but it is not same as given matches when validation uses given message that has an interpolated variable given a regex does not match when validation uses a message but it does not match regex matches when validation uses a message that matches the regex does not match when validation uses the default message instead of given message behaves like it supports allow_blank matches when the validation specifies allow_blank behaves like it supports allow_blank matches when the validation specifies allow_blank does not match when the validation does not specify allow_blank behaves like it supports allow_nil allows other qualifiers to be chained afterward matches when the validation specifies allow_nil does not match when the validation does not specify allow_nil when the record has no validations passes when used in the negative fails when used in the positive with an appropriate failure message behaves like it supports allow_nil matches when the validation specifies allow_nil allows other qualifiers to be chained afterward behaves like it supports with_message not having been qualified matches when the validation uses the default message matches when the validation uses the default message and it is overridden in i18n does not match when the validation is configured with an overridden message given a string does not match when validation uses a message but it is not same as given matches when validation uses given message matches when validation uses given message that has an interpolated variable does not match when validation uses the default message instead of given message given nil is as if with_message had never been called given a regex does not match when validation uses a message but it does not match regex does not match when validation uses the default message instead of given message matches when validation uses a message that matches the regex behaves like it supports in_range does not match a record with no validations matches given a range that exactly matches the valid range does not match given a range whose end value falls inside valid range does not match given a range whose start value falls inside valid range does not match given a range whose end value falls outside valid range does not match given a range whose start value falls outside valid range it supports ignoring_interference_by_writer when the writer method for the attribute changes incoming values and the value change causes a test failure lists how the value got changed in the failure message behaves like it supports allow_blank matches when the validation specifies allow_blank behaves like it supports allow_nil matches when the validation specifies allow_nil allows other qualifiers to be chained afterward behaves like it supports allow_nil allows other qualifiers to be chained afterward matches when the validation does not specify allow_nil matches when the validation specifies allow_nil behaves like it supports allow_blank matches when the validation specifies allow_blank matches when the validation does not specify allow_blank behaves like it supports with_message given nil is as if with_message had never been called given a regex does not match when validation uses a message but it does not match regex matches when validation uses a message that matches the regex does not match when validation uses the default message instead of given message given a string matches when validation uses given message does not match when validation uses the default message instead of given message does not match when validation uses a message but it is not same as given matches when validation uses given message that has an interpolated variable not having been qualified matches when the validation uses the default message does not match when the validation is configured with an overridden message matches when the validation uses the default message and it is overridden in i18n behaves like it supports with_message given nil is as if with_message had never been called given a string matches when validation uses given message that has an interpolated variable matches when validation uses given message does not match when validation uses a message but it is not same as given does not match when validation uses the default message instead of given message not having been qualified matches when the validation uses the default message and it is overridden in i18n does not match when the validation is configured with an overridden message matches when the validation uses the default message given a regex matches when validation uses a message that matches the regex does not match when validation uses the default message instead of given message does not match when validation uses a message but it does not match regex against a boolean attribute (designated by true) when ensuring inclusion of true matches when ensuring inclusion of false matches when ensuring inclusion of true and false matches prints a warning prints a warning against a decimal attribute behaves like it supports in_array matches when one of the given values is a zero fails when used in the negative matches given a subset of the valid values matches given the same array of valid values raises an error when valid and given value is our test outside value does not match when one of the given values is invalid behaves like it supports allow_blank matches when the validation specifies allow_blank does not match when the validation does not specify allow_blank behaves like it supports allow_blank matches when the validation specifies allow_blank behaves like it supports with_message given a string does not match when validation uses the default message instead of given message matches when validation uses given message that has an interpolated variable matches when validation uses given message does not match when validation uses a message but it is not same as given given nil is as if with_message had never been called given a regex matches when validation uses a message that matches the regex does not match when validation uses a message but it does not match regex does not match when validation uses the default message instead of given message not having been qualified does not match when the validation is configured with an overridden message matches when the validation uses the default message and it is overridden in i18n matches when the validation uses the default message when the record has no validations fails when used in the positive with an appropriate failure message passes when used in the negative behaves like it supports allow_nil matches when the validation specifies allow_nil does not match when the validation does not specify allow_nil allows other qualifiers to be chained afterward behaves like it supports allow_nil allows other qualifiers to be chained afterward matches when the validation specifies allow_nil it supports ignoring_interference_by_writer when the writer method for the attribute changes incoming values and the value change causes a test failure lists how the value got changed in the failure message behaves like it supports with_message given a string matches when validation uses given message that has an interpolated variable does not match when validation uses a message but it is not same as given does not match when validation uses the default message instead of given message matches when validation uses given message given nil is as if with_message had never been called not having been qualified does not match when the validation is configured with an overridden message matches when the validation uses the default message and it is overridden in i18n matches when the validation uses the default message given a regex matches when validation uses a message that matches the regex does not match when validation uses a message but it does not match regex does not match when validation uses the default message instead of given message behaves like it supports in_range does not match given a range whose start value falls outside valid range does not match a record with no validations does not match given a range whose start value falls inside valid range does not match given a range whose end value falls inside valid range matches given a range that exactly matches the valid range does not match given a range whose end value falls outside valid range behaves like it supports with_message given a regex matches when validation uses a message that matches the regex does not match when validation uses the default message instead of given message does not match when validation uses a message but it does not match regex given a string matches when validation uses given message matches when validation uses given message that has an interpolated variable does not match when validation uses a message but it is not same as given does not match when validation uses the default message instead of given message given nil is as if with_message had never been called not having been qualified matches when the validation uses the default message and it is overridden in i18n matches when the validation uses the default message does not match when the validation is configured with an overridden message behaves like it supports allow_nil allows other qualifiers to be chained afterward matches when the validation specifies allow_nil behaves like it supports allow_blank matches when the validation specifies allow_blank behaves like it supports allow_nil matches when the validation specifies allow_nil allows other qualifiers to be chained afterward matches when the validation does not specify allow_nil it supports ignoring_interference_by_writer when the writer method for the attribute changes incoming values and the value change causes a test failure lists how the value got changed in the failure message behaves like it supports allow_blank matches when the validation does not specify allow_blank matches when the validation specifies allow_blank behaves like it supports with_message not having been qualified matches when the validation uses the default message does not match when the validation is configured with an overridden message matches when the validation uses the default message and it is overridden in i18n given a regex does not match when validation uses the default message instead of given message matches when validation uses a message that matches the regex does not match when validation uses a message but it does not match regex given nil is as if with_message had never been called given a string matches when validation uses given message that has an interpolated variable does not match when validation uses a message but it is not same as given does not match when validation uses the default message instead of given message matches when validation uses given message against an integer attribute behaves like it supports in_range does not match a record with no validations does not match given a range whose end value falls inside valid range does not match given a range whose start value falls inside valid range does not match given a range whose start value falls outside valid range matches given a range that exactly matches the valid range does not match given a range whose end value falls outside valid range behaves like it supports allow_nil matches when the validation does not specify allow_nil allows other qualifiers to be chained afterward matches when the validation specifies allow_nil behaves like it supports with_message not having been qualified matches when the validation uses the default message does not match when the validation is configured with an overridden message matches when the validation uses the default message and it is overridden in i18n given nil is as if with_message had never been called given a regex matches when validation uses a message that matches the regex does not match when validation uses the default message instead of given message does not match when validation uses a message but it does not match regex given a string does not match when validation uses a message but it is not same as given matches when validation uses given message does not match when validation uses the default message instead of given message matches when validation uses given message that has an interpolated variable behaves like it supports allow_nil allows other qualifiers to be chained afterward matches when the validation specifies allow_nil behaves like it supports with_message given a string does not match when validation uses the default message instead of given message does not match when validation uses a message but it is not same as given matches when validation uses given message matches when validation uses given message that has an interpolated variable given nil is as if with_message had never been called given a regex matches when validation uses a message that matches the regex does not match when validation uses the default message instead of given message does not match when validation uses a message but it does not match regex not having been qualified matches when the validation uses the default message and it is overridden in i18n does not match when the validation is configured with an overridden message matches when the validation uses the default message it supports ignoring_interference_by_writer when the writer method for the attribute changes incoming values and the value change causes a test failure lists how the value got changed in the failure message behaves like it supports allow_blank matches when the validation does not specify allow_blank matches when the validation specifies allow_blank behaves like it supports allow_blank matches when the validation specifies allow_blank when attribute validates a range of values via custom validation matches ensuring the correct range and messages behaves like it supports in_array matches given a subset of the valid values fails when used in the negative does not match when one of the given values is invalid matches when one of the given values is a zero matches given the same array of valid values raises an error when valid and given value is our test outside value it supports ignoring_interference_by_writer when the writer method for the attribute changes incoming values and the value change causes a test failure lists how the value got changed in the failure message behaves like it supports allow_nil allows other qualifiers to be chained afterward matches when the validation specifies allow_nil behaves like it supports allow_blank matches when the validation specifies allow_blank behaves like it supports allow_blank does not match when the validation does not specify allow_blank matches when the validation specifies allow_blank behaves like it supports allow_nil does not match when the validation does not specify allow_nil matches when the validation specifies allow_nil allows other qualifiers to be chained afterward behaves like it supports with_message given a regex does not match when validation uses the default message instead of given message does not match when validation uses a message but it does not match regex matches when validation uses a message that matches the regex given nil is as if with_message had never been called not having been qualified matches when the validation uses the default message does not match when the validation is configured with an overridden message matches when the validation uses the default message and it is overridden in i18n given a string does not match when validation uses the default message instead of given message matches when validation uses given message that has an interpolated variable matches when validation uses given message does not match when validation uses a message but it is not same as given behaves like it supports with_message given a regex matches when validation uses a message that matches the regex does not match when validation uses a message but it does not match regex does not match when validation uses the default message instead of given message given a string does not match when validation uses the default message instead of given message matches when validation uses given message that has an interpolated variable matches when validation uses given message does not match when validation uses a message but it is not same as given given nil is as if with_message had never been called not having been qualified matches when the validation uses the default message and it is overridden in i18n does not match when the validation is configured with an overridden message matches when the validation uses the default message when the record has no validations fails when used in the positive with an appropriate failure message passes when used in the negative against an attribute with a specific column limit does not raise an exception when attempting to use the matcher against a string attribute behaves like it supports in_array does not match when one of the given values is invalid matches given the same array of valid values matches given a subset of the valid values fails when used in the negative raises an error when valid and given value is our test outside value behaves like it supports with_message given a regex matches when validation uses a message that matches the regex does not match when validation uses the default message instead of given message does not match when validation uses a message but it does not match regex given nil is as if with_message had never been called given a string matches when validation uses given message does not match when validation uses a message but it is not same as given matches when validation uses given message that has an interpolated variable does not match when validation uses the default message instead of given message not having been qualified matches when the validation uses the default message matches when the validation uses the default message and it is overridden in i18n does not match when the validation is configured with an overridden message behaves like it supports allow_nil matches when the validation specifies allow_nil does not match when the validation does not specify allow_nil allows other qualifiers to be chained afterward behaves like it supports with_message given a regex matches when validation uses a message that matches the regex does not match when validation uses the default message instead of given message does not match when validation uses a message but it does not match regex given nil is as if with_message had never been called not having been qualified does not match when the validation is configured with an overridden message matches when the validation uses the default message and it is overridden in i18n matches when the validation uses the default message given a string matches when validation uses given message does not match when validation uses a message but it is not same as given matches when validation uses given message that has an interpolated variable does not match when validation uses the default message instead of given message behaves like it supports allow_blank matches when the validation specifies allow_blank it supports ignoring_interference_by_writer when the writer method for the attribute changes incoming values and the value change causes a test failure lists how the value got changed in the failure message behaves like it supports allow_nil allows other qualifiers to be chained afterward matches when the validation specifies allow_nil behaves like it supports allow_blank does not match when the validation does not specify allow_blank matches when the validation specifies allow_blank when the record has no validations passes when used in the negative fails when used in the positive with an appropriate failure message against a datetime attribute behaves like it supports in_range does not match given a range whose end value falls outside valid range does not match given a range whose end value falls inside valid range matches given a range that exactly matches the valid range does not match a record with no validations does not match given a range whose start value falls inside valid range does not match given a range whose start value falls outside valid range behaves like it supports allow_nil allows other qualifiers to be chained afterward matches when the validation specifies allow_nil behaves like it supports allow_blank matches when the validation specifies allow_blank behaves like it supports with_message not having been qualified matches when the validation uses the default message and it is overridden in i18n matches when the validation uses the default message does not match when the validation is configured with an overridden message given nil is as if with_message had never been called given a string matches when validation uses given message that has an interpolated variable does not match when validation uses the default message instead of given message matches when validation uses given message does not match when validation uses a message but it is not same as given given a regex matches when validation uses a message that matches the regex does not match when validation uses the default message instead of given message does not match when validation uses a message but it does not match regex behaves like it supports allow_nil allows other qualifiers to be chained afterward matches when the validation does not specify allow_nil matches when the validation specifies allow_nil behaves like it supports allow_blank matches when the validation specifies allow_blank matches when the validation does not specify allow_blank it supports ignoring_interference_by_writer when the writer method for the attribute changes incoming values and the value change causes a test failure lists how the value got changed in the failure message behaves like it supports with_message given a string does not match when validation uses the default message instead of given message matches when validation uses given message matches when validation uses given message that has an interpolated variable does not match when validation uses a message but it is not same as given given a regex matches when validation uses a message that matches the regex does not match when validation uses a message but it does not match regex does not match when validation uses the default message instead of given message given nil is as if with_message had never been called not having been qualified does not match when the validation is configured with an overridden message matches when the validation uses the default message matches when the validation uses the default message and it is overridden in i18n behaves like it supports in_array raises an error when valid and given value is our test outside value matches given the same array of valid values fails when used in the negative matches given a subset of the valid values does not match when one of the given values is invalid behaves like it supports allow_nil does not match when the validation does not specify allow_nil matches when the validation specifies allow_nil allows other qualifiers to be chained afterward behaves like it supports allow_blank does not match when the validation does not specify allow_blank matches when the validation specifies allow_blank behaves like it supports allow_nil allows other qualifiers to be chained afterward matches when the validation specifies allow_nil when the record has no validations fails when used in the positive with an appropriate failure message passes when used in the negative behaves like it supports allow_blank matches when the validation specifies allow_blank it supports ignoring_interference_by_writer when the writer method for the attribute changes incoming values and the value change causes a test failure lists how the value got changed in the failure message behaves like it supports with_message given nil is as if with_message had never been called given a string matches when validation uses given message does not match when validation uses a message but it is not same as given matches when validation uses given message that has an interpolated variable does not match when validation uses the default message instead of given message not having been qualified matches when the validation uses the default message and it is overridden in i18n does not match when the validation is configured with an overridden message matches when the validation uses the default message given a regex matches when validation uses a message that matches the regex does not match when validation uses the default message instead of given message does not match when validation uses a message but it does not match regex behaves like it supports with_message not having been qualified matches when the validation uses the default message and it is overridden in i18n does not match when the validation is configured with an overridden message matches when the validation uses the default message given a string does not match when validation uses a message but it is not same as given does not match when validation uses the default message instead of given message matches when validation uses given message that has an interpolated variable matches when validation uses given message given nil is as if with_message had never been called given a regex does not match when validation uses the default message instead of given message does not match when validation uses a message but it does not match regex matches when validation uses a message that matches the regex against a boolean attribute (designated by false) when ensuring inclusion of false matches when ensuring inclusion of true and false prints a warning prints a warning matches when ensuring inclusion of true matches for a database column against a string attribute behaves like it supports in_array matches given the same array of valid values raises an error when valid and given value is our test outside value does not match when one of the given values is invalid fails when used in the negative matches given a subset of the valid values behaves like it supports with_message given nil is as if with_message had never been called given a regex does not match when validation uses a message but it does not match regex does not match when validation uses the default message instead of given message matches when validation uses a message that matches the regex given a string matches when validation uses given message matches when validation uses given message that has an interpolated variable does not match when validation uses a message but it is not same as given does not match when validation uses the default message instead of given message not having been qualified matches when the validation uses the default message matches when the validation uses the default message and it is overridden in i18n does not match when the validation is configured with an overridden message behaves like it supports with_message given nil is as if with_message had never been called given a string does not match when validation uses a message but it is not same as given matches when validation uses given message that has an interpolated variable does not match when validation uses the default message instead of given message matches when validation uses given message given a regex does not match when validation uses a message but it does not match regex matches when validation uses a message that matches the regex does not match when validation uses the default message instead of given message not having been qualified does not match when the validation is configured with an overridden message matches when the validation uses the default message and it is overridden in i18n matches when the validation uses the default message it supports ignoring_interference_by_writer when the writer method for the attribute changes incoming values and the value change causes a test failure lists how the value got changed in the failure message behaves like it supports allow_nil matches when the validation specifies allow_nil does not match when the validation does not specify allow_nil allows other qualifiers to be chained afterward behaves like it supports allow_blank matches when the validation specifies allow_blank when the record has no validations passes when used in the negative fails when used in the positive with an appropriate failure message behaves like it supports allow_blank matches when the validation specifies allow_blank does not match when the validation does not specify allow_blank behaves like it supports allow_nil allows other qualifiers to be chained afterward matches when the validation specifies allow_nil against a timestamp column behaves like it supports in_array matches given a subset of the valid values matches given the same array of valid values fails when used in the negative raises an error when valid and given value is our test outside value does not match when one of the given values is invalid when the record has no validations fails when used in the positive with an appropriate failure message passes when used in the negative behaves like it supports allow_blank matches when the validation specifies allow_blank does not match when the validation does not specify allow_blank behaves like it supports allow_nil matches when the validation specifies allow_nil allows other qualifiers to be chained afterward behaves like it supports allow_blank matches when the validation specifies allow_blank behaves like it supports with_message not having been qualified does not match when the validation is configured with an overridden message matches when the validation uses the default message and it is overridden in i18n matches when the validation uses the default message given nil is as if with_message had never been called given a string does not match when validation uses a message but it is not same as given matches when validation uses given message matches when validation uses given message that has an interpolated variable does not match when validation uses the default message instead of given message given a regex matches when validation uses a message that matches the regex does not match when validation uses the default message instead of given message does not match when validation uses a message but it does not match regex it supports ignoring_interference_by_writer when the writer method for the attribute changes incoming values and the value change causes a test failure lists how the value got changed in the failure message behaves like it supports with_message given nil is as if with_message had never been called given a regex does not match when validation uses a message but it does not match regex does not match when validation uses the default message instead of given message matches when validation uses a message that matches the regex not having been qualified matches when the validation uses the default message matches when the validation uses the default message and it is overridden in i18n does not match when the validation is configured with an overridden message given a string does not match when validation uses the default message instead of given message does not match when validation uses a message but it is not same as given matches when validation uses given message matches when validation uses given message that has an interpolated variable behaves like it supports allow_nil matches when the validation specifies allow_nil allows other qualifiers to be chained afterward does not match when the validation does not specify allow_nil behaves like it supports in_range does not match given a range whose start value falls outside valid range does not match given a range whose start value falls inside valid range does not match a record with no validations matches given a range that exactly matches the valid range does not match given a range whose end value falls outside valid range does not match given a range whose end value falls inside valid range behaves like it supports allow_blank matches when the validation specifies allow_blank matches when the validation does not specify allow_blank behaves like it supports allow_blank matches when the validation specifies allow_blank behaves like it supports with_message given a regex matches when validation uses a message that matches the regex does not match when validation uses a message but it does not match regex does not match when validation uses the default message instead of given message given a string does not match when validation uses the default message instead of given message matches when validation uses given message that has an interpolated variable does not match when validation uses a message but it is not same as given matches when validation uses given message not having been qualified does not match when the validation is configured with an overridden message matches when the validation uses the default message and it is overridden in i18n matches when the validation uses the default message given nil is as if with_message had never been called behaves like it supports with_message not having been qualified matches when the validation uses the default message does not match when the validation is configured with an overridden message matches when the validation uses the default message and it is overridden in i18n given a string matches when validation uses given message does not match when validation uses a message but it is not same as given does not match when validation uses the default message instead of given message matches when validation uses given message that has an interpolated variable given nil is as if with_message had never been called given a regex does not match when validation uses the default message instead of given message does not match when validation uses a message but it does not match regex matches when validation uses a message that matches the regex it supports ignoring_interference_by_writer when the writer method for the attribute changes incoming values and the value change causes a test failure lists how the value got changed in the failure message behaves like it supports allow_nil matches when the validation does not specify allow_nil allows other qualifiers to be chained afterward matches when the validation specifies allow_nil behaves like it supports allow_nil allows other qualifiers to be chained afterward matches when the validation specifies allow_nil against a decimal attribute behaves like it supports in_range does not match a record with no validations does not match given a range whose start value falls outside valid range does not match given a range whose start value falls inside valid range matches given a range that exactly matches the valid range does not match given a range whose end value falls inside valid range does not match given a range whose end value falls outside valid range behaves like it supports allow_nil allows other qualifiers to be chained afterward matches when the validation specifies allow_nil behaves like it supports allow_blank matches when the validation specifies allow_blank it supports ignoring_interference_by_writer when the writer method for the attribute changes incoming values and the value change causes a test failure lists how the value got changed in the failure message behaves like it supports with_message given nil is as if with_message had never been called given a regex matches when validation uses a message that matches the regex does not match when validation uses a message but it does not match regex does not match when validation uses the default message instead of given message given a string matches when validation uses given message that has an interpolated variable does not match when validation uses the default message instead of given message matches when validation uses given message does not match when validation uses a message but it is not same as given not having been qualified does not match when the validation is configured with an overridden message matches when the validation uses the default message matches when the validation uses the default message and it is overridden in i18n behaves like it supports allow_blank matches when the validation specifies allow_blank matches when the validation does not specify allow_blank behaves like it supports with_message not having been qualified matches when the validation uses the default message does not match when the validation is configured with an overridden message matches when the validation uses the default message and it is overridden in i18n given a string does not match when validation uses a message but it is not same as given does not match when validation uses the default message instead of given message matches when validation uses given message matches when validation uses given message that has an interpolated variable given a regex matches when validation uses a message that matches the regex does not match when validation uses a message but it does not match regex does not match when validation uses the default message instead of given message given nil is as if with_message had never been called behaves like it supports allow_nil allows other qualifiers to be chained afterward matches when the validation specifies allow_nil matches when the validation does not specify allow_nil behaves like it supports in_array matches given the same array of valid values matches given a subset of the valid values raises an error when valid and given value is our test outside value does not match when one of the given values is invalid fails when used in the negative matches when one of the given values is a zero when the record has no validations passes when used in the negative fails when used in the positive with an appropriate failure message behaves like it supports allow_blank matches when the validation specifies allow_blank it supports ignoring_interference_by_writer when the writer method for the attribute changes incoming values and the value change causes a test failure lists how the value got changed in the failure message behaves like it supports allow_blank matches when the validation specifies allow_blank does not match when the validation does not specify allow_blank behaves like it supports allow_nil allows other qualifiers to be chained afterward matches when the validation specifies allow_nil behaves like it supports with_message given nil is as if with_message had never been called given a string matches when validation uses given message that has an interpolated variable does not match when validation uses the default message instead of given message matches when validation uses given message does not match when validation uses a message but it is not same as given given a regex does not match when validation uses a message but it does not match regex does not match when validation uses the default message instead of given message matches when validation uses a message that matches the regex not having been qualified matches when the validation uses the default message does not match when the validation is configured with an overridden message matches when the validation uses the default message and it is overridden in i18n behaves like it supports with_message given nil is as if with_message had never been called not having been qualified does not match when the validation is configured with an overridden message matches when the validation uses the default message matches when the validation uses the default message and it is overridden in i18n given a string matches when validation uses given message does not match when validation uses the default message instead of given message does not match when validation uses a message but it is not same as given matches when validation uses given message that has an interpolated variable given a regex does not match when validation uses a message but it does not match regex does not match when validation uses the default message instead of given message matches when validation uses a message that matches the regex behaves like it supports allow_nil matches when the validation specifies allow_nil does not match when the validation does not specify allow_nil allows other qualifiers to be chained afterward against an integer attribute when attribute validates a range of values via custom validation matches ensuring the correct range and messages behaves like it supports in_array matches when one of the given values is a zero matches given the same array of valid values fails when used in the negative matches given a subset of the valid values does not match when one of the given values is invalid raises an error when valid and given value is our test outside value it supports ignoring_interference_by_writer when the writer method for the attribute changes incoming values and the value change causes a test failure lists how the value got changed in the failure message behaves like it supports with_message not having been qualified matches when the validation uses the default message and it is overridden in i18n does not match when the validation is configured with an overridden message matches when the validation uses the default message given a regex does not match when validation uses a message but it does not match regex does not match when validation uses the default message instead of given message matches when validation uses a message that matches the regex given a string matches when validation uses given message does not match when validation uses a message but it is not same as given matches when validation uses given message that has an interpolated variable does not match when validation uses the default message instead of given message given nil is as if with_message had never been called when the record has no validations fails when used in the positive with an appropriate failure message passes when used in the negative behaves like it supports allow_nil allows other qualifiers to be chained afterward matches when the validation specifies allow_nil behaves like it supports allow_nil matches when the validation specifies allow_nil does not match when the validation does not specify allow_nil allows other qualifiers to be chained afterward behaves like it supports allow_blank matches when the validation specifies allow_blank behaves like it supports allow_blank does not match when the validation does not specify allow_blank matches when the validation specifies allow_blank behaves like it supports with_message given a string does not match when validation uses a message but it is not same as given matches when validation uses given message does not match when validation uses the default message instead of given message matches when validation uses given message that has an interpolated variable given nil is as if with_message had never been called not having been qualified does not match when the validation is configured with an overridden message matches when the validation uses the default message and it is overridden in i18n matches when the validation uses the default message given a regex does not match when validation uses the default message instead of given message matches when validation uses a message that matches the regex does not match when validation uses a message but it does not match regex behaves like it supports in_range does not match given a range whose end value falls inside valid range does not match a record with no validations does not match given a range whose end value falls outside valid range matches given a range that exactly matches the valid range does not match given a range whose start value falls inside valid range does not match given a range whose start value falls outside valid range behaves like it supports allow_nil matches when the validation does not specify allow_nil matches when the validation specifies allow_nil allows other qualifiers to be chained afterward behaves like it supports with_message given a string does not match when validation uses a message but it is not same as given matches when validation uses given message that has an interpolated variable matches when validation uses given message does not match when validation uses the default message instead of given message not having been qualified does not match when the validation is configured with an overridden message matches when the validation uses the default message matches when the validation uses the default message and it is overridden in i18n given a regex matches when validation uses a message that matches the regex does not match when validation uses a message but it does not match regex does not match when validation uses the default message instead of given message given nil is as if with_message had never been called behaves like it supports allow_blank matches when the validation specifies allow_blank matches when the validation does not specify allow_blank behaves like it supports with_message given a string does not match when validation uses the default message instead of given message does not match when validation uses a message but it is not same as given matches when validation uses given message that has an interpolated variable matches when validation uses given message given nil is as if with_message had never been called not having been qualified matches when the validation uses the default message and it is overridden in i18n matches when the validation uses the default message does not match when the validation is configured with an overridden message given a regex does not match when validation uses a message but it does not match regex does not match when validation uses the default message instead of given message matches when validation uses a message that matches the regex behaves like it supports allow_nil allows other qualifiers to be chained afterward matches when the validation specifies allow_nil behaves like it supports allow_blank matches when the validation specifies allow_blank it supports ignoring_interference_by_writer when the writer method for the attribute changes incoming values and the value change causes a test failure lists how the value got changed in the failure message against a date attribute behaves like it supports in_array does not match when one of the given values is invalid matches given the same array of valid values matches given a subset of the valid values raises an error when valid and given value is our test outside value fails when used in the negative behaves like it supports allow_blank matches when the validation specifies allow_blank does not match when the validation does not specify allow_blank it supports ignoring_interference_by_writer when the writer method for the attribute changes incoming values and the value change causes a test failure lists how the value got changed in the failure message behaves like it supports with_message given a regex matches when validation uses a message that matches the regex does not match when validation uses the default message instead of given message does not match when validation uses a message but it does not match regex given nil is as if with_message had never been called not having been qualified matches when the validation uses the default message and it is overridden in i18n does not match when the validation is configured with an overridden message matches when the validation uses the default message given a string matches when validation uses given message matches when validation uses given message that has an interpolated variable does not match when validation uses a message but it is not same as given does not match when validation uses the default message instead of given message behaves like it supports allow_blank matches when the validation specifies allow_blank when the record has no validations fails when used in the positive with an appropriate failure message passes when used in the negative behaves like it supports allow_nil matches when the validation specifies allow_nil allows other qualifiers to be chained afterward behaves like it supports with_message given nil is as if with_message had never been called not having been qualified does not match when the validation is configured with an overridden message matches when the validation uses the default message and it is overridden in i18n matches when the validation uses the default message given a string does not match when validation uses the default message instead of given message matches when validation uses given message that has an interpolated variable matches when validation uses given message does not match when validation uses a message but it is not same as given given a regex matches when validation uses a message that matches the regex does not match when validation uses a message but it does not match regex does not match when validation uses the default message instead of given message behaves like it supports allow_nil matches when the validation specifies allow_nil allows other qualifiers to be chained afterward does not match when the validation does not specify allow_nil behaves like it supports in_range does not match given a range whose start value falls outside valid range does not match given a range whose start value falls inside valid range does not match given a range whose end value falls inside valid range does not match given a range whose end value falls outside valid range matches given a range that exactly matches the valid range does not match a record with no validations behaves like it supports allow_nil matches when the validation does not specify allow_nil matches when the validation specifies allow_nil allows other qualifiers to be chained afterward behaves like it supports allow_nil matches when the validation specifies allow_nil allows other qualifiers to be chained afterward behaves like it supports with_message given a string does not match when validation uses the default message instead of given message matches when validation uses given message that has an interpolated variable does not match when validation uses a message but it is not same as given matches when validation uses given message given a regex matches when validation uses a message that matches the regex does not match when validation uses the default message instead of given message does not match when validation uses a message but it does not match regex given nil is as if with_message had never been called not having been qualified matches when the validation uses the default message does not match when the validation is configured with an overridden message matches when the validation uses the default message and it is overridden in i18n it supports ignoring_interference_by_writer when the writer method for the attribute changes incoming values and the value change causes a test failure lists how the value got changed in the failure message behaves like it supports allow_blank matches when the validation does not specify allow_blank matches when the validation specifies allow_blank behaves like it supports with_message not having been qualified matches when the validation uses the default message matches when the validation uses the default message and it is overridden in i18n does not match when the validation is configured with an overridden message given nil is as if with_message had never been called given a regex does not match when validation uses a message but it does not match regex matches when validation uses a message that matches the regex does not match when validation uses the default message instead of given message given a string does not match when validation uses a message but it is not same as given matches when validation uses given message that has an interpolated variable does not match when validation uses the default message instead of given message matches when validation uses given message behaves like it supports allow_blank matches when the validation specifies allow_blank against a time attribute behaves like it supports in_range does not match given a range whose end value falls outside valid range does not match given a range whose start value falls outside valid range does not match given a range whose start value falls inside valid range does not match given a range whose end value falls inside valid range matches given a range that exactly matches the valid range does not match a record with no validations behaves like it supports allow_nil matches when the validation specifies allow_nil allows other qualifiers to be chained afterward behaves like it supports with_message given a string does not match when validation uses the default message instead of given message does not match when validation uses a message but it is not same as given matches when validation uses given message that has an interpolated variable matches when validation uses given message given a regex matches when validation uses a message that matches the regex does not match when validation uses a message but it does not match regex does not match when validation uses the default message instead of given message not having been qualified does not match when the validation is configured with an overridden message matches when the validation uses the default message matches when the validation uses the default message and it is overridden in i18n given nil is as if with_message had never been called behaves like it supports allow_blank matches when the validation specifies allow_blank matches when the validation does not specify allow_blank behaves like it supports allow_blank matches when the validation specifies allow_blank behaves like it supports allow_nil allows other qualifiers to be chained afterward matches when the validation specifies allow_nil matches when the validation does not specify allow_nil it supports ignoring_interference_by_writer when the writer method for the attribute changes incoming values and the value change causes a test failure lists how the value got changed in the failure message behaves like it supports with_message given a regex does not match when validation uses the default message instead of given message matches when validation uses a message that matches the regex does not match when validation uses a message but it does not match regex not having been qualified does not match when the validation is configured with an overridden message matches when the validation uses the default message matches when the validation uses the default message and it is overridden in i18n given nil is as if with_message had never been called given a string does not match when validation uses a message but it is not same as given matches when validation uses given message that has an interpolated variable does not match when validation uses the default message instead of given message matches when validation uses given message behaves like it supports in_array matches given a subset of the valid values matches given the same array of valid values does not match when one of the given values is invalid fails when used in the negative behaves like it supports allow_nil allows other qualifiers to be chained afterward matches when the validation specifies allow_nil behaves like it supports with_message given a string matches when validation uses given message that has an interpolated variable does not match when validation uses the default message instead of given message does not match when validation uses a message but it is not same as given matches when validation uses given message not having been qualified does not match when the validation is configured with an overridden message matches when the validation uses the default message and it is overridden in i18n matches when the validation uses the default message given a regex does not match when validation uses a message but it does not match regex does not match when validation uses the default message instead of given message matches when validation uses a message that matches the regex given nil is as if with_message had never been called behaves like it supports with_message given a regex does not match when validation uses the default message instead of given message matches when validation uses a message that matches the regex does not match when validation uses a message but it does not match regex given a string does not match when validation uses a message but it is not same as given matches when validation uses given message does not match when validation uses the default message instead of given message matches when validation uses given message that has an interpolated variable given nil is as if with_message had never been called not having been qualified matches when the validation uses the default message and it is overridden in i18n matches when the validation uses the default message does not match when the validation is configured with an overridden message when the record has no validations fails when used in the positive with an appropriate failure message passes when used in the negative behaves like it supports allow_nil allows other qualifiers to be chained afterward matches when the validation specifies allow_nil does not match when the validation does not specify allow_nil behaves like it supports allow_blank matches when the validation specifies allow_blank behaves like it supports allow_blank does not match when the validation does not specify allow_blank matches when the validation specifies allow_blank it supports ignoring_interference_by_writer when the writer method for the attribute changes incoming values and the value change causes a test failure lists how the value got changed in the failure message against a float attribute behaves like it supports in_array does not match when one of the given values is invalid matches given the same array of valid values raises an error when valid and given value is our test outside value matches given a subset of the valid values matches when one of the given values is a zero fails when used in the negative behaves like it supports with_message given nil is as if with_message had never been called not having been qualified matches when the validation uses the default message and it is overridden in i18n does not match when the validation is configured with an overridden message matches when the validation uses the default message given a string does not match when validation uses a message but it is not same as given does not match when validation uses the default message instead of given message matches when validation uses given message that has an interpolated variable matches when validation uses given message given a regex does not match when validation uses the default message instead of given message matches when validation uses a message that matches the regex does not match when validation uses a message but it does not match regex behaves like it supports with_message given nil is as if with_message had never been called not having been qualified matches when the validation uses the default message and it is overridden in i18n matches when the validation uses the default message does not match when the validation is configured with an overridden message given a string does not match when validation uses the default message instead of given message matches when validation uses given message does not match when validation uses a message but it is not same as given matches when validation uses given message that has an interpolated variable given a regex does not match when validation uses a message but it does not match regex matches when validation uses a message that matches the regex does not match when validation uses the default message instead of given message behaves like it supports allow_nil matches when the validation specifies allow_nil allows other qualifiers to be chained afterward when the record has no validations passes when used in the negative fails when used in the positive with an appropriate failure message behaves like it supports allow_blank matches when the validation specifies allow_blank does not match when the validation does not specify allow_blank behaves like it supports allow_blank matches when the validation specifies allow_blank behaves like it supports allow_nil matches when the validation specifies allow_nil does not match when the validation does not specify allow_nil allows other qualifiers to be chained afterward it supports ignoring_interference_by_writer when the writer method for the attribute changes incoming values and the value change causes a test failure lists how the value got changed in the failure message behaves like it supports in_range does not match given a range whose start value falls outside valid range does not match a record with no validations matches given a range that exactly matches the valid range does not match given a range whose end value falls inside valid range does not match given a range whose end value falls outside valid range does not match given a range whose start value falls inside valid range behaves like it supports allow_nil matches when the validation does not specify allow_nil allows other qualifiers to be chained afterward matches when the validation specifies allow_nil behaves like it supports allow_blank matches when the validation specifies allow_blank matches when the validation does not specify allow_blank it supports ignoring_interference_by_writer when the writer method for the attribute changes incoming values and the value change causes a test failure lists how the value got changed in the failure message behaves like it supports allow_blank matches when the validation specifies allow_blank behaves like it supports allow_nil allows other qualifiers to be chained afterward matches when the validation specifies allow_nil behaves like it supports with_message not having been qualified does not match when the validation is configured with an overridden message matches when the validation uses the default message matches when the validation uses the default message and it is overridden in i18n given a string does not match when validation uses the default message instead of given message does not match when validation uses a message but it is not same as given matches when validation uses given message that has an interpolated variable matches when validation uses given message given nil is as if with_message had never been called given a regex matches when validation uses a message that matches the regex does not match when validation uses a message but it does not match regex does not match when validation uses the default message instead of given message behaves like it supports with_message given nil is as if with_message had never been called given a string does not match when validation uses a message but it is not same as given does not match when validation uses the default message instead of given message matches when validation uses given message matches when validation uses given message that has an interpolated variable given a regex matches when validation uses a message that matches the regex does not match when validation uses a message but it does not match regex does not match when validation uses the default message instead of given message not having been qualified matches when the validation uses the default message does not match when the validation is configured with an overridden message matches when the validation uses the default message and it is overridden in i18n against a boolean attribute which is nullable when ensuring inclusion of nil prints a warning matches when ensuring inclusion of true and false matches prints a warning prints a warning when ensuring inclusion of false matches when ensuring inclusion of true matches which is non-nullable when ensuring inclusion of false matches when ensuring inclusion of true matches when ensuring inclusion of nil raises a specific error when ensuring inclusion of true and false prints a warning prints a warning matches against an attribute with a specific column limit does not raise an exception when attempting to use the matcher against a datetime attribute behaves like it supports in_range does not match given a range whose start value falls outside valid range matches given a range that exactly matches the valid range does not match given a range whose end value falls outside valid range does not match a record with no validations does not match given a range whose end value falls inside valid range does not match given a range whose start value falls inside valid range it supports ignoring_interference_by_writer when the writer method for the attribute changes incoming values and the value change causes a test failure lists how the value got changed in the failure message behaves like it supports with_message given a regex matches when validation uses a message that matches the regex does not match when validation uses a message but it does not match regex does not match when validation uses the default message instead of given message given a string does not match when validation uses the default message instead of given message matches when validation uses given message that has an interpolated variable matches when validation uses given message does not match when validation uses a message but it is not same as given not having been qualified matches when the validation uses the default message and it is overridden in i18n does not match when the validation is configured with an overridden message matches when the validation uses the default message given nil is as if with_message had never been called behaves like it supports allow_nil matches when the validation specifies allow_nil allows other qualifiers to be chained afterward matches when the validation does not specify allow_nil behaves like it supports allow_nil matches when the validation specifies allow_nil allows other qualifiers to be chained afterward behaves like it supports allow_blank matches when the validation specifies allow_blank behaves like it supports allow_blank matches when the validation does not specify allow_blank matches when the validation specifies allow_blank behaves like it supports with_message given a regex does not match when validation uses the default message instead of given message matches when validation uses a message that matches the regex does not match when validation uses a message but it does not match regex given a string does not match when validation uses the default message instead of given message does not match when validation uses a message but it is not same as given matches when validation uses given message that has an interpolated variable matches when validation uses given message given nil is as if with_message had never been called not having been qualified does not match when the validation is configured with an overridden message matches when the validation uses the default message matches when the validation uses the default message and it is overridden in i18n behaves like it supports in_array raises an error when valid and given value is our test outside value matches given the same array of valid values does not match when one of the given values is invalid matches given a subset of the valid values fails when used in the negative behaves like it supports allow_blank matches when the validation specifies allow_blank behaves like it supports allow_nil allows other qualifiers to be chained afterward matches when the validation specifies allow_nil it supports ignoring_interference_by_writer when the writer method for the attribute changes incoming values and the value change causes a test failure lists how the value got changed in the failure message behaves like it supports with_message given a string does not match when validation uses a message but it is not same as given matches when validation uses given message matches when validation uses given message that has an interpolated variable does not match when validation uses the default message instead of given message given nil is as if with_message had never been called not having been qualified matches when the validation uses the default message and it is overridden in i18n matches when the validation uses the default message does not match when the validation is configured with an overridden message given a regex matches when validation uses a message that matches the regex does not match when validation uses a message but it does not match regex does not match when validation uses the default message instead of given message when the record has no validations passes when used in the negative fails when used in the positive with an appropriate failure message behaves like it supports allow_nil allows other qualifiers to be chained afterward matches when the validation specifies allow_nil does not match when the validation does not specify allow_nil behaves like it supports with_message not having been qualified does not match when the validation is configured with an overridden message matches when the validation uses the default message matches when the validation uses the default message and it is overridden in i18n given nil is as if with_message had never been called given a regex does not match when validation uses a message but it does not match regex does not match when validation uses the default message instead of given message matches when validation uses a message that matches the regex given a string matches when validation uses given message that has an interpolated variable does not match when validation uses a message but it is not same as given does not match when validation uses the default message instead of given message matches when validation uses given message behaves like it supports allow_blank does not match when the validation does not specify allow_blank matches when the validation specifies allow_blank Shoulda::Matchers::ActiveModel::ValidateConfirmationOfMatcher when the model does not have a confirmation attribute raises an AttributeDoesNotExistError when the model has all attributes, but does not have the validation fails with an appropriate failure message when both validation and matcher specify a custom message passes when the expected and actual messages match fails when the expected and actual messages do not match #description states that the confirmation must match its base attribute when the model does not have the attribute under test raises an AttributeDoesNotExistError when the model has a confirmation validation fails when used in the negative passes it supports ignoring_interference_by_writer when the writer method for the attribute changes incoming values and the value change causes a test failure lists how the value got changed in the failure message when a nil message is specified ignores it when the validation specifies a message via i18n passes Shoulda::Matchers::ActiveRecord::AssociationMatcher belong_to rejects an association that has no :inverse_of option accepts an association with a valid :inverse_of option rejects an association with non-existent implicit class name accepts an association with a valid :counter_cache option rejects an association with a bad :class_name option rejects an association with a non-matching :autosave option with the correct message accepts an association with a namespaced class name rejects an association with a bad :counter_cache option accepts an association without a :class_name option rejects an association that has no :counter_cache option accepts an association using an existing custom primary key accepts an association with a valid :conditions option defaults :counter_cache to true rejects an association of the wrong type rejects a nonexistent association accepts a polymorphic association adds error message when rejecting an association with non-existent class accepts an association with an existing custom foreign key resolves class_name within the context of the namespace before the global namespace rejects an association with non-existent explicit class name rejects an association that has a nonexistent foreign key accepts an association with a valid :dependent option accepts an association with a valid :class_name option accepts a good association with the default foreign key accepts an association with a matching :autosave option rejects an association with a bad :primary_key option rejects an association with a bad :inverse_of option rejects an association with a bad :conditions option rejects an association with a bad :dependent option given the association is neither configured to be required nor optional when qualified with required(true) when belongs_to is not configured to be required by default fails with an appropriate message when belongs_to is configured to be required by default passes when qualified with optional(true) when belongs_to is configured to be required by default fails with an appropriate message when belongs_to is not configured to be required by default passes when qualified with nothing when belongs_to is configured to be required by default passes when belongs_to is not configured to be required by default passes and a presence validation is on the attribute instead of using required: true passes and a presence validation is on the attribute with a condition and the condition is false passes and the condition is true passes when qualified with required(false) when belongs_to is not configured to be required by default passes when belongs_to is configured to be required by default fails with an appropriate message when qualified with optional(false) when belongs_to is not configured to be required by default fails with an appropriate message when belongs_to is configured to be required by default passes an association with a :touch option when the model has touch: true defaults to touch(true) accepts a matching touch option rejects a non-matching touch option will not break matcher when touch option is unspecified when the model has touch: false will not break matcher when touch option is unspecified rejects a non-matching touch option accepts a matching touch option defaults to touch(true) an association without a :validate option rejects validate(true) rejects validate() accepts validate(false) when the model ensures the association is set and the matcher is not qualified with anything and the matcher is not qualified with without_validating_presence fails with an appropriate message and the matcher is qualified with without_validating_presence passes and the matcher is qualified with required and the matcher is also qualified with without_validating_presence passes and the matcher is not qualified with without_validating_presence fails with an appropriate message given the association is configured as optional: true when qualified with optional(false) fails with an appropriate message when qualified with required(false) passes when qualified with optional(true) passes when qualified with required(true) fails with an appropriate message when qualified with nothing fails with an appropriate message given the association is configured with required: true when qualified with optional(true) fails with an appropriate message when qualified with required(false) passes when qualified with nothing passes when qualified with required(true) passes when qualified with optional(false) passes an association with a :validate option when the model has validate: true accepts a matching validate option defaults to validate(true) rejects a non-matching validate option will not break matcher when validate option is unspecified when the model has validate: false defaults to validate(true) will not break matcher when validate option is unspecified rejects a non-matching validate option accepts a matching validate option an association without a :touch option rejects touch() accepts touch(false) rejects touch(true) have_one rejects an association that has a nonexistent foreign key accepts an association with a valid :class_name option accepts an association with a valid :class_name and :foreign_key option (CPK) accepts an association with a matching :autosave option accepts a valid association with an :as option rejects an association with non-existent explicit class name accepts an association without a :class_name option rejects an association with a bad :class_name option accepts a nil dependent option if false accepts a valid association without any options accepts an association with a through accepts any dependent option if true adds error message when rejecting an association with non-existent class resolves class_name within the context of the namespace before the global namespace rejects an association with a bad :conditions option accepts an association using an existing custom primary key rejects an association with a bad through accepts an association with a valid :order option rejects any dependent options if false rejects an association with a valid :class_name and a bad :foreign_key option (CPK) rejects an association with non-existent implicit class name accepts an association with an existing custom foreign key accepts an association with a namespaced class name rejects an association with a valid :class_name and a bad :foreign_key option accepts an association with a valid :dependent option rejects an association with a bad :primary_key option accepts an association with a valid :conditions option rejects an association with a bad :as option rejects an association with a bad :order option rejects an association with a bad :dependent option rejects an association with a non-matching :autosave option with the correct message rejects an association with a valid :class_name and :foreign_key option (CPK), but no columns given an association with a non-matching :required option fails with an appropriate message validate rejects when the :validate option does not match assumes validate() means validate(true) accepts when the :validate option matches matches validate(false) to having no validate option specified given an association with a matching :required option passes have_many rejects an association that has the wrong :through option rejects an association with non-existent implicit class name rejects an association with a bad :dependent option resolves class_name within the context of the namespace before the global namespace rejects an association with a nonstandard reverse foreign key, if :inverse_of is not correct accepts an association with a valid :dependent option rejects an association with a bad :primary_key option accepts an association using an existing custom primary key accepts an association with a matching :autosave option accepts an association with a valid :class_name option accepts an association with a nonstandard reverse foreign key, using :inverse_of accepts a valid association with a :through option accepts a valid association without any options accepts an association with a nonstandard foreign key, with reverse association turned off rejects a :through association where there is no belongs_to in the inverse model accepts an association with a valid :source option rejects an association with non-existent explicit class name accepts a valid association with an :as option rejects an association with a bad :order option rejects an association with a bad :as option produces a failure message without exception when association is missing :through option rejects an association with a bad :source option accepts an association with a valid :order option adds error message when rejecting an association with non-existent class accepts an association with a namespaced class name does not reject a non-:through association where there is no belongs_to in the inverse model rejects an association that has a bad :through option accepts an association without a :class_name option rejects an association with a non-matching :autosave option with the correct message rejects an association with a bad :class_name option rejects an association that has a nonexistent foreign key validate accepts validate() when no :validate option was specified rejects validate(false) when the :validate option is true accepts validate(true) when the :validate option is true rejects validate() when :validate option is false assumes validate() means validate(true) rejects validate(false) when no :validate option was specified accepts validate(false) when the :validate option is false rejects validate(true) when the :validate option is false accepts validate(true) when no :validate option was specified if the association has a scope block and the block does not take an argument and the matcher is given conditions that do not match the conditions used in the scope rejects an association with a bad :conditions option and the matcher is given conditions that match the conditions used in the scope matches and the block takes an argument and the matcher is given conditions that do not match the scope matches and the matcher is given conditions that match the scope matches index_errors rejects an association with a non-matching :index_errors option and returns the correct message accepts an association with a matching :index_errors option have_and_belong_to_many rejects an association with non-existent implicit class name accepts an association with a namespaced class name rejects a nonexistent association accepts an association with a valid :conditions option accepts an association without a :class_name option rejects an association with a bad :conditions option rejects an association with a non-matching :autosave option with the correct message resolves class_name within the context of the namespace before the global namespace accepts a valid association accepts an association with a valid :class_name option rejects an association with non-existent explicit class name rejects an association with a bad :class_name option adds error message when rejecting an association with non-existent class accepts an association with a matching :autosave option rejects an association with a join table with incorrect columns rejects an association with a nonexistent join table rejects an association of the wrong type when qualified with join_table and it is a string and the association has been declared with a :join_table option which is the same as the matcher and the join table does not exist does not match, producing an appropriate failure message and the join table exists and the join table is missing columns does not match, producing an appropriate failure message and the join table has the appropriate foreign key columns matches which is the not the same as the matcher does not match, producing an appropriate failure message and the association has not been declared with a :join_table option does not match, producing an appropriate failure message and it is a symbol and the association has not been declared with a :join_table option does not match, producing an appropriate failure message and the association has been declared with a :join_table option which is the not the same as the matcher does not match, producing an appropriate failure message which is the same as the matcher and the join table does not exist does not match, producing an appropriate failure message and the join table exists and the join table is missing columns does not match, producing an appropriate failure message and the join table has the appropriate foreign key columns matches using a custom association foreign key rejects an association with a join table with incorrect columns accepts foreign keys when they are symbols when the matcher is not qualified with join_table but the association has still been declared with a :join_table option and the join table exists and the join table is missing columns does not match, producing an appropriate failure message and the join table has the appropriate foreign key columns matches and the join table does not exist does not match, producing an appropriate failure message using a custom foreign key rejects an association with a join table with incorrect columns validate assumes validate() means validate(true) accepts when the :validate option matches rejects when the :validate option does not match matches validate(false) to having no validate option specified Shoulda::Matchers::ActiveModel::DisallowValueMatcher an attribute where the message occurs on another attribute matches if the message is correct but the value is not does not match if the value and message are both correct an attribute with a format validation and a custom message does not match if the value and message are both correct delegates its failure message to its allow matcher's negative failure message matches if the message is correct but the value is not an attribute with a format validation matches if the value is not allowed does not match if the value is allowed an attribute with a context-dependent validation without the validation context does not match with the validation context disallows a bad value does not match a good value Shoulda::Matchers::ActiveRecord::DefineEnumForMatcher with both attribute name and enum values specified when the actual enum values are an array if the attribute is defined as an enum but the enum values do not match rejects with an appropriate failure message and the enum values match has the right description matches if the attribute is not defined as an enum rejects with an appropriate failure message when the actual enum values are a hash if the attribute is defined as an enum and the enum values match when expected enum values are an array matches has the right description when expected enum values are a hash has the right description matches but the enum values do not match rejects with an appropriate failure message if the attribute is not defined as an enum rejects with an appropriate failure message qualified with #with_suffix when the suffix is explicit if the attribute was not defined with a suffix rejects with an appropriate failure message if the attribute was defined with the same suffix has the right description matches if the attribute was defined with a different suffix rejects with an appropriate failure message when the suffix is implicit if the attribute was not defined with a suffix rejects with an appropriate failure message if the attribute was defined with a suffix has the right description matches if a method to hold enum values exists on the model but was not created via the enum macro rejects with an appropriate failure message qualified with both #with_prefix and #with_suffix if the attribute was not defined with a different prefix rejects with an appropriate failure message if the attribute was defined with a different suffix rejects with an appropriate failure message if the attribute was defined with the same prefix and suffix matches has the right description if the attribute is given in plural form accidentally rejects with an appropriate failure message with the backing column specified to be of some type if the column storing the attribute is of a different type rejects with an appropriate failure message if the column storing the attribute is of the same type matches has the right description with values specified using #with produces a warning if the attribute is defined as an enum but is an alias matches with only the attribute name specified if the attribute is not defined as an enum rejects with an appropriate failure message if the attribute is defined as an enum matches has the right description if the column storing the attribute is not an integer type rejects with an appropriate failure message qualified with #with_prefix when the prefix is implicit if the attribute was defined with a prefix has the right description matches if the attribute was not defined with a prefix rejects with an appropriate failure message when the prefix is explicit if the attribute was defined with the same prefix has the right description matches if the attribute was not defined with a prefix rejects with an appropriate failure message if the attribute was defined with a different prefix rejects with an appropriate failure message Shoulda::Matchers::ActiveRecord::HaveDbIndexMatcher #description when given a group of columns when not qualified with anything returns the correct description when qualified with unique: true returns the correct description when qualified with unique returns the correct description when qualified with unique: false returns the correct description when given one column when qualified with unique returns the correct description when qualified with unique: true returns the correct description when qualified with unique: false returns the correct description when not qualified with anything returns the correct description the matcher when not all models are connected to the same database when the table has the given index matches assuming all models are connected to the same database when given one column when qualified with unique when the table has the given index when the index is a unique index does not match when used in the negative matches when used in the positive when the index is not a unique index does not match when used in the positive matches when used in the negative when the table does not have the given index matches in the negative does not match in the positive when qualified with unique: false when the table has the given index when the index is a non-unique index does not match when used in the negative matches when used in the positive when the index is not a non-unique index matches when used in the negative does not match when used in the positive when the table does not have the given index does not match in the positive matches in the negative when qualified with unique: true when the table has the given index when the index is a unique index matches when used in the positive does not match when used in the negative when the index is not a unique index does not match when used in the positive matches when used in the negative when the table does not have the given index does not match in the positive matches in the negative when qualified with nothing when the table does not have the given index does not match in the positive matches in the negative when the table has the given index does not match in the negative matches in the positive when given a group of columns when the table has the given index matches when used in the positive does not match when used in the negative when the table does not have the given index does not match when used in the positive matches when used in the negative Shoulda::Matchers::ActiveRecord::ValidateUniquenessOfMatcher when the model has a case-insensitive validation when case_insensitive is specified accepts it supports ignoring_interference_by_writer when the writer method for the attribute changes incoming values and the value change causes a test failure lists how the value got changed in the failure message when case_insensitive is not specified rejects with an appropriate failure message when the column is a boolean column accepts (and does not print a warning) when the model does not have the attribute being tested fails with an appropriate failure message when the model has a case-sensitive validation when the matcher is not qualified with case_insensitive accepts given an existing record where the value of the attribute under test is not case-swappable raises a NonCaseSwappableValueError when the matcher is qualified with case_insensitive rejects with an appropriate failure message when the model has a uniqueness validation fails when used in the negative and the validation has a custom message given a regex when the given and actual messages do not match rejects with an appropriate failure message when the given and actual messages match accepts when no message is specified rejects with an appropriate failure message given a string when the given and actual messages match accepts when the given and actual messages do not match rejects with an appropriate failure message when the validation has no scope and a scope is specified rejects with an appropriate failure message when the existing record was created beforehand when the subject is itself the existing record accepts when the subject is a new record accepts it supports ignoring_interference_by_writer when the writer method for the attribute changes incoming values and the value change causes a test failure lists how the value got changed in the failure message when the attribute is of integer type accepts when the attribute has a character limit accepts when the existing record was not created beforehand and the subject is not empty creates the record automatically from the subject and the table has required attributes other than the attribute being validated, set beforehand can save the subject and the model has required attributes other than the attribute being validated, set beforehand can save the subject and the subject is empty and the model has required attributes other than the attribute being validated can save the subject without the attributes being set and the attribute being tested is required can save the subject without the attribute being set and the attribute being tested has other validations on it can save the subject without it being completely valid and the attribute being tested are required along with other attributes can save the subject without the attributes being set and the table has non-nullable columns other than the attribute being validated which are not set beforehand raises a useful exception which are set beforehand can save the subject when the validation is declared with allow_nil given a new record whose attribute is nil accepts given an existing record whose attribute is nil accepts when the validation is not declared with allow_blank given a new record whose attribute is empty rejects with an appropriate failure message given an existing record whose attribute is nil rejects with an appropriate failure message given an existing record whose attribute is empty rejects with an appropriate failure message given a new record whose attribute is nil rejects with an appropriate failure message when testing that a polymorphic *_type column is one of the validation scopes sets that column to a meaningful value that works with other validations on the same column if the model the *_type column refers to is namespaced, and shares the last part of its name with an existing model still works when the model does not have a uniqueness validation rejects with an appropriate failure message when the validation is not declared with allow_nil given an existing record whose attribute is nil rejects with an appropriate failure message given a new record whose attribute is nil rejects with an appropriate failure message when the validation is declared with allow_blank given an existing record whose attribute is empty accepts when the model is declared with has_secure_password given a record whose attribute is empty accepts given a record whose attribute is nil accepts given a new record whose attribute is empty accepts given a new record whose attribute is nil accepts given an existing record whose attribute is nil accepts when the writer method for the attribute changes the case of incoming values when the validation is case-sensitive and the matcher is ensuring that the validation is case-sensitive rejects with an appropriate failure message and the matcher is ignoring case sensitivity accepts (and not raise an error) when the scoped_to argument is passed as a string transforms the scoped_to argument to a symbol when the scope argument is defined as a string on the model transforms the scope argument to a symbol when the validation is case-insensitive and the matcher is ensuring that the validation is case-insensitive accepts (and does not raise an error) when the model has a scoped uniqueness validation when one of the scoped attributes is a boolean column when too narrow of a scope is specified rejects with an appropriate failure message when the correct scope is specified when the subject is a new record still accepts if the scope is unset beforehand accepts when the subject is an existing record accepts still accepts if the scope is unset beforehand when there is more than one validation on the same attribute with different scopes when a record exists beforehand, where all scopes are set when each validation has a different message accepts when more than one record exists that has the next version of the attribute's value accepts when too broad of a scope is specified rejects with an appropriate failure message when a different scope is specified rejects with an appropriate failure message when a non-existent attribute is specified as a scope when there is more than one scope rejects with an appropriate failure message (and does not raise an error) when there is more than one scope rejects with an appropriate failure message (and does not raise an error) when no scope is specified rejects with an appropriate failure message if the scope attribute is unset in the record given to the matcher rejects with an appropriate failure message when one of the scoped attributes is a datetime column (using DateTime) when there is more than one validation on the same attribute with different scopes when a record exists beforehand, where all scopes are set when each validation has a different message accepts when too broad of a scope is specified rejects with an appropriate failure message when the correct scope is specified when the subject is a new record accepts still accepts if the scope is unset beforehand when the subject is an existing record accepts still accepts if the scope is unset beforehand when too narrow of a scope is specified rejects with an appropriate failure message when more than one record exists that has the next version of the attribute's value accepts when no scope is specified rejects with an appropriate failure message if the scope attribute is unset in the record given to the matcher rejects with an appropriate failure message when a different scope is specified rejects with an appropriate failure message when a non-existent attribute is specified as a scope when there is more than one scope rejects with an appropriate failure message (and does not raise an error) when there is more than one scope rejects with an appropriate failure message (and does not raise an error) when one of the scoped attributes is a datetime column (using Time) when too narrow of a scope is specified rejects with an appropriate failure message when a non-existent attribute is specified as a scope when there is more than one scope rejects with an appropriate failure message (and does not raise an error) when there is more than one scope rejects with an appropriate failure message (and does not raise an error) when there is more than one validation on the same attribute with different scopes when a record exists beforehand, where all scopes are set when each validation has a different message accepts when too broad of a scope is specified rejects with an appropriate failure message when no scope is specified rejects with an appropriate failure message if the scope attribute is unset in the record given to the matcher rejects with an appropriate failure message when a different scope is specified rejects with an appropriate failure message when the correct scope is specified when the subject is a new record still accepts if the scope is unset beforehand accepts when the subject is an existing record accepts still accepts if the scope is unset beforehand when more than one record exists that has the next version of the attribute's value accepts when one of the scoped attributes is a date column when too narrow of a scope is specified rejects with an appropriate failure message when there is more than one validation on the same attribute with different scopes when a record exists beforehand, where all scopes are set when each validation has a different message accepts when a non-existent attribute is specified as a scope when there is more than one scope rejects with an appropriate failure message (and does not raise an error) when there is more than one scope rejects with an appropriate failure message (and does not raise an error) when too broad of a scope is specified rejects with an appropriate failure message when a different scope is specified rejects with an appropriate failure message when the correct scope is specified when the subject is a new record accepts still accepts if the scope is unset beforehand when the subject is an existing record still accepts if the scope is unset beforehand accepts when no scope is specified rejects with an appropriate failure message if the scope attribute is unset in the record given to the matcher rejects with an appropriate failure message when more than one record exists that has the next version of the attribute's value accepts when one of the scoped attributes is a time column (using Time) when too broad of a scope is specified rejects with an appropriate failure message when a non-existent attribute is specified as a scope when there is more than one scope rejects with an appropriate failure message (and does not raise an error) when there is more than one scope rejects with an appropriate failure message (and does not raise an error) when the correct scope is specified when the subject is a new record still accepts if the scope is unset beforehand accepts when the subject is an existing record still accepts if the scope is unset beforehand accepts when too narrow of a scope is specified rejects with an appropriate failure message when no scope is specified rejects with an appropriate failure message if the scope attribute is unset in the record given to the matcher rejects with an appropriate failure message when there is more than one validation on the same attribute with different scopes when a record exists beforehand, where all scopes are set when each validation has a different message accepts when a different scope is specified rejects with an appropriate failure message when more than one record exists that has the next version of the attribute's value accepts when one of the scoped attributes is a string column when there is more than one validation on the same attribute with different scopes when a record exists beforehand, where all scopes are set when each validation has a different message accepts when a different scope is specified rejects with an appropriate failure message when a non-existent attribute is specified as a scope when there is more than one scope rejects with an appropriate failure message (and does not raise an error) when there is more than one scope rejects with an appropriate failure message (and does not raise an error) when the correct scope is specified when the subject is a new record accepts still accepts if the scope is unset beforehand when the subject is an existing record accepts still accepts if the scope is unset beforehand when too broad of a scope is specified rejects with an appropriate failure message when too narrow of a scope is specified rejects with an appropriate failure message when no scope is specified rejects with an appropriate failure message if the scope attribute is unset in the record given to the matcher rejects with an appropriate failure message when more than one record exists that has the next version of the attribute's value accepts when one of the scoped attributes is a text column when the correct scope is specified when the subject is a new record accepts still accepts if the scope is unset beforehand when the subject is an existing record still accepts if the scope is unset beforehand accepts when a different scope is specified rejects with an appropriate failure message when there is more than one validation on the same attribute with different scopes when a record exists beforehand, where all scopes are set when each validation has a different message accepts when a non-existent attribute is specified as a scope when there is more than one scope rejects with an appropriate failure message (and does not raise an error) when there is more than one scope rejects with an appropriate failure message (and does not raise an error) when more than one record exists that has the next version of the attribute's value accepts when too broad of a scope is specified rejects with an appropriate failure message when no scope is specified rejects with an appropriate failure message if the scope attribute is unset in the record given to the matcher rejects with an appropriate failure message when too narrow of a scope is specified rejects with an appropriate failure message when there is more than one scoped attribute and all are boolean columns accepts when one of the scoped attributes is true and the other is false accepts when all of the scoped attributes are true accepts when all the scoped attributes are false when one of the scoped attributes is an integer column when one of the scoped attributes is an enum accepts when too narrow of a scope is specified rejects with an appropriate failure message when too broad of a scope is specified rejects with an appropriate failure message when there is more than one validation on the same attribute with different scopes when a record exists beforehand, where all scopes are set when each validation has a different message accepts when the correct scope is specified when the subject is a new record still accepts if the scope is unset beforehand accepts when the subject is an existing record accepts still accepts if the scope is unset beforehand when more than one record exists that has the next version of the attribute's value accepts when too narrow of a scope is specified rejects with an appropriate failure message when too broad of a scope is specified rejects with an appropriate failure message when no scope is specified rejects with an appropriate failure message if the scope attribute is unset in the record given to the matcher rejects with an appropriate failure message when a non-existent attribute is specified as a scope when there is more than one scope rejects with an appropriate failure message (and does not raise an error) when there is more than one scope rejects with an appropriate failure message (and does not raise an error) when a different scope is specified rejects with an appropriate failure message Shoulda::Matchers::ActionController::RedirectToMatcher provides the correct description when provided a block a controller that does not redirect rejects redirecting to a url a controller that redirects accepts redirecting to that url in a block rejects redirecting to a different url in a block rejects redirecting to a different url accepts redirecting to that url Finished in 5 minutes 18 seconds (files took 8.73 seconds to load) 2485 examples, 0 failures Randomized with seed 56908 + sed -i '/add_gem '\''spring-commands-rspec'\''/ s/^/#/' spec/support/acceptance/helpers/step_helpers.rb + sed -i '/updating_bundle do |bundle|/a \ bundle.add_gem '\''spring'\''' spec/support/acceptance/helpers/step_helpers.rb + sed -i '/updating_bundle do |bundle|/a \ bundle.remove_gem '\''capybara'\''' spec/support/acceptance/helpers/step_helpers.rb + sed -i '/updating_bundle do |bundle|/a \ bundle.remove_gem '\''selenium-webdriver'\''' spec/support/acceptance/helpers/step_helpers.rb + sed -i '/updating_bundle do |bundle|/a \ bundle.remove_gem '\''debug'\''' spec/support/acceptance/helpers/step_helpers.rb + sed -i '/updating_bundle do |bundle|/a \ bundle.updating { fs.comment_lines_matching('\''Gemfile'\'', /^ *ruby ("|'\'')#{RUBY_VERSION}\\1/) }' spec/support/acceptance/helpers/step_helpers.rb + bundle exec rspec spec/acceptance Randomized with seed 18568 shoulda-matchers has independent matchers, specifically delegate_method [DEPRECATED] `Bundler.with_clean_env` has been deprecated in favor of `Bundler.with_unbundled_env`. If you instead want the environment before bundler was originally loaded, use `Bundler.with_original_env` (called at /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/spec/support/acceptance/helpers/command_helpers.rb:26) and integrates with a Ruby application that uses the default test framework and integrates with a Ruby application that uses RSpec shoulda-matchers integrates with an ActiveModel project when using active model library and loads without errors allows use of inclusion matcher from active model library shoulda-matchers integrates with Rails in a project that combines both RSpec and Test::Unit (FAILED - 1) in a project that uses RSpec (FAILED - 2) in a project that uses the default test framework in a project that uses Spring (FAILED - 3) shoulda-matchers integrates with active record when using both active_record and active_model libraries allows the use of matchers from both libraries shoulda-matchers integrates with multiple libraries when using both active_record and active_model libraries allows the use of matchers from both libraries (FAILED - 4) Failures: 1) shoulda-matchers integrates with Rails in a project that combines both RSpec and Test::Unit Failure/Error: expect(result).to have_output('2 examples, 0 failures') Expected command to have output, but did not. Command: SPEC_OPTS="-fd" BUNDLE_GEMFILE="/tmp/shoulda-matchers-acceptance/test-project/Gemfile" bundle _2.5.22_ exec rake spec --trace Expected output: "2 examples, 0 failures" Actual output: ** Invoke spec (first_time) ** Invoke spec:prepare (first_time) ** Execute spec:prepare ** Invoke test:prepare (first_time) ** Execute test:prepare ** Execute spec /usr/bin/ruby -I/usr/share/gems/gems/rspec-core-3.13.2/lib:/usr/share/gems/gems/rspec-support-3.13.2/lib /usr/share/gems/gems/rspec-core-3.13.2/exe/rspec --pattern spec/\*\*\{,/\*/\*\*\}/\*_spec.rb ExamplesController index example at ./spec/controllers/examples_controller_spec.rb:5 (FAILED - 1) User example at ./spec/models/user_spec.rb:3 (FAILED - 2) Failures: 1) ExamplesController index Failure/Error: before { get :index } NoMethodError: undefined method `get' for # # ./spec/controllers/examples_controller_spec.rb:3:in `block (2 levels) in ' 2) User Failure/Error: it { should validate_presence_of(:name) } NoMethodError: undefined method `validate_presence_of' for # # ./spec/models/user_spec.rb:3:in `block (2 levels) in ' Finished in 0.01601 seconds (files took 1.7 seconds to load) 2 examples, 2 failures Failed examples: rspec ./spec/controllers/examples_controller_spec.rb:5 # ExamplesController index rspec ./spec/models/user_spec.rb:3 # User /usr/bin/ruby -I/usr/share/gems/gems/rspec-core-3.13.2/lib:/usr/share/gems/gems/rspec-support-3.13.2/lib /usr/share/gems/gems/rspec-core-3.13.2/exe/rspec --pattern spec/\*\*\{,/\*/\*\*\}/\*_spec.rb failed # ./spec/acceptance/rails_integration_spec.rb:149:in `run_tests_for_rspec' # ./spec/acceptance/rails_integration_spec.rb:91:in `block (2 levels) in ' 2) shoulda-matchers integrates with Rails in a project that uses RSpec Failure/Error: expect(result).to have_output('2 examples, 0 failures') Expected command to have output, but did not. Command: SPEC_OPTS="-fd" BUNDLE_GEMFILE="/tmp/shoulda-matchers-acceptance/test-project/Gemfile" bundle _2.5.22_ exec rake spec --trace Expected output: "2 examples, 0 failures" Actual output: ** Invoke spec (first_time) ** Invoke spec:prepare (first_time) ** Execute spec:prepare ** Invoke test:prepare (first_time) ** Execute test:prepare ** Execute spec /usr/bin/ruby -I/usr/share/gems/gems/rspec-core-3.13.2/lib:/usr/share/gems/gems/rspec-support-3.13.2/lib /usr/share/gems/gems/rspec-core-3.13.2/exe/rspec --pattern spec/\*\*\{,/\*/\*\*\}/\*_spec.rb Beginning in Rails 4, Rails ships with a `rails` binstub at ./bin/rails that should be used instead of the Bundler-generated `rails` binstub. If you are seeing this message, your binstub at ./bin/rails was generated by Bundler instead of Rails. You might need to regenerate your `rails` binstub locally and add it to source control: rails app:update:bin # Bear in mind this generates other binstubs # too that you may or may not want (like yarn) If you already have Rails binstubs in source control, you might be inadvertently overwriting them during deployment by using bundle install with the --binstubs option. If your application was created prior to Rails 4, here's how to upgrade: bundle config --delete bin # Turn off Bundler's stub generator rails app:update:bin # Use the new Rails executables git add bin # Add bin/ to source control You may need to remove bin/ from your .gitignore as well. When you install a gem whose executable you want to use in your app, generate it and add it to source control: bundle binstubs some-gem-name git add bin/new-executable Usage: rails new APP_PATH [options] Options: [--skip-namespace], [--no-skip-namespace] # Skip namespace (affects only isolated engines) [--skip-collision-check], [--no-skip-collision-check] # Skip collision check -r, [--ruby=PATH] # Path to the Ruby binary of your choice # Default: /usr/bin/ruby -m, [--template=TEMPLATE] # Path to some application template (can be a filesystem path or URL) -d, [--database=DATABASE] # Preconfigure for selected database (options: mysql/postgresql/sqlite3/oracle/sqlserver/jdbcmysql/jdbcsqlite3/jdbcpostgresql/jdbc) # Default: sqlite3 -G, [--skip-git], [--no-skip-git] # Skip .gitignore file [--skip-keeps], [--no-skip-keeps] # Skip source control .keep files -M, [--skip-action-mailer], [--no-skip-action-mailer] # Skip Action Mailer files [--skip-action-mailbox], [--no-skip-action-mailbox] # Skip Action Mailbox gem [--skip-action-text], [--no-skip-action-text] # Skip Action Text gem -O, [--skip-active-record], [--no-skip-active-record] # Skip Active Record files [--skip-active-job], [--no-skip-active-job] # Skip Active Job [--skip-active-storage], [--no-skip-active-storage] # Skip Active Storage files -C, [--skip-action-cable], [--no-skip-action-cable] # Skip Action Cable files -A, [--skip-asset-pipeline], [--no-skip-asset-pipeline] # Indicates when to generate skip asset pipeline -a, [--asset-pipeline=ASSET_PIPELINE] # Choose your asset pipeline [options: sprockets (default), propshaft] # Default: sprockets -J, [--skip-javascript], [--no-skip-javascript] # Skip JavaScript files [--skip-hotwire], [--no-skip-hotwire] # Skip Hotwire integration [--skip-jbuilder], [--no-skip-jbuilder] # Skip jbuilder gem -T, [--skip-test], [--no-skip-test] # Skip test files [--skip-system-test], [--no-skip-system-test] # Skip system test files [--skip-bootsnap], [--no-skip-bootsnap] # Skip bootsnap gem [--dev], [--no-dev] # Set up the application with Gemfile pointing to your Rails checkout [--edge], [--no-edge] # Set up the application with Gemfile pointing to Rails repository --master, [--main], [--no-main] # Set up the application with Gemfile pointing to Rails repository main branch [--rc=RC] # Path to file containing extra configuration options for rails command [--no-rc], [--no-no-rc] # Skip loading of extra configuration options from .railsrc file [--api], [--no-api] # Preconfigure smaller stack for API only apps [--minimal], [--no-minimal] # Preconfigure a minimal rails app -j, [--javascript=JAVASCRIPT] # Choose JavaScript approach [options: importmap (default), webpack, esbuild, rollup] # Default: importmap -c, [--css=CSS] # Choose CSS processor [options: tailwind, bootstrap, bulma, postcss, sass] check https://github.com/rails/cssbundling-rails -B, [--skip-bundle], [--no-skip-bundle] # Don't run bundle install Runtime options: -f, [--force] # Overwrite files that already exist -p, [--pretend], [--no-pretend] # Run but do not make any changes -q, [--quiet], [--no-quiet] # Suppress status output -s, [--skip], [--no-skip] # Skip files that already exist Rails options: -h, [--help], [--no-help] # Show this help message and quit -v, [--version], [--no-version] # Show Rails version number and quit Description: The 'rails new' command creates a new Rails application with a default directory structure and configuration at the path you specify. You can specify extra command-line arguments to be used every time 'rails new' runs in the .railsrc configuration file in your home directory, or in $XDG_CONFIG_HOME/rails/railsrc if XDG_CONFIG_HOME is set. Note that the arguments specified in the .railsrc file don't affect the defaults values shown above in this help message. Example: rails new ~/Code/Ruby/weblog This generates a skeletal Rails installation in ~/Code/Ruby/weblog. ExamplesController index example at ./spec/controllers/examples_controller_spec.rb:5 (FAILED - 1) User example at ./spec/models/user_spec.rb:3 (FAILED - 2) Failures: 1) ExamplesController index Failure/Error: before { get :index } NoMethodError: undefined method `get' for # # ./spec/controllers/examples_controller_spec.rb:3:in `block (2 levels) in ' 2) User Failure/Error: it { should validate_presence_of(:name) } NoMethodError: undefined method `validate_presence_of' for # # ./spec/models/user_spec.rb:3:in `block (2 levels) in ' Finished in 0.01618 seconds (files took 3.48 seconds to load) 2 examples, 2 failures Failed examples: rspec ./spec/controllers/examples_controller_spec.rb:5 # ExamplesController index rspec ./spec/models/user_spec.rb:3 # User /usr/bin/ruby -I/usr/share/gems/gems/rspec-core-3.13.2/lib:/usr/share/gems/gems/rspec-support-3.13.2/lib /usr/share/gems/gems/rspec-core-3.13.2/exe/rspec --pattern spec/\*\*\{,/\*/\*\*\}/\*_spec.rb failed # ./spec/acceptance/rails_integration_spec.rb:149:in `run_tests_for_rspec' # ./spec/acceptance/rails_integration_spec.rb:57:in `block (2 levels) in ' 3) shoulda-matchers integrates with Rails in a project that uses Spring Failure/Error: expect(result).to have_output('2 examples, 0 failures') Expected command to have output, but did not. Command: SPEC_OPTS="-fd" BUNDLE_GEMFILE="/tmp/shoulda-matchers-acceptance/test-project/Gemfile" bundle _2.5.22_ exec rake spec --trace Expected output: "2 examples, 0 failures" Actual output: ** Invoke spec (first_time) ** Invoke spec:prepare (first_time) ** Execute spec:prepare ** Invoke test:prepare (first_time) ** Execute test:prepare ** Execute spec /usr/bin/ruby -I/usr/share/gems/gems/rspec-core-3.13.2/lib:/usr/share/gems/gems/rspec-support-3.13.2/lib /usr/share/gems/gems/rspec-core-3.13.2/exe/rspec --pattern spec/\*\*\{,/\*/\*\*\}/\*_spec.rb Beginning in Rails 4, Rails ships with a `rails` binstub at ./bin/rails that should be used instead of the Bundler-generated `rails` binstub. If you are seeing this message, your binstub at ./bin/rails was generated by Bundler instead of Rails. You might need to regenerate your `rails` binstub locally and add it to source control: rails app:update:bin # Bear in mind this generates other binstubs # too that you may or may not want (like yarn) If you already have Rails binstubs in source control, you might be inadvertently overwriting them during deployment by using bundle install with the --binstubs option. If your application was created prior to Rails 4, here's how to upgrade: bundle config --delete bin # Turn off Bundler's stub generator rails app:update:bin # Use the new Rails executables git add bin # Add bin/ to source control You may need to remove bin/ from your .gitignore as well. When you install a gem whose executable you want to use in your app, generate it and add it to source control: bundle binstubs some-gem-name git add bin/new-executable Usage: rails new APP_PATH [options] Options: [--skip-namespace], [--no-skip-namespace] # Skip namespace (affects only isolated engines) [--skip-collision-check], [--no-skip-collision-check] # Skip collision check -r, [--ruby=PATH] # Path to the Ruby binary of your choice # Default: /usr/bin/ruby -m, [--template=TEMPLATE] # Path to some application template (can be a filesystem path or URL) -d, [--database=DATABASE] # Preconfigure for selected database (options: mysql/postgresql/sqlite3/oracle/sqlserver/jdbcmysql/jdbcsqlite3/jdbcpostgresql/jdbc) # Default: sqlite3 -G, [--skip-git], [--no-skip-git] # Skip .gitignore file [--skip-keeps], [--no-skip-keeps] # Skip source control .keep files -M, [--skip-action-mailer], [--no-skip-action-mailer] # Skip Action Mailer files [--skip-action-mailbox], [--no-skip-action-mailbox] # Skip Action Mailbox gem [--skip-action-text], [--no-skip-action-text] # Skip Action Text gem -O, [--skip-active-record], [--no-skip-active-record] # Skip Active Record files [--skip-active-job], [--no-skip-active-job] # Skip Active Job [--skip-active-storage], [--no-skip-active-storage] # Skip Active Storage files -C, [--skip-action-cable], [--no-skip-action-cable] # Skip Action Cable files -A, [--skip-asset-pipeline], [--no-skip-asset-pipeline] # Indicates when to generate skip asset pipeline -a, [--asset-pipeline=ASSET_PIPELINE] # Choose your asset pipeline [options: sprockets (default), propshaft] # Default: sprockets -J, [--skip-javascript], [--no-skip-javascript] # Skip JavaScript files [--skip-hotwire], [--no-skip-hotwire] # Skip Hotwire integration [--skip-jbuilder], [--no-skip-jbuilder] # Skip jbuilder gem -T, [--skip-test], [--no-skip-test] # Skip test files [--skip-system-test], [--no-skip-system-test] # Skip system test files [--skip-bootsnap], [--no-skip-bootsnap] # Skip bootsnap gem [--dev], [--no-dev] # Set up the application with Gemfile pointing to your Rails checkout [--edge], [--no-edge] # Set up the application with Gemfile pointing to Rails repository --master, [--main], [--no-main] # Set up the application with Gemfile pointing to Rails repository main branch [--rc=RC] # Path to file containing extra configuration options for rails command [--no-rc], [--no-no-rc] # Skip loading of extra configuration options from .railsrc file [--api], [--no-api] # Preconfigure smaller stack for API only apps [--minimal], [--no-minimal] # Preconfigure a minimal rails app -j, [--javascript=JAVASCRIPT] # Choose JavaScript approach [options: importmap (default), webpack, esbuild, rollup] # Default: importmap -c, [--css=CSS] # Choose CSS processor [options: tailwind, bootstrap, bulma, postcss, sass] check https://github.com/rails/cssbundling-rails -B, [--skip-bundle], [--no-skip-bundle] # Don't run bundle install Runtime options: -f, [--force] # Overwrite files that already exist -p, [--pretend], [--no-pretend] # Run but do not make any changes -q, [--quiet], [--no-quiet] # Suppress status output -s, [--skip], [--no-skip] # Skip files that already exist Rails options: -h, [--help], [--no-help] # Show this help message and quit -v, [--version], [--no-version] # Show Rails version number and quit Description: The 'rails new' command creates a new Rails application with a default directory structure and configuration at the path you specify. You can specify extra command-line arguments to be used every time 'rails new' runs in the .railsrc configuration file in your home directory, or in $XDG_CONFIG_HOME/rails/railsrc if XDG_CONFIG_HOME is set. Note that the arguments specified in the .railsrc file don't affect the defaults values shown above in this help message. Example: rails new ~/Code/Ruby/weblog This generates a skeletal Rails installation in ~/Code/Ruby/weblog. ExamplesController index example at ./spec/controllers/examples_controller_spec.rb:5 (FAILED - 1) User example at ./spec/models/user_spec.rb:3 (FAILED - 2) Failures: 1) ExamplesController index Failure/Error: before { get :index } NoMethodError: undefined method `get' for # # ./spec/controllers/examples_controller_spec.rb:3:in `block (2 levels) in ' 2) User Failure/Error: it { should validate_presence_of(:name) } NoMethodError: undefined method `validate_presence_of' for # # ./spec/models/user_spec.rb:3:in `block (2 levels) in ' Finished in 0.0161 seconds (files took 3.35 seconds to load) 2 examples, 2 failures Failed examples: rspec ./spec/controllers/examples_controller_spec.rb:5 # ExamplesController index rspec ./spec/models/user_spec.rb:3 # User /usr/bin/ruby -I/usr/share/gems/gems/rspec-core-3.13.2/lib:/usr/share/gems/gems/rspec-support-3.13.2/lib /usr/share/gems/gems/rspec-core-3.13.2/exe/rspec --pattern spec/\*\*\{,/\*/\*\*\}/\*_spec.rb failed # ./spec/acceptance/rails_integration_spec.rb:149:in `run_tests_for_rspec' # ./spec/acceptance/rails_integration_spec.rb:77:in `block (2 levels) in ' 4) shoulda-matchers integrates with multiple libraries when using both active_record and active_model libraries allows the use of matchers from both libraries Failure/Error: expect(result).to have_output('2 examples, 0 failures') Expected command to have output, but did not. Command: SPEC_OPTS="-fd" BUNDLE_GEMFILE="/tmp/shoulda-matchers-acceptance/test-project/Gemfile" bundle _2.5.22_ exec rake spec --trace Expected output: "2 examples, 0 failures" Actual output: ** Invoke spec (first_time) ** Invoke spec:prepare (first_time) ** Execute spec:prepare ** Invoke test:prepare (first_time) ** Execute test:prepare ** Execute spec /usr/bin/ruby -I/usr/share/gems/gems/rspec-core-3.13.2/lib:/usr/share/gems/gems/rspec-support-3.13.2/lib /usr/share/gems/gems/rspec-core-3.13.2/exe/rspec --pattern spec/\*\*\{,/\*/\*\*\}/\*_spec.rb Beginning in Rails 4, Rails ships with a `rails` binstub at ./bin/rails that should be used instead of the Bundler-generated `rails` binstub. If you are seeing this message, your binstub at ./bin/rails was generated by Bundler instead of Rails. You might need to regenerate your `rails` binstub locally and add it to source control: rails app:update:bin # Bear in mind this generates other binstubs # too that you may or may not want (like yarn) If you already have Rails binstubs in source control, you might be inadvertently overwriting them during deployment by using bundle install with the --binstubs option. If your application was created prior to Rails 4, here's how to upgrade: bundle config --delete bin # Turn off Bundler's stub generator rails app:update:bin # Use the new Rails executables git add bin # Add bin/ to source control You may need to remove bin/ from your .gitignore as well. When you install a gem whose executable you want to use in your app, generate it and add it to source control: bundle binstubs some-gem-name git add bin/new-executable Usage: rails new APP_PATH [options] Options: [--skip-namespace], [--no-skip-namespace] # Skip namespace (affects only isolated engines) [--skip-collision-check], [--no-skip-collision-check] # Skip collision check -r, [--ruby=PATH] # Path to the Ruby binary of your choice # Default: /usr/bin/ruby -m, [--template=TEMPLATE] # Path to some application template (can be a filesystem path or URL) -d, [--database=DATABASE] # Preconfigure for selected database (options: mysql/postgresql/sqlite3/oracle/sqlserver/jdbcmysql/jdbcsqlite3/jdbcpostgresql/jdbc) # Default: sqlite3 -G, [--skip-git], [--no-skip-git] # Skip .gitignore file [--skip-keeps], [--no-skip-keeps] # Skip source control .keep files -M, [--skip-action-mailer], [--no-skip-action-mailer] # Skip Action Mailer files [--skip-action-mailbox], [--no-skip-action-mailbox] # Skip Action Mailbox gem [--skip-action-text], [--no-skip-action-text] # Skip Action Text gem -O, [--skip-active-record], [--no-skip-active-record] # Skip Active Record files [--skip-active-job], [--no-skip-active-job] # Skip Active Job [--skip-active-storage], [--no-skip-active-storage] # Skip Active Storage files -C, [--skip-action-cable], [--no-skip-action-cable] # Skip Action Cable files -A, [--skip-asset-pipeline], [--no-skip-asset-pipeline] # Indicates when to generate skip asset pipeline -a, [--asset-pipeline=ASSET_PIPELINE] # Choose your asset pipeline [options: sprockets (default), propshaft] # Default: sprockets -J, [--skip-javascript], [--no-skip-javascript] # Skip JavaScript files [--skip-hotwire], [--no-skip-hotwire] # Skip Hotwire integration [--skip-jbuilder], [--no-skip-jbuilder] # Skip jbuilder gem -T, [--skip-test], [--no-skip-test] # Skip test files [--skip-system-test], [--no-skip-system-test] # Skip system test files [--skip-bootsnap], [--no-skip-bootsnap] # Skip bootsnap gem [--dev], [--no-dev] # Set up the application with Gemfile pointing to your Rails checkout [--edge], [--no-edge] # Set up the application with Gemfile pointing to Rails repository --master, [--main], [--no-main] # Set up the application with Gemfile pointing to Rails repository main branch [--rc=RC] # Path to file containing extra configuration options for rails command [--no-rc], [--no-no-rc] # Skip loading of extra configuration options from .railsrc file [--api], [--no-api] # Preconfigure smaller stack for API only apps [--minimal], [--no-minimal] # Preconfigure a minimal rails app -j, [--javascript=JAVASCRIPT] # Choose JavaScript approach [options: importmap (default), webpack, esbuild, rollup] # Default: importmap -c, [--css=CSS] # Choose CSS processor [options: tailwind, bootstrap, bulma, postcss, sass] check https://github.com/rails/cssbundling-rails -B, [--skip-bundle], [--no-skip-bundle] # Don't run bundle install Runtime options: -f, [--force] # Overwrite files that already exist -p, [--pretend], [--no-pretend] # Run but do not make any changes -q, [--quiet], [--no-quiet] # Suppress status output -s, [--skip], [--no-skip] # Skip files that already exist Rails options: -h, [--help], [--no-help] # Show this help message and quit -v, [--version], [--no-version] # Show Rails version number and quit Description: The 'rails new' command creates a new Rails application with a default directory structure and configuration at the path you specify. You can specify extra command-line arguments to be used every time 'rails new' runs in the .railsrc configuration file in your home directory, or in $XDG_CONFIG_HOME/rails/railsrc if XDG_CONFIG_HOME is set. Note that the arguments specified in the .railsrc file don't affect the defaults values shown above in this help message. Example: rails new ~/Code/Ruby/weblog This generates a skeletal Rails installation in ~/Code/Ruby/weblog. User example at ./spec/models/user_spec.rb:4 (FAILED - 1) example at ./spec/models/user_spec.rb:5 (FAILED - 2) Failures: 1) User Failure/Error: it { should validate_presence_of(:name) } NoMethodError: undefined method `validate_presence_of' for # # ./spec/models/user_spec.rb:4:in `block (2 levels) in ' 2) User Failure/Error: it { should validate_uniqueness_of(:name) } NoMethodError: undefined method `validate_uniqueness_of' for # # ./spec/models/user_spec.rb:5:in `block (2 levels) in ' Finished in 0.01579 seconds (files took 3.39 seconds to load) 2 examples, 2 failures Failed examples: rspec ./spec/models/user_spec.rb:4 # User rspec ./spec/models/user_spec.rb:5 # User /usr/bin/ruby -I/usr/share/gems/gems/rspec-core-3.13.2/lib:/usr/share/gems/gems/rspec-support-3.13.2/lib /usr/share/gems/gems/rspec-core-3.13.2/exe/rspec --pattern spec/\*\*\{,/\*/\*\*\}/\*_spec.rb failed # ./spec/acceptance/multiple_libraries_integration_spec.rb:46:in `block (3 levels) in ' Finished in 1 minute 0.09 seconds (files took 0.15377 seconds to load) 10 examples, 4 failures Failed examples: rspec ./spec/acceptance/rails_integration_spec.rb:80 # shoulda-matchers integrates with Rails in a project that combines both RSpec and Test::Unit rspec ./spec/acceptance/rails_integration_spec.rb:48 # shoulda-matchers integrates with Rails in a project that uses RSpec rspec ./spec/acceptance/rails_integration_spec.rb:60 # shoulda-matchers integrates with Rails in a project that uses Spring rspec ./spec/acceptance/multiple_libraries_integration_spec.rb:44 # shoulda-matchers integrates with multiple libraries when using both active_record and active_model libraries allows the use of matchers from both libraries Randomized with seed 18568 RPM build errors: error: Bad exit status from /var/tmp/rpm-tmp.2mYeLI (%check) Bad exit status from /var/tmp/rpm-tmp.2mYeLI (%check) Finish: rpmbuild rubygem-shoulda-matchers-5.1.0-8.fc42.src.rpm Finish: build phase for rubygem-shoulda-matchers-5.1.0-8.fc42.src.rpm INFO: chroot_scan: 1 files copied to /var/lib/copr-rpmbuild/results/chroot_scan INFO: /var/lib/mock/fedora-rawhide-x86_64-1735002660.028497/root/var/log/dnf5.log INFO: chroot_scan: creating tarball /var/lib/copr-rpmbuild/results/chroot_scan.tar.gz /bin/tar: Removing leading `/' from member names ERROR: Exception(/var/lib/copr-rpmbuild/results/rubygem-shoulda-matchers-5.1.0-8.fc42.src.rpm) Config(fedora-rawhide-x86_64) 6 minutes 49 seconds INFO: Results and/or logs in: /var/lib/copr-rpmbuild/results INFO: Cleaning up build root ('cleanup_on_failure=True') Start: clean chroot INFO: unmounting tmpfs. Finish: clean chroot ERROR: Command failed: # /usr/bin/systemd-nspawn -q -M 00452553ea7a436d8e8ad8702badd203 -D /var/lib/mock/fedora-rawhide-x86_64-1735002660.028497/root -a -u mockbuild --capability=cap_ipc_lock --rlimit=RLIMIT_NOFILE=10240 --capability=cap_ipc_lock --bind=/tmp/mock-resolv.w_9m6eza:/etc/resolv.conf --bind=/dev/btrfs-control --bind=/dev/mapper/control --bind=/dev/fuse --bind=/dev/loop-control --bind=/dev/loop0 --bind=/dev/loop1 --bind=/dev/loop2 --bind=/dev/loop3 --bind=/dev/loop4 --bind=/dev/loop5 --bind=/dev/loop6 --bind=/dev/loop7 --bind=/dev/loop8 --bind=/dev/loop9 --bind=/dev/loop10 --bind=/dev/loop11 --console=pipe --setenv=TERM=vt100 --setenv=SHELL=/bin/bash --setenv=HOME=/builddir --setenv=HOSTNAME=mock --setenv=PATH=/usr/bin:/bin:/usr/sbin:/sbin '--setenv=PROMPT_COMMAND=printf "\033]0;\007"' '--setenv=PS1= \s-\v\$ ' --setenv=LANG=C.UTF-8 --resolv-conf=off bash --login -c '/usr/bin/rpmbuild -bb --target x86_64 --nodeps /builddir/build/originals/rubygem-shoulda-matchers.spec' Copr build error: Build failed