0s autopkgtest [07:24:58]: starting date and time: 2026-02-08 07:24:58+0000 0s autopkgtest [07:24:58]: git checkout: 4b346b80 nova: make wait_reboot return success even when a no-op 0s autopkgtest [07:24:58]: host juju-7f2275-prod-proposed-migration-environment-20; command line: /home/ubuntu/autopkgtest/runner/autopkgtest --output-dir /tmp/autopkgtest-work.5tmz7bcf/out --timeout-copy=6000 --needs-internet=try --setup-commands /home/ubuntu/autopkgtest-cloud/worker-config-production/setup-canonical.sh --apt-pocket=proposed=src:ruby-defaults --apt-upgrade ruby-concurrent --timeout-short=300 --timeout-copy=20000 --timeout-build=20000 --env=ADT_TEST_TRIGGERS=ruby-defaults/1:3.3build1 -- ssh -s /home/ubuntu/autopkgtest/ssh-setup/nova -- --flavor autopkgtest-cpu2-ram4-disk20-s390x --security-groups autopkgtest-juju-7f2275-prod-proposed-migration-environment-20@sto01-s390x-39.secgroup --name adt-resolute-s390x-ruby-concurrent-20260208-064726-juju-7f2275-prod-proposed-migration-environment-20-9cc6f939-5f46-4ad9-8803-75cf1c21048f --image adt/ubuntu-resolute-s390x-server --keyname testbed-juju-7f2275-prod-proposed-migration-environment-20 --net-id=net_prod-autopkgtest-workers-s390x -e TERM=linux --mirror=http://ftpmaster.internal/ubuntu/ 4s Creating nova instance adt-resolute-s390x-ruby-concurrent-20260208-064726-juju-7f2275-prod-proposed-migration-environment-20-9cc6f939-5f46-4ad9-8803-75cf1c21048f from image adt/ubuntu-resolute-s390x-server-20260208.img (UUID bf8d2066-816d-4293-b7d1-06f39d3d29cb)... 208s autopkgtest [07:28:26]: testbed dpkg architecture: s390x 209s autopkgtest [07:28:27]: testbed apt version: 3.1.15 210s autopkgtest [07:28:28]: @@@@@@@@@@@@@@@@@@@@ test bed setup 210s autopkgtest [07:28:28]: testbed release detected to be: None 213s autopkgtest [07:28:31]: updating testbed package index (apt update) 214s Get:1 http://ftpmaster.internal/ubuntu resolute-proposed InRelease [124 kB] 214s Hit:2 http://ftpmaster.internal/ubuntu resolute InRelease 215s Hit:3 http://ftpmaster.internal/ubuntu resolute-updates InRelease 215s Hit:4 http://ftpmaster.internal/ubuntu resolute-security InRelease 215s Get:5 http://ftpmaster.internal/ubuntu resolute-proposed/universe Sources [1554 kB] 216s Get:6 http://ftpmaster.internal/ubuntu resolute-proposed/multiverse Sources [28.2 kB] 216s Get:7 http://ftpmaster.internal/ubuntu resolute-proposed/main Sources [177 kB] 216s Get:8 http://ftpmaster.internal/ubuntu resolute-proposed/main s390x Packages [204 kB] 216s Get:9 http://ftpmaster.internal/ubuntu resolute-proposed/universe s390x Packages [1358 kB] 216s Get:10 http://ftpmaster.internal/ubuntu resolute-proposed/multiverse s390x Packages [7384 B] 219s Fetched 3453 kB in 4s (805 kB/s) 226s Reading package lists... 229s Hit:1 http://ftpmaster.internal/ubuntu resolute-proposed InRelease 230s Hit:2 http://ftpmaster.internal/ubuntu resolute InRelease 230s Hit:3 http://ftpmaster.internal/ubuntu resolute-updates InRelease 230s Hit:4 http://ftpmaster.internal/ubuntu resolute-security InRelease 238s Reading package lists... 238s Reading package lists... 240s Building dependency tree... 240s Reading state information... 241s Calculating upgrade... 243s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 243s autopkgtest [07:29:01]: upgrading testbed (apt dist-upgrade and autopurge) 244s Reading package lists... 246s Building dependency tree... 246s Reading state information... 246s Calculating upgrade... 248s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 249s Reading package lists... 251s Building dependency tree... 251s Reading state information... 251s Solving dependencies... 253s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 264s autopkgtest [07:29:22]: testbed running kernel: Linux 6.19.0-3-generic #3-Ubuntu SMP Fri Jan 23 19:02:49 UTC 2026 264s autopkgtest [07:29:22]: @@@@@@@@@@@@@@@@@@@@ apt-source ruby-concurrent 274s Get:1 http://ftpmaster.internal/ubuntu resolute/universe ruby-concurrent 1.3.4-1 (dsc) [1707 B] 274s Get:2 http://ftpmaster.internal/ubuntu resolute/universe ruby-concurrent 1.3.4-1 (tar) [1005 kB] 274s Get:3 http://ftpmaster.internal/ubuntu resolute/universe ruby-concurrent 1.3.4-1 (diff) [6016 B] 285s gpgv: Signature made Tue Feb 4 18:01:40 2025 UTC 285s gpgv: using EDDSA key 84CFFDC21520F88306EC29D152699AB63F9F2BC3 285s gpgv: Can't check signature: No public key 285s dpkg-source: warning: cannot verify inline signature for ./ruby-concurrent_1.3.4-1.dsc: no acceptable signature found 286s autopkgtest [07:29:44]: testing package ruby-concurrent version 1.3.4-1 287s autopkgtest [07:29:45]: build not needed 288s autopkgtest [07:29:46]: test ruby: preparing testbed 292s Reading package lists... 294s Building dependency tree... 294s Reading state information... 294s Solving dependencies... 296s The following NEW packages will be installed: 296s gem2deb-test-runner libruby libruby3.3 rake ruby ruby-concurrent 296s ruby-concurrent-ext ruby-csv ruby-did-you-mean ruby-diff-lcs ruby-minitest 296s ruby-net-telnet ruby-power-assert ruby-rspec ruby-rspec-core 296s ruby-rspec-expectations ruby-rspec-mocks ruby-rspec-support 296s ruby-ruby2-keywords ruby-rubygems ruby-test-unit ruby-timecop ruby-webrick 296s ruby-xmlrpc ruby3.3 rubygems-integration 296s 0 upgraded, 26 newly installed, 0 to remove and 0 not upgraded. 296s Need to get 7325 kB of archives. 296s After this operation, 36.5 MB of additional disk space will be used. 296s Get:1 http://ftpmaster.internal/ubuntu resolute/main s390x rubygems-integration all 1.19build1 [5666 B] 296s Get:2 http://ftpmaster.internal/ubuntu resolute/main s390x ruby-csv all 3.3.4-1 [43.0 kB] 296s Get:3 http://ftpmaster.internal/ubuntu resolute/main s390x ruby-did-you-mean all 1.6.3-2build1 [14.9 kB] 296s Get:4 http://ftpmaster.internal/ubuntu resolute/main s390x ruby-net-telnet all 0.2.0-1build1 [13.5 kB] 296s Get:5 http://ftpmaster.internal/ubuntu resolute/main s390x ruby-ruby2-keywords all 0.0.5-1build1 [4398 B] 296s Get:6 http://ftpmaster.internal/ubuntu resolute/main s390x ruby-webrick all 1.9.1-1build1 [60.9 kB] 296s Get:7 http://ftpmaster.internal/ubuntu resolute/main s390x ruby-xmlrpc all 0.3.3-2build1 [24.9 kB] 296s Get:8 http://ftpmaster.internal/ubuntu resolute/main s390x libruby3.3 s390x 3.3.8-2ubuntu2 [5871 kB] 297s Get:9 http://ftpmaster.internal/ubuntu resolute/main s390x ruby3.3 s390x 3.3.8-2ubuntu2 [58.8 kB] 297s Get:10 http://ftpmaster.internal/ubuntu resolute-proposed/main s390x libruby s390x 1:3.3build1 [5270 B] 297s Get:11 http://ftpmaster.internal/ubuntu resolute/main s390x ruby-rubygems all 3.6.7-2ubuntu2 [332 kB] 297s Get:12 http://ftpmaster.internal/ubuntu resolute-proposed/main s390x ruby s390x 1:3.3build1 [3680 B] 297s Get:13 http://ftpmaster.internal/ubuntu resolute/main s390x rake all 13.2.1-1build1 [45.9 kB] 297s Get:14 http://ftpmaster.internal/ubuntu resolute/universe s390x ruby-minitest all 5.26.1-1 [49.3 kB] 297s Get:15 http://ftpmaster.internal/ubuntu resolute/universe s390x ruby-power-assert all 2.0.5-1 [12.0 kB] 297s Get:16 http://ftpmaster.internal/ubuntu resolute/universe s390x ruby-test-unit all 3.6.2-1 [67.0 kB] 297s Get:17 http://ftpmaster.internal/ubuntu resolute/universe s390x gem2deb-test-runner s390x 2.2.5 [18.3 kB] 297s Get:18 http://ftpmaster.internal/ubuntu resolute/universe s390x ruby-concurrent all 1.3.4-1 [283 kB] 297s Get:19 http://ftpmaster.internal/ubuntu resolute/universe s390x ruby-concurrent-ext s390x 1.3.4-1 [8950 B] 297s Get:20 http://ftpmaster.internal/ubuntu resolute/universe s390x ruby-diff-lcs all 1.5.1-1 [22.8 kB] 297s Get:21 http://ftpmaster.internal/ubuntu resolute/universe s390x ruby-rspec-support all 3.13.0c0e0m0s1-2 [29.2 kB] 297s Get:22 http://ftpmaster.internal/ubuntu resolute/universe s390x ruby-rspec-core all 3.13.0c0e0m0s1-2 [164 kB] 297s Get:23 http://ftpmaster.internal/ubuntu resolute/universe s390x ruby-rspec-expectations all 3.13.0c0e0m0s1-2 [89.8 kB] 297s Get:24 http://ftpmaster.internal/ubuntu resolute/universe s390x ruby-rspec-mocks all 3.13.0c0e0m0s1-2 [81.0 kB] 297s Get:25 http://ftpmaster.internal/ubuntu resolute/universe s390x ruby-rspec all 3.13.0c0e0m0s1-2 [3500 B] 297s Get:26 http://ftpmaster.internal/ubuntu resolute/universe s390x ruby-timecop all 0.9.10-1.1 [11.5 kB] 302s Fetched 7325 kB in 1s (5663 kB/s) 303s Selecting previously unselected package rubygems-integration. 312s (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 88711 files and directories currently installed.) 312s Preparing to unpack .../00-rubygems-integration_1.19build1_all.deb ... 312s Unpacking rubygems-integration (1.19build1) ... 312s Selecting previously unselected package ruby-csv. 312s Preparing to unpack .../01-ruby-csv_3.3.4-1_all.deb ... 312s Unpacking ruby-csv (3.3.4-1) ... 312s Selecting previously unselected package ruby-did-you-mean. 312s Preparing to unpack .../02-ruby-did-you-mean_1.6.3-2build1_all.deb ... 312s Unpacking ruby-did-you-mean (1.6.3-2build1) ... 312s Selecting previously unselected package ruby-net-telnet. 312s Preparing to unpack .../03-ruby-net-telnet_0.2.0-1build1_all.deb ... 312s Unpacking ruby-net-telnet (0.2.0-1build1) ... 312s Selecting previously unselected package ruby-ruby2-keywords. 312s Preparing to unpack .../04-ruby-ruby2-keywords_0.0.5-1build1_all.deb ... 312s Unpacking ruby-ruby2-keywords (0.0.5-1build1) ... 313s Selecting previously unselected package ruby-webrick. 313s Preparing to unpack .../05-ruby-webrick_1.9.1-1build1_all.deb ... 313s Unpacking ruby-webrick (1.9.1-1build1) ... 313s Selecting previously unselected package ruby-xmlrpc. 313s Preparing to unpack .../06-ruby-xmlrpc_0.3.3-2build1_all.deb ... 313s Unpacking ruby-xmlrpc (0.3.3-2build1) ... 313s Selecting previously unselected package libruby3.3:s390x. 313s Preparing to unpack .../07-libruby3.3_3.3.8-2ubuntu2_s390x.deb ... 313s Unpacking libruby3.3:s390x (3.3.8-2ubuntu2) ... 317s Selecting previously unselected package ruby3.3. 317s Preparing to unpack .../08-ruby3.3_3.3.8-2ubuntu2_s390x.deb ... 317s Unpacking ruby3.3 (3.3.8-2ubuntu2) ... 317s Selecting previously unselected package libruby:s390x. 318s Preparing to unpack .../09-libruby_1%3a3.3build1_s390x.deb ... 318s Unpacking libruby:s390x (1:3.3build1) ... 318s Selecting previously unselected package ruby-rubygems. 318s Preparing to unpack .../10-ruby-rubygems_3.6.7-2ubuntu2_all.deb ... 318s Unpacking ruby-rubygems (3.6.7-2ubuntu2) ... 318s Selecting previously unselected package ruby. 318s Preparing to unpack .../11-ruby_1%3a3.3build1_s390x.deb ... 318s Unpacking ruby (1:3.3build1) ... 319s Selecting previously unselected package rake. 319s Preparing to unpack .../12-rake_13.2.1-1build1_all.deb ... 319s Unpacking rake (13.2.1-1build1) ... 319s Selecting previously unselected package ruby-minitest. 319s Preparing to unpack .../13-ruby-minitest_5.26.1-1_all.deb ... 319s Unpacking ruby-minitest (5.26.1-1) ... 319s Selecting previously unselected package ruby-power-assert. 319s Preparing to unpack .../14-ruby-power-assert_2.0.5-1_all.deb ... 319s Unpacking ruby-power-assert (2.0.5-1) ... 319s Selecting previously unselected package ruby-test-unit. 319s Preparing to unpack .../15-ruby-test-unit_3.6.2-1_all.deb ... 319s Unpacking ruby-test-unit (3.6.2-1) ... 319s Selecting previously unselected package gem2deb-test-runner. 319s Preparing to unpack .../16-gem2deb-test-runner_2.2.5_s390x.deb ... 319s Unpacking gem2deb-test-runner (2.2.5) ... 319s Selecting previously unselected package ruby-concurrent. 319s Preparing to unpack .../17-ruby-concurrent_1.3.4-1_all.deb ... 319s Unpacking ruby-concurrent (1.3.4-1) ... 320s Selecting previously unselected package ruby-concurrent-ext. 320s Preparing to unpack .../18-ruby-concurrent-ext_1.3.4-1_s390x.deb ... 320s Unpacking ruby-concurrent-ext (1.3.4-1) ... 320s Selecting previously unselected package ruby-diff-lcs. 320s Preparing to unpack .../19-ruby-diff-lcs_1.5.1-1_all.deb ... 320s Unpacking ruby-diff-lcs (1.5.1-1) ... 320s Selecting previously unselected package ruby-rspec-support. 320s Preparing to unpack .../20-ruby-rspec-support_3.13.0c0e0m0s1-2_all.deb ... 320s Unpacking ruby-rspec-support (3.13.0c0e0m0s1-2) ... 321s Selecting previously unselected package ruby-rspec-core. 321s Preparing to unpack .../21-ruby-rspec-core_3.13.0c0e0m0s1-2_all.deb ... 321s Unpacking ruby-rspec-core (3.13.0c0e0m0s1-2) ... 321s Selecting previously unselected package ruby-rspec-expectations. 321s Preparing to unpack .../22-ruby-rspec-expectations_3.13.0c0e0m0s1-2_all.deb ... 321s Unpacking ruby-rspec-expectations (3.13.0c0e0m0s1-2) ... 321s Selecting previously unselected package ruby-rspec-mocks. 321s Preparing to unpack .../23-ruby-rspec-mocks_3.13.0c0e0m0s1-2_all.deb ... 321s Unpacking ruby-rspec-mocks (3.13.0c0e0m0s1-2) ... 321s Selecting previously unselected package ruby-rspec. 321s Preparing to unpack .../24-ruby-rspec_3.13.0c0e0m0s1-2_all.deb ... 321s Unpacking ruby-rspec (3.13.0c0e0m0s1-2) ... 321s Selecting previously unselected package ruby-timecop. 321s Preparing to unpack .../25-ruby-timecop_0.9.10-1.1_all.deb ... 321s Unpacking ruby-timecop (0.9.10-1.1) ... 321s Setting up ruby-ruby2-keywords (0.0.5-1build1) ... 321s Setting up ruby-power-assert (2.0.5-1) ... 321s Setting up rubygems-integration (1.19build1) ... 321s Setting up ruby-concurrent (1.3.4-1) ... 321s Setting up ruby-timecop (0.9.10-1.1) ... 321s Setting up ruby-minitest (5.26.1-1) ... 321s Setting up ruby-test-unit (3.6.2-1) ... 321s Setting up ruby-net-telnet (0.2.0-1build1) ... 321s Setting up ruby-csv (3.3.4-1) ... 321s Setting up ruby-rspec-support (3.13.0c0e0m0s1-2) ... 321s Setting up ruby-webrick (1.9.1-1build1) ... 321s Setting up ruby-did-you-mean (1.6.3-2build1) ... 321s Setting up ruby-xmlrpc (0.3.3-2build1) ... 321s Setting up rake (13.2.1-1build1) ... 321s Setting up libruby3.3:s390x (3.3.8-2ubuntu2) ... 321s Setting up ruby3.3 (3.3.8-2ubuntu2) ... 321s Setting up libruby:s390x (1:3.3build1) ... 321s Setting up ruby (1:3.3build1) ... 321s Setting up ruby-rspec-core (3.13.0c0e0m0s1-2) ... 321s Setting up ruby-diff-lcs (1.5.1-1) ... 321s Setting up ruby-rubygems (3.6.7-2ubuntu2) ... 321s Setting up gem2deb-test-runner (2.2.5) ... 321s Setting up ruby-concurrent-ext (1.3.4-1) ... 321s Setting up ruby-rspec-expectations (3.13.0c0e0m0s1-2) ... 321s Setting up ruby-rspec-mocks (3.13.0c0e0m0s1-2) ... 321s Setting up ruby-rspec (3.13.0c0e0m0s1-2) ... 321s Processing triggers for libc-bin (2.42-2ubuntu4) ... 323s Processing triggers for man-db (2.13.1-1build1) ... 339s autopkgtest [07:30:37]: test ruby: ruby -e "gem 'concurrent-ruby'" \ && ruby -e "gem 'concurrent-ruby-ext'" \ && ruby -e "gem 'concurrent-ruby-edge'" \ && DH_RUBY_GEMSPEC=concurrent-ruby.gemspec gem2deb-test-runner --autopkgtest 2>&1 339s autopkgtest [07:30:37]: test ruby: [----------------------- 344s 344s ┌──────────────────────────────────────────────────────────────────────────────┐ 344s │ Run tests for ruby3.3 from debian/ruby-tests.rake │ 344s └──────────────────────────────────────────────────────────────────────────────┘ 344s 344s RUBYLIB=. GEM_PATH= ruby3.3 -S rake --rakelibdir /gem2deb-nonexistent -f debian/ruby-tests.rake 344s mv lib ./.gem2deb.lib 344s mv ext ./.gem2deb.ext 346s /usr/bin/ruby3.3 -I/usr/share/rubygems-integration/all/gems/rspec-support-3.13.1/lib:/usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/exe/rspec --pattern ./spec/concurrent/\*_spec.rb --color --backtrace --format documentation --seed 1 349s Run options: exclude {:stress=>true} 349s 349s Randomized with seed 1 349s 349s Concurrent::IVar 349s #initialize 349s can set an initial value 349s does not have to set an initial value 349s can set an initial value with a block 349s does not set an initial value if you pass NULL 349s raises an exception if given both a value and a block 349s observation 349s notifies all observers on #set 349s deadlock avoidance 349s should notify observers outside mutex lock 349s should notify a new observer added after fulfillment outside lock 349s it should behave like ivar 349s initialization 349s sets the state to incomplete 349s it should behave like dereferenceable 349s does not call #freeze when #freeze_on_deref is set and the value is nil 349s defaults :copy_on_deref to nil 349s defaults :dup_on_deref to false 349s supports dereference flags with observers 349s calls #freeze when the :freeze_on_deref option is true 349s defaults :freeze_on_deref to false 349s does not call #dup when #dup_on_deref is set and the value is nil 349s calls #dup when the :dup_on_deref option is true 349s calls the block when the :copy_on_deref option is passed a proc 349s does not call the #copy_on_deref block when the value is nil 349s calls the :copy block first followed by #dup followed by #freeze 349s it should behave like obligation 349s #value 349s returns nil when reaching the optional timeout value 349s is nil when :pending 350s blocks the caller when :pending and timeout is nil 350s returns the value when fulfilled before timeout 350s is set to the return value of the block when :fulfilled 350s is nil when :rejected 350s returns nil when timeout reached 350s returns immediately when timeout is zero 350s #state 350s is :pending when first created 350s is :fulfilled when the handler completes 350s is :rejected when the handler raises an exception 350s #reason 350s is nil when :fulfilled 350s is set to error object of the exception when :rejected 350s is nil when :pending 350s it should behave like observable 350s #delete_observer 350s deletes the given observer if called before first notification 350s returns the given observer even when not found in the observer set 350s returns the removed observer if found in the observer set 350s #add_observer 350s raises an exception if not given an observer or a block 350s adds an observer if called before first notification 350s raises an exception when given both an observer and a block 350s creates an observer from a block if called before first notification 350s adds an observer with :func if called before first notification 350s first notification 351s does not notify any observers after #delete_observers called 351s calls the appropriate function on all observers which specified a :func 352s does not notify any observers removed with #delete_observer 352s calls the proc for all observers added as a block 352s calls the #update method on all observers without a specified :func 352s #count_observers 352s returns zero for a new observable object 352s returns a count of registered observers if called before first notification 352s returns zero after #delete_observers has been called 352s #delete_observers 352s deletes all observers when called before first notification 352s returns self 352s #set 352s raises an exception when given neither a value nor a block 352s raises an exception if set more than once 352s rejects when given a block which raises an exception 352s returns self 352s sets the state to be fulfilled 352s fulfils when given a block which executes successfully 352s raises an exception when given a value and a block 352s sets the value 352s #fail 352s sets the reason to the given exception 352s raises an exception if set more than once 352s sets the value to be nil 352s returns self 352s defaults the reason to a StandardError 352s sets the state to be rejected 352s #try_set 352s when unset 352s assigns the value 352s assigns the block result 352s returns true 352s when rejected 352s does not assign the block result 352s returns false 352s has a nil value 352s does not assign the value 352s when fulfilled 352s does not assign the value 352s returns false 352s does not assign the block result 352s 352s Concurrent::LazyRegister 352s example at ./spec/concurrent/lazy_register_spec.rb:6 (PENDING: Not yet implemented) 352s 352s dataflow 352s #dataflow uses the global fast executor 352s #dataflow_with raises an exception when no executor given 352s raises an exception when no block given 352s accepts completed dependencies 352s doesn't raise exceptions from dependencies, unless called with ! 352s returns a Future 352s accepts zero or more dependencies 352s accepts uncompleted dependencies 353s #dataflow_with uses the given executor 353s raises an exception if any dependencies are not IVars 353s passes the values of dependencies into the block 353s if there is more than one 353s if there is just one 353s does not schedule the Future 353s if no dependencies are completed 353s if one dependency of two is completed 353s module function 353s can be called as Concurrent.dataflow and Concurrent.dataflow_with 353s counts already executed dependencies 353s if there is more than one 353s if there is just one 353s schedules the Future when all dependencies are available 353s if there is more than one 353s if there is just one 353s 353s Concurrent::MutableStruct 353s #[member]= 353s sets the value when given a valid string member 353s sets the value when given a valid symbol member 353s raises an exception when given a non-existent symbol member 353s raises an exception when given a non-existent string member 353s synchronization 353s protects #[member] 353s protects #values 353s protects #to_h 353s protects getter methods 353s protects #each_pair 353s protects getter methods 353s protects #inspect 353s protects #[member]= 353s protects #to_s 353s protects #values_at 353s protects #merge 354s protects #initialize_copy 354s protects #[index]= 354s protects #== 354s protects #each 354s protects #[index] 354s protects #select 354s definition 354s defines a setter for each member 354s copy 354s #clone 354s mutates only the copy 354s #dup 354s mutates only the copy 354s #[index]= 354s sets the value when given a valid index 354s raises an exception when given an out-of-bound index 354s it should behave like struct 354s properties 354s #members 354s returns a different object than the array passed at definition 354s returns the struct members as an array of symbols 354s #size 354s returns the number of struct members 354s #values 354s returns the values of the struct as an array in order 354s #values_at 354s returns values for ranges and offsets 354s returns the values at multiple given offsets 354s returns values at offsets in a given range 354s returns the value at the given offset 354s returns values for multiple ranges 354s #length 354s returns the number of struct members 354s comparison 354s #!= 354s returns false if other has same struct subclass and equal values 354s returns true if other has different values 354s returns true if other has different struct subclass 354s #== 354s returns true if other has same struct subclass and equal values 354s returns false if other has different struct subclass 354s returns false if other has different values 354s definition 354s registers the class when given a class name which is defined in the ancestors 354s raises an exception when given an invalid class name 354s raises an exception when given no members 354s raise an exception when given an invalid member 354s defines a getter for each member 354s registers the class when given a class name 354s evalues a given block against the new class 354s creates an anonymous class when given at least one member 354s conversion 354s #to_a 354s returns the to_a for this struct as an array 354s #to_s 354s returns the same string as #inspect 354s includes the name of the class when registered 354s includes the names of all members 354s includes all values 354s #to_h 354s returns a Hash containing the names and values in order 354s accessors 354s #[index] 354s retrieves the value when given a valid index 354s raises an exception when given an out-of-bound index 354s #[member] 354s retrieves the value when given a valid string member 354s raises an exception when given a non-existent string member 354s raises an exception when given a non-existent symbol member 354s retrieves the value when given a valid symbol member 354s enumeration 354s #select 354s yields each value 354s returns an enumerator when no block is given 354s returns an Array with the values from for which the block returns true 354s #each 354s returns an enumerator when no block is given 354s yields the value of each struct member in order 354s #each_pair 354s returns an enumerator when no block is given 354s yields the name and value of each struct member in order 354s construction 354s raises an exception when extra members are given 354s sets all absent members to nil 354s sets all given members in order 354s copy 354s #dup 354s discards singleton class 354s shallowly duplicates all members along with the struct 354s discards frozen state of the struct 354s retains frozen state of members 354s copies the singleton class of members 354s #clone 354s retains frozen state 354s copies the singleton class 354s copies the singleton class of members 354s shallowly clones all members along with the struct 354s it should behave like mergeable_struct 354s #merge 354s calls the given block for each key in `other` 354s raises an exception when given a hash with members not in the struct 354s returns a new object 354s retains the value for all members not without values in the given hash 354s updates all members with the new values from a given hash 354s 354s Concurrent 354s Cancellation 354s basic 354s is expected to be falsey 354s is expected to be truthy 354s #join 354s is expected to eq 2 354s is expected to be falsey 354s 354s #atomically 354s provides atomicity 354s raises an exception when no block given 354s reflects transactional writes from within the same transaction 354s undoes writes if the transaction is aborted 354s commits writes if the transaction succeeds 354s retries on abort 354s nests 354s raises the same exception that was raised in Concurrent::atomically 354s 354s Concurrent::Set 354s .[] 354s when initializing with arguments 354s creates a set with the given objects 354s when initializing with no arguments 354s is expected to be empty 354s .new 354s when initializing with no arguments 354s is expected to be empty 354s when initializing with an enumerable object 354s creates a set with the contents of the enumerable object 354s when initializing with a block argument 354s creates a set with the contents of the enumerable object 354s concurrency 358s #each 358s force context switch 366s #add and #delete 366s 366s Concurrent::Delay 366s #reconfigure 366s returns value of block used in reconfiguration 366s returns false when process completed? 366s #value 366s can be called twice 366s calls the block when #value is called 366s raises when called recursively 366s does not call the block before #value is called 366s only calls the block once no matter how often #value is called 366s behavior 366s it should behave like dereferenceable 366s calls the block when the :copy_on_deref option is passed a proc 366s defaults :copy_on_deref to nil 366s does not call #freeze when #freeze_on_deref is set and the value is nil 366s calls #dup when the :dup_on_deref option is true 366s does not call #dup when #dup_on_deref is set and the value is nil 366s defaults :dup_on_deref to false 366s supports dereference flags with observers 366s does not call the #copy_on_deref block when the value is nil 366s calls the :copy block first followed by #dup followed by #freeze 366s defaults :freeze_on_deref to false 366s calls #freeze when the :freeze_on_deref option is true 366s it should behave like obligation 366s #reason 366s is nil when :pending 366s is nil when :fulfilled 366s is set to error object of the exception when :rejected 366s #value 366s is nil when :rejected 366s is set to the return value of the block when :fulfilled 366s returns immediately when timeout is zero 366s blocks the caller when :pending and timeout is nil 366s returns nil when reaching the optional timeout value 366s returns nil when timeout reached 367s returns the value when fulfilled before timeout 367s is nil when :pending 367s #state 367s is :pending when first created 367s is :rejected when the handler raises an exception 367s is :fulfilled when the handler completes 367s #initialize 367s raises an exception when no block given 367s sets the state to :pending 367s 367s Concurrent::Promise 367s #rescue 367s returns a new promise 367s it should behave like thread_arguments 367s passes a one-element array when the :args key has a non-array value 367s passes an empty array when opts is not given 367s passes an empty array when the :args key has a nil value 367s passes an empty array when opts is an empty hash 367s allows the given arguments array to be dereferenced 367s passes the given array when the :args key has a complex array value 367s passes an array when when the :args key has an array value 367s passes an empty array when there is no :args key 367s aliases 367s aliases #realized? for #fulfilled? 367s aliases #catch for #rescue 367s aliases #deref for #value 367s aliases #on_error for #rescue 367s fulfillment 367s can manage long chain 367s sets the promise state to :fulfilled if the block completes 367s passes the result of each block to all its children 367s sets the promise value to the result if its block 367s uses result as fulfillment value when a promise has no block 367s passes the last result through when a promise has no block 367s #fail 367s can only be called on the root promise 367s rejects children 367s #set 367s triggers children 367s can be called with a block 367s #can only be called on the root promise 367s rejection 367s sets the promise value to the result if its block 367s passes the reason to all its children 367s rejects on Exception 367s sets the promise state to :rejected if the block completes 367s uses reason as rejection reason when a promise has no rescue callable 367s .zip 367s does not execute the returned Promise when execute is false 367s preserves ordering of the executed promises 367s executes the returned Promise by default 367s allows setting executor for Promise chain 367s fails if one component fails 367s executes the returned Promise when execute is true 367s yields the results as an array 367s aggregators 367s .any? 367s executes the #then condition when any components succeed 367s executes the #rescue handler if all componenst fail 367s does not execute the returned Promise 367s returns a new Promise 367s executes the #then condition when no promises are given 367s .all? 367s executes the #then condition when all components succeed 367s executes the #rescue handler if even one component fails 367s returns a new Promise 367s does not execute the returned Promise 367s executes the #then condition when no promises are given 367s initializers 367s .execute 367s passes the block to the new Promise 367s calls #execute on the new Promise 367s creates a new Promise 367s .fulfill 367s should return a Promise with set value 367s should return a fulfilled Promise 367s should return a Promise 367s .reject 367s should return a Promise with set reason 367s should return a Promise 367s should return a rejected Promise 367s .new 367s should return an unscheduled Promise 367s #then 367s should have block or rescuers 367s returns a new promise when a block and rescuer are passed 367s returns a new promise when a block is passed 367s returns a new promise when a rescuer is passed 367s can be called more than once 367s supports setting the executor using a named parameter 367s returns a new promise when a block, rescuer and executor are passed 367s fulfilled 367s returns a new Promise 367s notifies fulfillment to new child 367s rejected 367s returns a new Promise when :rejected 367s notifies rejection to new child 367s pending 367s returns a new promise 367s returns a pending promise 367s unscheduled 367s returns a new promise 367s returns an unscheduled promise 367s on_success 367s returns a new promise 367s should have a block 367s #execute 367s with children 367s when called on a child 368s should set all promises to :pending 368s when called on child after parent completes 368s sets state to :pending immediately 368s when called on the root 370s should set all promises to :pending 370s pending 370s does not post again 370s sets the promise to :pending 370s unscheduled 370s posts the block given in construction 370s sets the promise to :pending 371s #flat_map 371s returns a promise 371s fails if the left promise fails 371s fails if the right promise fails 371s fails if the generating block fails 371s succeeds if both promises succeed 371s #zip 371s allows setting executor for Promise chain 371s fails if one component fails 371s executes the returned Promise when execute is true 371s does not execute the returned Promise when execute is false 371s executes the returned Promise by default 372s preserves ordering of the executed promises 372s yields the results as an array 372s it should behave like ivar 372s #set 372s raises an exception if set more than once 372s returns self 372s raises an exception when given neither a value nor a block 372s raises an exception when given a value and a block 372s rejects when given a block which raises an exception 372s sets the state to be fulfilled 372s sets the value 372s fulfils when given a block which executes successfully 372s #try_set 372s when fulfilled 372s returns false 372s does not assign the value 372s does not assign the block result 372s when rejected 372s returns false 372s does not assign the block result 372s has a nil value 372s does not assign the value 372s when unset 372s returns true 372s assigns the value 372s assigns the block result 372s it should behave like observable 372s #add_observer 372s adds an observer with :func if called before first notification 372s raises an exception if not given an observer or a block 372s creates an observer from a block if called before first notification 372s adds an observer if called before first notification 372s raises an exception when given both an observer and a block 372s #count_observers 372s returns zero for a new observable object 372s returns a count of registered observers if called before first notification 372s returns zero after #delete_observers has been called 372s first notification 373s does not notify any observers removed with #delete_observer 374s does not notify any observers after #delete_observers called 374s calls the proc for all observers added as a block 374s calls the appropriate function on all observers which specified a :func 375s calls the #update method on all observers without a specified :func 375s #delete_observer 375s returns the given observer even when not found in the observer set 375s returns the removed observer if found in the observer set 375s deletes the given observer if called before first notification 375s #delete_observers 375s returns self 375s deletes all observers when called before first notification 375s initialization 375s sets the state to incomplete 375s #fail 375s sets the state to be rejected 375s sets the value to be nil 375s raises an exception if set more than once 375s defaults the reason to a StandardError 375s sets the reason to the given exception 375s returns self 375s it should behave like dereferenceable 375s calls the block when the :copy_on_deref option is passed a proc 375s defaults :copy_on_deref to nil 375s does not call #freeze when #freeze_on_deref is set and the value is nil 376s calls #dup when the :dup_on_deref option is true 376s supports dereference flags with observers 376s calls #freeze when the :freeze_on_deref option is true 377s calls the :copy block first followed by #dup followed by #freeze 377s defaults :dup_on_deref to false 377s defaults :freeze_on_deref to false 377s does not call #dup when #dup_on_deref is set and the value is nil 378s does not call the #copy_on_deref block when the value is nil 378s it should behave like obligation 378s #value 383s blocks the caller when :pending and timeout is nil 383s returns nil when reaching the optional timeout value 383s is set to the return value of the block when :fulfilled 383s is nil when :pending 383s returns nil when timeout reached 383s returns immediately when timeout is zero 383s is nil when :rejected 388s returns the value when fulfilled before timeout 388s #reason 388s is nil when :fulfilled 388s is nil when :pending 388s is set to error object of the exception when :rejected 388s #state 388s is :pending when first created 388s is :fulfilled when the handler completes 388s is :rejected when the handler raises an exception 388s 388s Concurrent::TVar 388s #value 388s gets the value 388s #initialize 388s accepts an initial value 388s #value= 388s sets the value 388s 388s Concurrent::Async 388s object creation 388s initializes synchronization 388s passes all args to the original constructor 388s delegates to the original constructor 388s passes a given block to the original constructor 388s #await 388s raises an error when calling a method that does not exist 388s raises an error when passing too few arguments 388s sets the reason when giving too many optional arguments 388s supports methods with blocks 388s sets the value on success 388s supports attribute accessors 388s returns a :fulfilled IVar 388s runs the future on the global executor 388s returns the existence of the method 388s raises an error when pasing too many arguments (arity >= 0) 388s sets the reason on failure 388s #validate_argc 388s raises an exception for too many args on a method with positive arity 388s raises an exception for too many args on a zero arity method 388s does not raise an exception for correct negative arity 388s raises an exception for too few args on a method with negative arity 388s raises an exception when the method is not defined 388s raises an exception for too few args on a method with positive arity 388s does not raise an exception for correct positive arity 388s does not raise an exception for correct zero arity 388s fork safety 388s does not hang when forked 388s locking 389s uses the same lock for both #async and #await 389s #async 389s sets the reason on failure 389s raises an error when calling a method that does not exist 389s supports methods with blocks 389s returns the existence of the method 389s raises an error when passing too few arguments 389s raises an error when pasing too many arguments (arity >= 0) 389s supports attribute accessors 389s runs the future on the global executor 389s returns a :pending IVar 389s sets the value on success 389s sets the reason when giving too many optional arguments 389s 389s Concurrent::MVar 389s #take 389s returns TIMEOUT on timeout on an empty MVar 389s waits for another thread to #put 389s returns the value on a full MVar 389s sets the MVar to empty 389s spurious wake ups 389s #put 390s returns TIMEOUT on timeout on a full MVar 391s waits for another thread to #take 391s #modify 391s waits for another thread to #put 392s returns TIMEOUT on timeout on an empty MVar 392s #take 392s waits for another thread to #put 393s returns TIMEOUT on timeout on an empty MVar 393s #empty? 393s returns false on a full MVar 393s returns true on an empty MVar 393s #set! 393s sets a full MVar to be full 393s returns EMPTY on an empty MVar 393s sets an empty MVar to be full 393s returns the original value on a full MVar 393s #modify! 393s raises an exception when no block given 393s modifies an empty MVar 393s returns the unmodified value 393s can be used to set an empty MVar to empty 393s can be used to set a full MVar to empty 393s modifies a full MVar 393s #initialize 393s accepts an initial value 393s accepts a nil initial value 393s accepts no initial value 393s accepts an empty initial value 393s #try_take! 393s returns EMPTY an empty MVar 393s returns the value on a full MVar 393s sets a full MVar to be empty 393s #borrow 393s returns TIMEOUT on timeout on an empty MVar 393s yields current value to the block and puts back value 393s returns the returned value of the block 393s puts back value even if an exception is raised 393s #put 393s returns the value 393s sets a new value on an empty MVar 393s waits for another thread to #take 393s sets the MVar to be empty 393s returns TIMEOUT on timeout on a full MVar 393s #full? 393s returns true on a full MVar 393s returns false on an empty MVar 393s #try_put! 393s returns false on a full MVar 393s returns true an empty MVar 393s sets an empty MVar to be full 393s #modify 393s waits for another thread to #put 395s returns TIMEOUT on timeout on an empty MVar 395s is atomic 395s raises an exception when no block given 395s modifies a full MVar 395s returns the unmodified value 395s behavior 395s it should behave like dereferenceable 395s calls the block when the :copy_on_deref option is passed a proc 395s defaults :copy_on_deref to nil 395s supports dereference flags with observers 395s does not call #freeze when #freeze_on_deref is set and the value is nil 395s defaults :dup_on_deref to false 395s does not call #dup when #dup_on_deref is set and the value is nil 395s calls the :copy block first followed by #dup followed by #freeze 395s defaults :freeze_on_deref to false 395s calls #freeze when the :freeze_on_deref option is true 395s does not call the #copy_on_deref block when the value is nil 395s calls #dup when the :dup_on_deref option is true 395s 395s configuration 395s global executors 395s creates a global fast executor 395s creates a global timer set 395s creates a global io executor 395s 395s Concurrent::TimerTask 395s execution 395s uses a custom executor when given (FAILED - 1) 395s waits for :execution_interval seconds when the :run_now option is not given 396s uses a fixed rate when set 397s uses a fixed delay when set 397s passes a "self" reference to the block as the sole argument 397s uses the global executor by default 397s waits for :execution_interval seconds when the :run_now option is false 397s runs the block immediately when the :run_now option is true 397s arguments 397s TimeTask timeouts are now ignored as these were not able to be implemented correctly 397s #timeout_interval being written produces a warning 397s TimeTask timeouts are now ignored as these were not able to be implemented correctly 397s #execution_interval is writeable 397s raises an exception if no block given 397s raises on invalid interval_type 397s observation 397s notifies all observers on error 397s notifies all observers on success 397s dereferenceable 397s it should behave like dereferenceable 397s defaults :freeze_on_deref to false 398s defaults :copy_on_deref to nil 399s calls #freeze when the :freeze_on_deref option is true 399s does not call the #copy_on_deref block when the value is nil 400s does not call #freeze when #freeze_on_deref is set and the value is nil 400s does not call #dup when #dup_on_deref is set and the value is nil 400s calls the block when the :copy_on_deref option is passed a proc 401s defaults :dup_on_deref to false 401s calls the :copy block first followed by #dup followed by #freeze 402s calls #dup when the :dup_on_deref option is true 402s supports dereference flags with observers 402s created with #new 402s #kill 402s returns true on success 402s #shutdown 402s returns true on success 402s #initialize 402s uses the default execution interval when no interval is given 402s uses the given execution interval 402s raises an exception if :execution_interval is not greater than zero 402s uses the default :interval_type when no type is given 402s raises an exception if :execution_interval is not an integer 402s raises an exception if :interval_type is not a valid value 402s uses the given interval type 402s raises an exception if no block given 402s observable 402s it should behave like observable 402s #delete_observer 402s deletes the given observer if called before first notification 402s returns the given observer even when not found in the observer set 402s returns the removed observer if found in the observer set 402s #count_observers 402s returns zero after #delete_observers has been called 402s returns a count of registered observers if called before first notification 402s returns zero for a new observable object 402s #delete_observers 402s returns self 403s deletes all observers when called before first notification 403s first notification 403s calls the #update method on all observers without a specified :func 403s calls the appropriate function on all observers which specified a :func 404s calls the proc for all observers added as a block 405s does not notify any observers removed with #delete_observer 407s does not notify any observers after #delete_observers called 407s #add_observer 407s creates an observer from a block if called before first notification 407s raises an exception if not given an observer or a block 407s raises an exception when given both an observer and a block 407s adds an observer with :func if called before first notification 407s adds an observer if called before first notification 407s 407s Concurrent::Hash 407s .[] 407s when initializing with another hash as an argument 407s creates a hash with the results of calling #to_hash on the other array 407s creates a new hash 407s creates a hash with the same contents as the other hash 407s when initializing with an array of pairs 407s creates a hash using each pair as a (key, value) pair 407s when initializing with no arguments 407s is expected to be empty 407s when initializing with an even number of arguments 407s creates a hash using the odd position arguments as keys and even position arguments as values 407s .new 407s when initialized with a block 407s calls the block for non-existing keys 407s returns the results of calling the block for non-existing key 407s when initializing with no arguments 407s is expected to be empty 407s when initialized with a default object 407s uses the default object for non-existing keys 407s concurrency 411s is expected to be empty 411s 411s Concurrent::SettableStruct 411s it should behave like mergeable_struct 411s #merge 411s raises an exception when given a hash with members not in the struct 411s calls the given block for each key in `other` 411s retains the value for all members not without values in the given hash 411s updates all members with the new values from a given hash 411s returns a new object 411s definition 411s /usr/share/rubygems-integration/all/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/settable_struct.rb:121: warning: method redefined; discarding old baz 411s /usr/share/rubygems-integration/all/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/synchronization/abstract_struct.rb:161: warning: previous definition of baz was here 411s /usr/share/rubygems-integration/all/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/settable_struct.rb:121: warning: method redefined; discarding old baz 411s /usr/share/rubygems-integration/all/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/synchronization/abstract_struct.rb:161: warning: previous definition of baz was here 411s defines a setter for each member 411s #[index]= 411s raises an exception when given an out-of-bound index 411s raises an exception when given an index that has already been set 411s sets the value when given a valid index 411s it should behave like struct 411s construction 411s /usr/share/rubygems-integration/all/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/settable_struct.rb:121: warning: method redefined; discarding old baz 411s /usr/share/rubygems-integration/all/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/synchronization/abstract_struct.rb:161: warning: previous definition of baz was here 411s /usr/share/rubygems-integration/all/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/settable_struct.rb:121: warning: method redefined; discarding old baz 411s /usr/share/rubygems-integration/all/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/synchronization/abstract_struct.rb:161: warning: previous definition of baz was here 411s sets all absent members to nil 411s /usr/share/rubygems-integration/all/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/settable_struct.rb:121: warning: method redefined; discarding old baz 411s /usr/share/rubygems-integration/all/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/synchronization/abstract_struct.rb:161: warning: previous definition of baz was here 411s /usr/share/rubygems-integration/all/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/settable_struct.rb:121: warning: method redefined; discarding old baz 411s /usr/share/rubygems-integration/all/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/synchronization/abstract_struct.rb:161: warning: previous definition of baz was here 411s raises an exception when extra members are given 411s /usr/share/rubygems-integration/all/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/settable_struct.rb:121: warning: method redefined; discarding old baz 411s /usr/share/rubygems-integration/all/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/synchronization/abstract_struct.rb:161: warning: previous definition of baz was here 411s /usr/share/rubygems-integration/all/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/settable_struct.rb:121: warning: method redefined; discarding old baz 411s /usr/share/rubygems-integration/all/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/synchronization/abstract_struct.rb:161: warning: previous definition of baz was here 411s sets all given members in order 411s accessors 411s #[member] 411s raises an exception when given a non-existent string member 411s retrieves the value when given a valid string member 411s raises an exception when given a non-existent symbol member 411s retrieves the value when given a valid symbol member 411s #[index] 411s retrieves the value when given a valid index 411s raises an exception when given an out-of-bound index 411s definition 411s evalues a given block against the new class 411s raises an exception when given an invalid class name 411s raises an exception when given no members 411s creates an anonymous class when given at least one member 411s raise an exception when given an invalid member 411s registers the class when given a class name 411s /usr/share/rubygems-integration/all/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/settable_struct.rb:121: warning: method redefined; discarding old baz 411s /usr/share/rubygems-integration/all/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/synchronization/abstract_struct.rb:161: warning: previous definition of baz was here 411s /usr/share/rubygems-integration/all/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/settable_struct.rb:121: warning: method redefined; discarding old baz 411s /usr/share/rubygems-integration/all/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/synchronization/abstract_struct.rb:161: warning: previous definition of baz was here 411s defines a getter for each member 411s /tmp/autopkgtest.HpvjbB/build.Cej/src/spec/concurrent/struct_shared.rb:15: warning: already initialized constant ValidClassName2 411s /tmp/autopkgtest.HpvjbB/build.Cej/src/spec/concurrent/struct_shared.rb:15: warning: previous definition of ValidClassName2 was here 411s registers the class when given a class name which is defined in the ancestors 411s conversion 411s #to_h 411s returns a Hash containing the names and values in order 411s #to_a 411s returns the to_a for this struct as an array 411s #to_s 411s includes all values 411s returns the same string as #inspect 411s includes the name of the class when registered 411s includes the names of all members 411s copy 411s #clone 411s shallowly clones all members along with the struct 411s copies the singleton class 411s copies the singleton class of members 411s retains frozen state 411s #dup 411s shallowly duplicates all members along with the struct 411s retains frozen state of members 411s discards singleton class 411s discards frozen state of the struct 411s copies the singleton class of members 411s properties 411s #values_at 411s returns values at offsets in a given range 411s returns values for multiple ranges 411s returns the values at multiple given offsets 411s returns the value at the given offset 411s returns values for ranges and offsets 411s #size 411s returns the number of struct members 411s #members 411s returns the struct members as an array of symbols 411s returns a different object than the array passed at definition 411s #values 411s returns the values of the struct as an array in order 411s #length 411s returns the number of struct members 411s enumeration 411s #each_pair 411s returns an enumerator when no block is given 411s yields the name and value of each struct member in order 411s #select 411s yields each value 411s returns an Array with the values from for which the block returns true 411s returns an enumerator when no block is given 411s #each 411s yields the value of each struct member in order 411s returns an enumerator when no block is given 411s comparison 411s #!= 411s returns true if other has different values 411s returns true if other has different struct subclass 411s returns false if other has same struct subclass and equal values 411s #== 411s returns true if other has same struct subclass and equal values 411s returns false if other has different values 411s returns false if other has different struct subclass 411s #[member]= 411s raises an exception when given a string member that has already been set 411s sets the value when given a valid string member 411s raises an exception when given a non-existent string member 411s raises an exception when given a symbol member that has already been set 411s raises an exception when given a non-existent symbol member 411s sets the value when given a valid symbol member 411s synchronization 411s protects getter methods 411s protects #select 411s protects #each_pair 411s protects #inspect 411s protects #[index] 411s protects getter methods 411s protects #to_h 411s protects #initialize_copy 411s protects #[member]= 411s protects #each 411s protects #[index]= 411s protects #values 411s protects #== 411s protects #[member] 411s protects #values_at 411s protects #to_s 411s protects #merge 411s copy 411s #clone 411s retains settability of members 411s #dup 411s retains settability of members 411s 411s Concurrent::ImmutableStruct 411s it should behave like struct 411s accessors 411s #[member] 411s retrieves the value when given a valid string member 411s retrieves the value when given a valid symbol member 411s raises an exception when given a non-existent string member 411s raises an exception when given a non-existent symbol member 411s #[index] 411s retrieves the value when given a valid index 411s raises an exception when given an out-of-bound index 411s definition 411s evalues a given block against the new class 411s raise an exception when given an invalid member 411s defines a getter for each member 411s creates an anonymous class when given at least one member 411s /tmp/autopkgtest.HpvjbB/build.Cej/src/spec/concurrent/struct_shared.rb:15: warning: already initialized constant ValidClassName2 411s /tmp/autopkgtest.HpvjbB/build.Cej/src/spec/concurrent/struct_shared.rb:15: warning: previous definition of ValidClassName2 was here 411s registers the class when given a class name which is defined in the ancestors 411s raises an exception when given an invalid class name 411s raises an exception when given no members 411s registers the class when given a class name 411s conversion 411s #to_s 411s returns the same string as #inspect 411s includes the names of all members 411s includes the name of the class when registered 411s includes all values 411s #to_a 411s returns the to_a for this struct as an array 411s #to_h 411s returns a Hash containing the names and values in order 411s properties 411s #values_at 411s returns values for multiple ranges 411s returns the values at multiple given offsets 411s returns values for ranges and offsets 411s returns values at offsets in a given range 411s returns the value at the given offset 411s #members 411s returns the struct members as an array of symbols 411s returns a different object than the array passed at definition 411s #size 411s returns the number of struct members 411s #length 411s returns the number of struct members 411s #values 411s returns the values of the struct as an array in order 411s comparison 411s #!= 411s returns false if other has same struct subclass and equal values 411s returns true if other has different struct subclass 411s returns true if other has different values 411s #== 411s returns true if other has same struct subclass and equal values 411s returns false if other has different struct subclass 411s returns false if other has different values 411s copy 411s #dup 411s shallowly duplicates all members along with the struct 411s discards frozen state of the struct 411s retains frozen state of members 411s discards singleton class 411s copies the singleton class of members 411s #clone 411s copies the singleton class 411s retains frozen state 411s copies the singleton class of members 411s shallowly clones all members along with the struct 411s construction 411s raises an exception when extra members are given 411s sets all given members in order 411s sets all absent members to nil 411s enumeration 411s #each_pair 411s yields the name and value of each struct member in order 411s returns an enumerator when no block is given 411s #each 411s returns an enumerator when no block is given 411s yields the value of each struct member in order 411s #select 411s returns an enumerator when no block is given 411s yields each value 411s returns an Array with the values from for which the block returns true 411s it should behave like mergeable_struct 411s #merge 411s raises an exception when given a hash with members not in the struct 411s returns a new object 411s updates all members with the new values from a given hash 411s retains the value for all members not without values in the given hash 411s calls the given block for each key in `other` 411s 411s Concurrent::Array 411s concurrency 412s is expected to be empty 412s .new 412s when initializing with a size argument 412s creates an array with size elements set to nil 412s when initializing with a block argument 412s creates an array with size elements set to the default value 412s when initializing with a default value argument 412s creates an array with size elements set to the default value 412s when initializing with no arguments 412s is expected to be empty 412s when initializing with another array as an argument 412s creates an array with the results of calling #to_ary on the other array 412s creates an array with the same contents as the other array 412s creates a new array 412s .[] 412s when initializing with no arguments 412s is expected to be empty 412s when initializing with arguments 412s creates an array with the given objects 412s #slice 412s correctly initializes the monitor 412s 412s Concurrent::Channel 412s #next? 412s returns a just Maybe, true when there are multiple items 412s returns a nothing Maybe and false on failure 412s returns a just Maybe and true when there is one item 412s #take! 412s raises an exception on failure 412s takes the next item when not empty 412s #take? 412s returns a nothing Maybe on failure 412s returns a just Maybe on success 412s #next 412s returns , true when closed and last item 412s returns nil, false when closed and no items remain 412s returns , true when there are multiple items 412s returns nil, false when empty and closed 412s returns , true when there is one item 412s #take 412s returns nil on failure 412s takes the next item when not empty 412s #offer 412s returns true on success 412s rejects nil 412s rejects when the validator raises an exception 412s returns false on failure 412s rejects when the validator returns false 412s put? 412s returns a nothing Maybe on failure 412s rejects when the validator raises an exception 412s accepts nil 412s rejects when the validator returns false 412s returns a just Maybe on success 412s #poll? 412s returns a nothing Maybe immediately if no item is available 413s returns a just Maybe immediately if available 413s returns a nothing Maybe on failure 413s offer? 413s returns a just Maybe on success 413s accepts nil 413s rejects when the validator raises an exception 413s rejects when the validator returns false 413s returns a nothing Maybe on failure 413s offer! 413s returns true on success 413s rejects when the validator raises an exception 413s raises an exception on failure 413s rejects nil 413s rejects when the validator returns false 413s #poll! 413s raises an exception on failure 413s returns the next item immediately if available 413s raises an exception immediately if no item is available 413s #poll 413s returns nil on failure 413s returns nil immediately if no item is available 413s returns the next item immediately if available 413s .each 413s iterates until the channel is closed 413s raises and exception when no block is given 413s put! 413s raises an exception on failure 413s returns true on success 413s rejects when the validator raises an exception 413s rejects nil 413s rejects when the validator returns false 413s factories 413s is expected to receive new(10) 1 time 413s is expected to receive new(10) 1 time 413s goroutines 413s .go_via 413s raises an exception when no block is given 413s is expected to receive post(1, 2, 3) 1 time 413s .go 413s raises an exception when no block is given 413s is expected to receive post(1, 2, 3) 1 time 413s .go_loop 413s loops until the block returns false 413s raises an exception when no block is given 413s .go_loop_via 413s raises an exception when no block is given 413s loops until the block returns false 413s select 413s is expected to be truthy 413s raises an exception when no block is given 413s passes a selector to the block 413s #put 413s rejects when the validator returns false 413s rejects nil 413s rejects when the validator raises an exception 413s returns false on failure 413s returns true on success 413s initialization 413s raises an exception when the :buffer is invalid 413s raises an exception when :dropping given without :capacity 413s is :buffered when :capacity > 0 and no :buffer given 413s is :unbuffered when neither :buffer nore :capacity is given 413s raises an exception when :buffered given without :capacity 413s is :sliding when :sliding and :capacity > 0 413s raises an exception when :buffered and :capacity < 0 413s is :buffered when :buffered given 413s is :dropping when :dropping and :capacity > 0 413s raises an exception when :sliding given without :capacity 413s is :unbuffered when :buffered and capacity: 0 413s raises an exception when :sliding and :capacity < 1 413s raises an exception when both :unbuffered and :capacity are given 413s is :unbuffered when :unbuffered is given 413s uses the given buffer 413s raises an exception when :dropping and :capacity < 1 413s 413s Concurrent::Exchanger 413s class hierarchy 413s inherits from RubyExchanger 413s 413s Concurrent::ProcessingActor 413s is expected to eq "ab" 413s 413s Concurrent::Promises 413s zip_futures_over 413s .event 413s is expected to equal true 413s .zip_events 413s waits for all and returns event 413s Future 413s can be risen when rejected 413s has sync and async callbacks 413s chains with correct arguments 413s runs 413s value! supports setting timeout 414s result supports setting timeout 414s wait! supports setting timeout 414s chains 414s wait supports setting timeout 414s value supports setting timeout 414s constructs promise like tree 414s resolves future when Exception raised 414s allows graphs 414s reason supports setting timeout 414s #flat 414s it propagates rejection of the future which was suppose to provide inner future 414s propagates requests for values to delayed futures 414s rejects if inner value is not a future 414s accepts inner event 414s returns value of inner future 414s propagates rejection of inner future 414s has shortcuts 414s ResolvableEvent 414s #resolve(raise_on_reassign = true) 414s #wait 414s #resolve(raise_on_reassign = false) 414s reservation 414s .any_fulfilled 414s continues on first result 414s treats a resolved Event as a fulfilled Future 414s treats a pending Event as a pending Future 414s .rejected_future 414s raises the correct error when passed an unraised error 414s chain_resolvable 414s future 414s event 414s .future without block 414s is expected to eq 0 414s .zip 414s waits for all results 414s when a future raises an error 414s raises a concurrent error 414s when deeply nested 414s raises the original error 414s value! 414s does not return spuriously without timeout 415s does not return spuriously with timeout 415s .future 415s executes 415s executes with args 415s .any_resolved 415s continues on first result 415s .delay 415s is expected to eq 2 415s ResolvableFuture 415s #wait! 415s result 415s #wait 415s atomic_resolution 415s #value! 415s #value 415s reservation 415s #reason 415s interoperability 415s with erlang actor 415s with channel 415s with processing actor 415s .schedule 416s scheduled execution in graph 416s scheduled execution 416s 416s Concurrent::Atom 416s #compare_and_set 416s returns true if the current value matches 416s returns false if the current value does not match 416s rejects the new value if the current value does not match 416s returns false if the validator returns false 416s sets the new value if the current value matches 416s returns false if the validator raises an exception 416s rejects the new value if the validator returns false 416s rejects the new value if the validator raises an exception 416s #reset 416s returns the new value on success 416s returns the new value on success 416s returns the old value if the validator returns false 416s returns the old value if the validator raises an exception 416s sets the new value 416s #swap 416s rejects the new value if the validator returns false 416s rejects the new value if the validator raises an exception 416s reraises the exception from block 416s returns the new value on success 416s calls the block more than once if the value changes underneath 416s sets the new value to the result of the block 416s returns the old value if the validator returns false 416s raises an exception when no block is given 416s passes all arguments to the block 416s returns the old value if the validator raises an exception 416s passes the current value to the block 416s observable 416s behaves like observable 416s first notification 417s does not notify any observers removed with #delete_observer 417s calls the appropriate function on all observers which specified a :func 418s does not notify any observers after #delete_observers called 418s calls the proc for all observers added as a block 418s calls the #update method on all observers without a specified :func 418s #add_observer 418s creates an observer from a block if called before first notification 418s adds an observer with :func if called before first notification 418s adds an observer if called before first notification 418s raises an exception if not given an observer or a block 418s raises an exception when given both an observer and a block 418s #delete_observer 418s returns the given observer even when not found in the observer set 418s returns the removed observer if found in the observer set 418s deletes the given observer if called before first notification 418s #count_observers 418s returns a count of registered observers if called before first notification 418s returns zero after #delete_observers has been called 418s returns zero for a new observable object 418s #delete_observers 418s deletes all observers when called before first notification 418s returns self 418s construction 418s sets the initial value to the given value 418s 418s Concurrent::Future 418s it should behave like thread_arguments 418s passes an empty array when there is no :args key 418s allows the given arguments array to be dereferenced 418s passes an array when when the :args key has an array value 418s passes the given array when the :args key has a complex array value 418s passes an empty array when opts is not given 418s passes a one-element array when the :args key has a non-array value 418s passes an empty array when opts is an empty hash 418s passes an empty array when the :args key has a nil value 418s class #execute 418s calls #execute on the new Future 418s creates a new Future 418s passes the block to the new Future 418s #initialize 418s raises an exception when no block given 418s sets the state to :unscheduled 418s uses the executor given with the :executor option 418s uses the global io executor by default 418s cancellation 418s #wait_or_cancel 418s returns true if the operation completes before timeout 419s cancels the task on timeout 419s #cancel 419s fails to cancel the task once processing has begun 419s fails to cancel the task once processing is complete 419s cancels a pending task 419s instance #execute 419s posts the block given on construction 419s returns self 419s does nothing unless the state is :unscheduled 419s sets the state to :pending 419s fulfillment 419s sets the state to :rejected when the handler raises an exception 419s sets the value to nil when the handler raises Exception 419s sets the value to nil when the handler raises an exception 419s sets the reason to the Exception instance when the handler raises Exception 419s sets the value to the result of the handler 419s passes all arguments to handler 419s sets the state to :processing while the task is executing 419s sets the state to :fulfilled when the block completes 419s aliases 419s aliases #deref for #value 420s aliases #realized? for #fulfilled? 420s it should behave like ivar 420s #try_set 420s when unset 420s assigns the value 420s returns true 420s assigns the block result 420s when fulfilled 420s does not assign the block result 420s does not assign the value 420s returns false 420s when rejected 420s does not assign the value 420s has a nil value 420s does not assign the block result 420s returns false 420s #fail 420s sets the state to be rejected 420s defaults the reason to a StandardError 420s sets the value to be nil 420s sets the reason to the given exception 420s raises an exception if set more than once 420s returns self 420s it should behave like obligation 420s #reason 420s is nil when :fulfilled 420s is set to error object of the exception when :rejected 420s is nil when :pending 420s #value 420s returns nil when timeout reached 420s is nil when :pending 420s is nil when :rejected 420s returns nil when reaching the optional timeout value 425s returns the value when fulfilled before timeout 430s blocks the caller when :pending and timeout is nil 430s is set to the return value of the block when :fulfilled 430s returns immediately when timeout is zero 430s #state 430s is :fulfilled when the handler completes 430s is :pending when first created 430s is :rejected when the handler raises an exception 430s it should behave like dereferenceable 430s calls #dup when the :dup_on_deref option is true 431s supports dereference flags with observers 431s defaults :copy_on_deref to nil 431s does not call the #copy_on_deref block when the value is nil 432s calls the :copy block first followed by #dup followed by #freeze 432s does not call #freeze when #freeze_on_deref is set and the value is nil 432s calls #freeze when the :freeze_on_deref option is true 432s calls the block when the :copy_on_deref option is passed a proc 433s defaults :freeze_on_deref to false 433s does not call #dup when #dup_on_deref is set and the value is nil 434s defaults :dup_on_deref to false 434s it should behave like observable 434s #delete_observers 434s returns self 434s deletes all observers when called before first notification 434s #add_observer 434s adds an observer with :func if called before first notification 434s raises an exception if not given an observer or a block 434s creates an observer from a block if called before first notification 434s raises an exception when given both an observer and a block 434s adds an observer if called before first notification 434s #count_observers 434s returns zero after #delete_observers has been called 434s returns zero for a new observable object 434s returns a count of registered observers if called before first notification 434s first notification 434s calls the appropriate function on all observers which specified a :func 435s does not notify any observers removed with #delete_observer 435s calls the proc for all observers added as a block 436s does not notify any observers after #delete_observers called 436s calls the #update method on all observers without a specified :func 436s #delete_observer 436s returns the removed observer if found in the observer set 436s deletes the given observer if called before first notification 436s returns the given observer even when not found in the observer set 436s #set 436s fulfils when given a block which executes successfully 436s raises an exception when given neither a value nor a block 436s sets the state to be fulfilled 436s raises an exception if set more than once 436s raises an exception when given a value and a block 436s sets the value 436s returns self 436s rejects when given a block which raises an exception 437s initialization 437s sets the state to incomplete 437s observation 437s notifies an observer added after fulfillment 437s does not notify existing observers when a new observer added after fulfillment 437s notifies all observers on fulfillment 437s does not notify existing observers when a new observer added after rejection 437s notifies an observer added after rejection 437s notifies all observers on rejection 437s deadlock avoidance 437s should notify observers outside mutex lock 437s should notify a new observer added after fulfillment outside lock 437s 437s #leave_transaction 437s neither commits nor aborts a transaction 437s raises an exception outside an #atomically block 437s 437s Concurrent::Actor 437s forbids Immediate executor 437s links atomically 437s links 437s dead letter routing 437s logs by deafault 437s messaging 437s is expected to eq 4 437s termination 437s terminates with all its children 437s spawning 437s terminates on failed initialization and raises with spawn! 437s terminates on failed initialization 437s terminates on failed message processing 437s Actor#spawn! 437s spawn 437s executor should be global 437s returns arg 437s #name 437s is expected to eq "ping" 437s #path 437s is expected to eq "/ping" 437s #reference 437s is expected to eq # 437s #parent 437s is expected to eq # 437s context_spawn_by_hash 437s executor should be global 437s returns arg 437s #reference 437s is expected to eq # 437s #path 437s is expected to eq "/ping" 437s #parent 437s is expected to eq # 437s #name 437s is expected to eq "ping" 437s context_spawn 437s executor should be global 437s returns arg 437s #reference 437s is expected to eq # 437s #parent 437s is expected to eq # 437s #path 437s is expected to eq "/ping" 437s #name 437s is expected to eq "ping" 437s spawn_by_hash 437s returns arg 437s executor should be global 437s #name 437s is expected to eq "ping" 437s #parent 437s is expected to eq # 437s #path 437s is expected to eq "/ping" 437s #reference 437s is expected to eq # 437s pausing 437s pauses on error and resets 437s pauses on error and resumes 437s pauses on error and restarts 437s envelope 437s is expected to eq # 437s pool 437s supports asks 437s message redirecting 437s is evaluated by child 437s children 437s has children set after a child is created 437s 437s monotonic_time 437s behavior 437s returns a Float when unit = :float_second 437s returns seconds as float 437s returns an Integer when unit = :millisecond 437s returns an Integer when unit = :nanosecond 437s returns an Integer when unit = :microsecond 437s raises ArgumentError on unknown units 437s returns a Float when unit = :float_microsecond 437s returns a Float when unit = :float_millisecond 437s returns an Integer when unit = :second 437s 437s #abort_transaction 437s raises an exception outside an #atomically block 437s 437s Concurrent 437s Throttle 439s capacity limited 439s acquiring 439s #to_s 439s #on 439s 439s Concurrent::Maybe 439s comparison 439s something is less than a bigger value 439s nothing is not greater than nothing 439s something is not equal to nothing 439s something is not equal to a different value 439s something is greater than a smaller value 439s nothing is equal to nothing 439s something is equal to the same value 439s nothing is not less than nothing 439s construction 439s hides Maybe.new 439s Maybe.nothing 439s creates a new Nothing Maybe 439s creates a new error object when given nothing 439s creates a new error object with the given string 439s uses the given Error object 439s Maybe.just 439s creates a new Just Maybe 439s Maybe.from 439s creates a Just Maybe on success 439s passes all arguments to the block 439s sets the reason to the error object on exception 439s creates a Nothing Maybe on exception 439s sets the value to the block result on success 439s raises an exception when no block is given 439s when just 439s #nothing returns NONE 439s #fulfilled? returns true 439s #nothing? returns false 439s #reason returns NONE 439s #rejected? returns false 439s #just? returns true 439s #value returns the value 439s #just returns the value 439s when nothing 439s #nothing returns the raised error 439s #rejected? returns true 439s #just returns NONE 439s #value returns NONE 439s #nothing? returns true 439s #reason returns the raised error 439s #just? returns false 439s #fulfilled? returns false 439s #or 439s returns the other when nothing 439s returns the value when something 439s 439s Concurrent::Options 439s .executor_from_options 439s raises an exception when :executor is an unrecognized symbol 439s returns the global io executor when :executor is :io 439s returns an immediate executor when :executor is :immediate 439s returns the global fast executor when :executor is :fast 439s returns the given :executor 439s 439s Concurrent::RubyExchanger 448s Good: 9998, Bad (timeout): 2, Ugly: 0 448s stress test 448s behaves like exchanger 448s #try_exchange 448s behaves like exchanger method with indefinite timeout 448s blocks indefinitely 448s receives the other value 449s can be reused 449s behaves like exchanger method with finite timeout 449s can be reused 449s receives the other value 449s blocks until timeout (FAILED - 2) 449s behaves like exchanger method cross-thread interactions 449s allows multiple firsts to cancel if necessary 449s when first, waits for a second 449s #exchange 449s behaves like exchanger method with finite timeout 450s blocks until timeout (FAILED - 3) 450s can be reused 450s receives the other value 450s behaves like exchanger method cross-thread interactions 450s allows multiple firsts to cancel if necessary 450s when first, waits for a second 450s behaves like exchanger method with indefinite timeout 450s receives the other value 450s can be reused 450s blocks indefinitely 450s #exchange! 450s behaves like exchanger method with indefinite timeout 450s blocks indefinitely 450s receives the other value 450s can be reused 450s behaves like exchanger method cross-thread interactions 451s allows multiple firsts to cancel if necessary 451s when first, waits for a second 451s behaves like exchanger method with finite timeout 451s blocks until timeout 451s receives the other value 451s can be reused 451s 451s Concurrent::ScheduledTask 451s #initialize 451s raises an exception when no block given 451s sets the initial state to :unscheduled 451s raises an exception when seconds is less than zero 451s accepts a number of seconds (from now) as the schedule time 451s behavior 451s it should behave like obligation 451s #reason 451s is set to error object of the exception when :rejected 451s is nil when :pending 451s is nil when :fulfilled 451s #value 451s is set to the return value of the block when :fulfilled 451s returns nil when timeout reached 451s returns nil when reaching the optional timeout value 453s blocks the caller when :pending and timeout is nil 453s returns immediately when timeout is zero 454s returns the value when fulfilled before timeout 454s is nil when :pending 454s is nil when :rejected 454s #state 454s is :fulfilled when the handler completes 454s is :pending when first created 454s is :rejected when the handler raises an exception 454s it should behave like dereferenceable 454s calls #dup when the :dup_on_deref option is true 454s calls #freeze when the :freeze_on_deref option is true 454s defaults :freeze_on_deref to false 454s defaults :dup_on_deref to false 454s calls the :copy block first followed by #dup followed by #freeze 454s calls the block when the :copy_on_deref option is passed a proc 454s supports dereference flags with observers 454s does not call the #copy_on_deref block when the value is nil 454s does not call #freeze when #freeze_on_deref is set and the value is nil 454s does not call #dup when #dup_on_deref is set and the value is nil 454s defaults :copy_on_deref to nil 454s it should behave like observable 454s first notification 455s does not notify any observers after #delete_observers called 455s calls the appropriate function on all observers which specified a :func 456s calls the proc for all observers added as a block 457s does not notify any observers removed with #delete_observer 457s calls the #update method on all observers without a specified :func 457s #count_observers 457s returns zero after #delete_observers has been called 457s returns a count of registered observers if called before first notification 457s returns zero for a new observable object 457s #add_observer 457s creates an observer from a block if called before first notification 457s raises an exception if not given an observer or a block 457s adds an observer with :func if called before first notification 457s adds an observer if called before first notification 457s raises an exception when given both an observer and a block 457s #delete_observers 457s deletes all observers when called before first notification 457s returns self 457s #delete_observer 457s returns the removed observer if found in the observer set 457s deletes the given observer if called before first notification 457s returns the given observer even when not found in the observer set 457s class #execute 458s passes the block to the new ScheduledTask 458s creates a new ScheduledTask 458s calls #execute on the new ScheduledTask 458s instance #execute 458s returns self 458s sets the sate to :pending 458s does nothing unless the state is :unscheduled 458s execution 458s passes :args from the options to the block 458s uses the :executor from the options 458s uses the :timer_set from the options 458s sets the state to :processing when the task is running 458s observation 458s notifies all observers on rejection 458s notifies all observers on fulfillment 458s returns true for an observer added while :pending 458s returns true for an observer added while :unscheduled 459s returns true for an observer added while :processing 459s #cancel 459s returns true on success 459s returns false if the task has already been performed 460s cancels the task if it has not yet scheduled 460s sets the reason to CancelledOperationError when cancelled 461s cancels the task if it has not yet started 461s returns false if the task is already in progress 461s 461s Concurrent::Synchronization 461s Concurrent::Synchronization::Object 461s does not ensure visibility when not needed 461s does ensure visibility when specified in a parent 461s does ensure visibility once when specified in child again 461s does ensure visibility when specified 461s it should behave like attr_volatile 470s older writes are always visible 470s Concurrent::Synchronization::Volatile module 470s it should behave like attr_volatile 477s older writes are always visible 477s Concurrent::Synchronization::LockableObject 477s final field always visible 477s #synchronize 477s allows only one thread to execute count 477s #wait 477s allows the sleeping thread to be killed 477s releases the lock on the current object 477s can be called from within a #synchronize block 477s puts the current thread to sleep 477s it should behave like attr_volatile 486s older writes are always visible 486s signaling 486s for now pending, tested pretty well by Event (PENDING: Not yet implemented) 486s attr_atomic 486s is expected to be == b 486s 486s Concurrent::Map 486s #key? 486s is unfreezable 486s default_proc is called with the Concurrent::Map and the key after #dup 486s options validation 486s #delete_pair 486s #put_if_absent 495s collision resistance 496s concurrency 496s #values 496s default_proc is called with the Concurrent::Map and the key 496s #get_and_set 496s #size 496s #replace_if_exists 496s initial capacity options validation 496s #get_or_default 496s #each_key 496s #clear 496s retrieval 496s collision resistance with arrays 496s marshal dump does not work with default proc 496s #value? 496s #delete 496s default proc 496s #empty 496s #keys 496s marshal dump load 496s load factor options validation 496s updates dont block reads 496s #each_value 496s #inspect 496s falsy default proc 496s #key 496s #replace_pair 496s #dup,#clone 496s #compute 496s exception 496s common 496s with return 496s #compute_if_present 496s common 496s exception 496s with return 496s #fetch 496s common 496s falsy 496s with return 496s #merge_pair 496s exception 496s common 496s with return 496s #each 496s it should behave like collection_each 496s common 496s allows modification 496s pair iterator 496s when no block is given 496s returns an object which is enumerable 496s returns an enumerator 496s #each_pair 496s it should behave like collection_each 496s common 496s pair iterator 496s allows modification 496s when no block is given 496s returns an enumerator 496s returns an object which is enumerable 496s #compute_if_absent 497s atomicity 497s exception 497s works in default_proc 497s common 497s with return 497s #fetch_or_store 497s falsy 497s common 497s with return 497s 497s Concurrent::Agent 497s nested actions 497s occur in the order they ar post 497s work with immediate execution 497s initialization 497s sets #failed? to false 497s sets the initial error to nil 497s defaults the error mode to :continue when an error handler is given 497s defaults the error mode to :fail when no error handler is given 497s sets the error mode when given a valid value 497s sets the initial value 497s raises an error when given an invalid error mode 497s action processing 497s when validation raises an error the handler will be called 497s upon validation the new value will be set to the block return value 497s the given block will be passed any provided arguments 497s when validation raises an error the value will not change 497s the return value will be passed to the validator function 497s any recursive action dispatches will run after the value has been updated 497s when validation fails the handler will be called 497s when the action raises an error the validator will not be called 497s when the action raises an error the handler will be called 497s when validation returns false the value will not change 497s on success all observers will be notified 497s the given block will be passed the current value 497s when the action raises an error the value will not change 497s posting 497s with #send 497s returns false when #failed? 497s returns true when the job is post 497s posts to the global fast executor 497s does not wait for the action to process 497s with #send_off 497s does not wait for the action to process 497s returns true when the job is post 497s returns false when #failed? 497s posts to the global io executor 497s with #send! 497s returns true when the job is post 497s raises an error when #failed? 497s posts to the global fast executor 497s does not wait for the action to process 497s with #send_off! 497s does not wait for the action to process 497s posts to the global io executor 497s returns true when the job is post 497s raises an error when #failed? 497s with #send_via 497s returns true when the job is post 497s posts to the given executor 497s returns false when #failed? 497s with #<< 497s posts to the global io executor 497s returns self when #failed? 497s returns self when the job is post 497s does not wait for the action to process 497s with #send_via! 497s posts to the given executor 497s raises an error when #failed? 497s returns true when the job is post 497s with #post 497s posts to the global io executor 497s returns true when the job is post 497s does not wait for the action to process 497s returns false when #failed? 497s error handling 497s the agent will be passed to the handler 497s the exception will be passed to the handler 497s does not trigger observation 497s #restart 497s when #failed? 497s raises an error if the new value is not valid 497s does not trigger observation 497s sets #failed? to true 497s clears the error 497s does not clear the action queue when :clear_actions is false 497s resumes action processing if actions are enqueued 497s sets the new value 497s does not clear the action queue when :clear_actions is not given 498s removes all actions from the queue when :clear_actions is true 498s when not #failed? 498s raises an error 498s observable 498s behaves like observable 498s #delete_observer 498s deletes the given observer if called before first notification 498s returns the given observer even when not found in the observer set 498s returns the removed observer if found in the observer set 498s #count_observers 498s returns zero after #delete_observers has been called 498s returns zero for a new observable object 498s returns a count of registered observers if called before first notification 498s first notification 498s calls the appropriate function on all observers which specified a :func 499s does not notify any observers after #delete_observers called 499s calls the proc for all observers added as a block 500s does not notify any observers removed with #delete_observer 500s calls the #update method on all observers without a specified :func 500s #add_observer 500s raises an exception if not given an observer or a block 500s raises an exception when given both an observer and a block 500s adds an observer if called before first notification 500s adds an observer with :func if called before first notification 500s creates an observer from a block if called before first notification 500s #delete_observers 500s deletes all observers when called before first notification 500s returns self 500s waiting 500s with .await_for 500s returns true when all prior actions for all agents have processed 501s returns false on timeout 501s returns true when there are no pending actions 501s with #await_for 501s does not block on actions from other threads 501s returns true when there are no pending actions 503s returns false on timeout 503s returns false if restarted with :clear_actions true (PENDING: the timing is nearly impossible) 504s returns true when all prior actions have processed 504s with #await_for! 504s raises an error if restarted with :clear_actions true (PENDING: the timing is nearly impossible) 504s does not block on actions from other threads 505s raises an error on timeout 505s returns true when there are no pending actions 506s returns true when all prior actions have processed 506s with #await 507s blocks indefinitely 508s returns true when all prior actions have processed 508s returns self when there are no pending actions 508s does not block on actions from other threads 508s blocks forever if restarted with :clear_actions true (PENDING: the timing is nearly impossible) 508s with await_for! 509s raises an exception on timeout 509s returns true when all prior actions for all agents have processed 509s returns true when there are no pending actions 509s with .await 509s returns true when all prior actions on all agents have processed 509s with #wait 510s returns true when all prior actions have processed 512s blocks indefinitely when timeout is nil 512s does not block on actions from other threads 512s returns false when timeout is given and restarted with :clear_actions true (PENDING: the timing is nearly impossible) 512s returns true when there are no pending actions and a timeout is given 513s returns false on timeout 513s blocks forever when timeout is nil and restarted with :clear_actions true (PENDING: the timing is nearly impossible) 513s returns true when there are no pending actions and timeout is nil 513s the await job 513s does not trigger the error mode 513s does not change the value 513s waits for nested actions 513s does not trigger observers 513s validation 513s rejects the new value when the validator returns false 513s sets the error when the error mode is :fail and the validator raises an error 513s sets the error when the error mode is :fail and the validator returns false 513s does not set an error when the error mode is :continue and the validator returns false 513s does not trigger observation when validation fails 513s does not set an error when the error mode is :continue and the validator raises an error 513s sets the new value when the validator returns true 514s rejects the new value when the validator raises an error 514s error mode 514s :continue 514s does not block further action processing 514s does not set an error when the action raises an error 514s sets #failed? to false 514s does not set an error when the validator raises an error 514s does not set an error when the validator returns false 514s :fail 514s blocks all further action processing until a restart 514s sets the error when the validator raises an error 514s sets #failed? to true 514s sets the error when the action raises an error 514s sets the error when the validator returns false 515s 515s Failures: 515s 515s 1) Concurrent::TimerTask execution uses a custom executor when given 515s Failure/Error: expect(executor).to have_received(:post) 515s 515s (#, @__Condition__=#, @set=false, @iteration=0>>).post(*(any args)) 515s expected: 1 time with any arguments 515s received: 2 times with any arguments 515s # /usr/share/rubygems-integration/all/gems/rspec-support-3.13.1/lib/rspec/support.rb:110:in `block in ' 515s # /usr/share/rubygems-integration/all/gems/rspec-support-3.13.1/lib/rspec/support.rb:119:in `notify_failure' 515s # /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/expectations/fail_with.rb:35:in `fail_with' 515s # /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/expectations/handler.rb:40:in `handle_failure' 515s # /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/expectations/handler.rb:56:in `block in handle_matcher' 515s # /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/expectations/handler.rb:27:in `with_matcher' 515s # /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/expectations/handler.rb:48:in `handle_matcher' 515s # /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/expectations/expectation_target.rb:65:in `to' 515s # /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/expectations/expectation_target.rb:101:in `to' 515s # ./spec/concurrent/timer_task_spec.rb:246:in `block (3 levels) in ' 515s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:263:in `instance_exec' 515s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:263:in `block in run' 515s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:511:in `block in with_around_and_singleton_context_hooks' 515s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:468:in `block in with_around_example_hooks' 515s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:486:in `block in run' 515s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:624:in `run_around_example_hooks_for' 515s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:486:in `run' 515s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:468:in `with_around_example_hooks' 515s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:511:in `with_around_and_singleton_context_hooks' 515s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:259:in `run' 515s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:646:in `block in run_examples' 515s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:642:in `map' 515s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:642:in `run_examples' 515s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:607:in `run' 515s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `block in run' 515s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `map' 515s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `run' 515s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:121:in `block (3 levels) in run_specs' 515s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:121:in `map' 515s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:121:in `block (2 levels) in run_specs' 515s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/configuration.rb:2091:in `with_suite_hooks' 515s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:116:in `block in run_specs' 515s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/reporter.rb:74:in `report' 515s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:115:in `run_specs' 515s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:89:in `run' 515s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:71:in `run' 515s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:45:in `invoke' 515s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/exe/rspec:4:in `
' 515s 515s 2) Concurrent::RubyExchanger behaves like exchanger #try_exchange behaves like exchanger method with finite timeout blocks until timeout 515s Failure/Error: expect(duration).to be_within(0.05).of(0.1) 515s expected 0.17660577700002023 to be within 0.05 of 0.1 515s Shared Example Group: "exchanger method with finite timeout" called from ./spec/concurrent/exchanger_spec.rb:197 515s Shared Example Group: :exchanger called from ./spec/concurrent/exchanger_spec.rb:206 515s # /usr/share/rubygems-integration/all/gems/rspec-support-3.13.1/lib/rspec/support.rb:110:in `block in ' 515s # /usr/share/rubygems-integration/all/gems/rspec-support-3.13.1/lib/rspec/support.rb:119:in `notify_failure' 515s # /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/expectations/fail_with.rb:35:in `fail_with' 515s # /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/expectations/handler.rb:40:in `handle_failure' 515s # /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/expectations/handler.rb:56:in `block in handle_matcher' 515s # /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/expectations/handler.rb:27:in `with_matcher' 515s # /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/expectations/handler.rb:48:in `handle_matcher' 515s # /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/expectations/expectation_target.rb:65:in `to' 515s # /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/expectations/expectation_target.rb:101:in `to' 515s # ./spec/concurrent/exchanger_spec.rb:69:in `block (2 levels) in ' 515s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:263:in `instance_exec' 515s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:263:in `block in run' 515s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:511:in `block in with_around_and_singleton_context_hooks' 515s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:468:in `block in with_around_example_hooks' 515s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:486:in `block in run' 515s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:624:in `run_around_example_hooks_for' 515s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:486:in `run' 515s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:468:in `with_around_example_hooks' 515s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:511:in `with_around_and_singleton_context_hooks' 515s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:259:in `run' 515s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:646:in `block in run_examples' 516s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:642:in `map' 516s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:642:in `run_examples' 516s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:607:in `run' 516s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `block in run' 516s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `map' 516s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `run' 516s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `block in run' 516s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `map' 516s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `run' 516s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `block in run' 516s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `map' 516s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `run' 516s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:121:in `block (3 levels) in run_specs' 516s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:121:in `map' 516s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:121:in `block (2 levels) in run_specs' 516s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/configuration.rb:2091:in `with_suite_hooks' 516s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:116:in `block in run_specs' 516s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/reporter.rb:74:in `report' 516s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:115:in `run_specs' 516s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:89:in `run' 516s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:71:in `run' 516s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:45:in `invoke' 516s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/exe/rspec:4:in `
' 516s 516s 3) Concurrent::RubyExchanger behaves like exchanger #exchange behaves like exchanger method with finite timeout blocks until timeout 516s Failure/Error: expect(duration).to be_within(0.05).of(0.1) 516s expected 0.17927684700003965 to be within 0.05 of 0.1 516s Shared Example Group: "exchanger method with finite timeout" called from ./spec/concurrent/exchanger_spec.rb:173 516s Shared Example Group: :exchanger called from ./spec/concurrent/exchanger_spec.rb:206 516s # /usr/share/rubygems-integration/all/gems/rspec-support-3.13.1/lib/rspec/support.rb:110:in `block in ' 516s # /usr/share/rubygems-integration/all/gems/rspec-support-3.13.1/lib/rspec/support.rb:119:in `notify_failure' 516s # /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/expectations/fail_with.rb:35:in `fail_with' 516s # /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/expectations/handler.rb:40:in `handle_failure' 516s # /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/expectations/handler.rb:56:in `block in handle_matcher' 516s # /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/expectations/handler.rb:27:in `with_matcher' 516s # /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/expectations/handler.rb:48:in `handle_matcher' 516s # /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/expectations/expectation_target.rb:65:in `to' 516s # /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/expectations/expectation_target.rb:101:in `to' 516s # ./spec/concurrent/exchanger_spec.rb:69:in `block (2 levels) in ' 516s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:263:in `instance_exec' 516s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:263:in `block in run' 516s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:511:in `block in with_around_and_singleton_context_hooks' 516s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:468:in `block in with_around_example_hooks' 516s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:486:in `block in run' 516s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:624:in `run_around_example_hooks_for' 516s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:486:in `run' 516s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:468:in `with_around_example_hooks' 516s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:511:in `with_around_and_singleton_context_hooks' 516s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:259:in `run' 516s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:646:in `block in run_examples' 516s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:642:in `map' 516s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:642:in `run_examples' 516s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:607:in `run' 516s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `block in run' 516s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `map' 516s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `run' 516s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `block in run' 516s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `map' 516s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `run' 516s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `block in run' 516s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `map' 516s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `run' 516s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:121:in `block (3 levels) in run_specs' 516s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:121:in `map' 516s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:121:in `block (2 levels) in run_specs' 516s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/configuration.rb:2091:in `with_suite_hooks' 516s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:116:in `block in run_specs' 516s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/reporter.rb:74:in `report' 516s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:115:in `run_specs' 516s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:89:in `run' 516s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:71:in `run' 516s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:45:in `invoke' 516s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/exe/rspec:4:in `
' 516s 516s Finished in 2 minutes 44.7 seconds (files took 3.02 seconds to load) 516s 1426 examples, 3 failures, 7 pending 516s 516s Failed examples: 516s 516s rspec ./spec/concurrent/timer_task_spec.rb:236 # Concurrent::TimerTask execution uses a custom executor when given 516s rspec ./spec/concurrent/exchanger_spec.rb[1:1:3:2:1] # Concurrent::RubyExchanger behaves like exchanger #try_exchange behaves like exchanger method with finite timeout blocks until timeout 516s rspec ./spec/concurrent/exchanger_spec.rb[1:1:1:2:1] # Concurrent::RubyExchanger behaves like exchanger #exchange behaves like exchanger method with finite timeout blocks until timeout 516s 516s Randomized with seed 1 516s 516s /usr/bin/ruby3.3 -I/usr/share/rubygems-integration/all/gems/rspec-support-3.13.1/lib:/usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/exe/rspec --pattern ./spec/concurrent/\*_spec.rb --color --backtrace --format documentation --seed 1 failed 516s mv ./.gem2deb.lib lib 516s mv ./.gem2deb.ext ext 517s autopkgtest [07:33:35]: test ruby: -----------------------] 519s ruby FAIL non-zero exit status 1 519s autopkgtest [07:33:37]: test ruby: - - - - - - - - - - results - - - - - - - - - - 521s autopkgtest [07:33:39]: test jruby: preparing testbed 551s Creating nova instance adt-resolute-s390x-ruby-concurrent-20260208-064726-juju-7f2275-prod-proposed-migration-environment-20-9cc6f939-5f46-4ad9-8803-75cf1c21048f from image adt/ubuntu-resolute-s390x-server-20260208.img (UUID bf8d2066-816d-4293-b7d1-06f39d3d29cb)... 752s autopkgtest [07:37:30]: testbed dpkg architecture: s390x 753s autopkgtest [07:37:31]: testbed apt version: 3.1.15 754s autopkgtest [07:37:32]: @@@@@@@@@@@@@@@@@@@@ test bed setup 755s autopkgtest [07:37:33]: testbed release detected to be: resolute 759s autopkgtest [07:37:37]: updating testbed package index (apt update) 760s Get:1 http://ftpmaster.internal/ubuntu resolute-proposed InRelease [124 kB] 762s Hit:2 http://ftpmaster.internal/ubuntu resolute InRelease 762s Hit:3 http://ftpmaster.internal/ubuntu resolute-updates InRelease 762s Hit:4 http://ftpmaster.internal/ubuntu resolute-security InRelease 762s Get:5 http://ftpmaster.internal/ubuntu resolute-proposed/main Sources [175 kB] 762s Get:6 http://ftpmaster.internal/ubuntu resolute-proposed/universe Sources [1523 kB] 763s Get:7 http://ftpmaster.internal/ubuntu resolute-proposed/multiverse Sources [28.2 kB] 763s Get:8 http://ftpmaster.internal/ubuntu resolute-proposed/main s390x Packages [202 kB] 763s Get:9 http://ftpmaster.internal/ubuntu resolute-proposed/universe s390x Packages [1342 kB] 763s Get:10 http://ftpmaster.internal/ubuntu resolute-proposed/multiverse s390x Packages [7384 B] 766s Fetched 3401 kB in 6s (565 kB/s) 773s Reading package lists... 775s Hit:1 http://ftpmaster.internal/ubuntu resolute-proposed InRelease 775s Hit:2 http://ftpmaster.internal/ubuntu resolute InRelease 775s Hit:3 http://ftpmaster.internal/ubuntu resolute-updates InRelease 775s Hit:4 http://ftpmaster.internal/ubuntu resolute-security InRelease 783s Reading package lists... 784s Reading package lists... 786s Building dependency tree... 786s Reading state information... 788s Calculating upgrade... 790s The following packages will be upgraded: 790s libxau6 libxkbcommon0 ubuntu-kernel-accessories ubuntu-standard 790s 4 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 790s Need to get 199 kB of archives. 790s After this operation, 4096 B of additional disk space will be used. 790s Get:1 http://ftpmaster.internal/ubuntu resolute/main s390x libxau6 s390x 1:1.0.11-1build2 [7410 B] 790s Get:2 http://ftpmaster.internal/ubuntu resolute/main s390x libxkbcommon0 s390x 1.13.1-1 [165 kB] 790s Get:3 http://ftpmaster.internal/ubuntu resolute/main s390x ubuntu-standard s390x 1.564 [13.3 kB] 790s Get:4 http://ftpmaster.internal/ubuntu resolute/main s390x ubuntu-kernel-accessories s390x 1.564 [13.1 kB] 798s dpkg-preconfigure: unable to re-open stdin: No such file or directory 799s Fetched 199 kB in 0s (559 kB/s) 811s (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 88711 files and directories currently installed.) 811s Preparing to unpack .../libxau6_1%3a1.0.11-1build2_s390x.deb ... 812s Unpacking libxau6:s390x (1:1.0.11-1build2) over (1:1.0.11-1build1) ... 813s Preparing to unpack .../libxkbcommon0_1.13.1-1_s390x.deb ... 814s Unpacking libxkbcommon0:s390x (1.13.1-1) over (1.12.3-1) ... 816s Preparing to unpack .../ubuntu-standard_1.564_s390x.deb ... 816s Unpacking ubuntu-standard (1.564) over (1.563) ... 820s Preparing to unpack .../ubuntu-kernel-accessories_1.564_s390x.deb ... 823s Unpacking ubuntu-kernel-accessories (1.564) over (1.563) ... 827s Setting up libxau6:s390x (1:1.0.11-1build2) ... 829s Setting up ubuntu-kernel-accessories (1.564) ... 830s Setting up ubuntu-standard (1.564) ... 832s Setting up libxkbcommon0:s390x (1.13.1-1) ... 833s Processing triggers for libc-bin (2.42-2ubuntu4) ... 841s autopkgtest [07:38:59]: upgrading testbed (apt dist-upgrade and autopurge) 842s Reading package lists... 843s Building dependency tree... 843s Reading state information... 844s Calculating upgrade... 845s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 847s Reading package lists... 849s Building dependency tree... 849s Reading state information... 851s Solving dependencies... 852s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 865s Reading package lists... 868s Building dependency tree... 868s Reading state information... 869s Solving dependencies... 870s The following NEW packages will be installed: 870s ca-certificates-java default-jre-headless java-common jruby libasm-java 870s libbackport9-java libbcpkix-java libbcprov-java libbctls-java libbcutil-java 870s libdirgra-java libfixposix4t64 libhawtjni-runtime-java 870s libheadius-options-java libinvokebinder-java libjansi-native-java 870s libjansi1-java libjcodings-java libjffi-java libjffi-jni libjitescript-java 870s libjline2-java libjnr-constants-java libjnr-enxio-java libjnr-ffi-java 870s libjnr-netdb-java libjnr-posix-java libjnr-unixsocket-java 870s libjnr-x86asm-java libjoda-time-java libjpeg-turbo8 libjpeg8 870s libjruby-joni-java libjzlib-java liblcms2-2 libpcsclite1 libruby libruby3.3 870s libsnakeyaml-engine-java openjdk-21-jre-headless rake ruby ruby-concurrent 870s ruby-concurrent-ext ruby-csv ruby-did-you-mean ruby-diff-lcs ruby-net-telnet 870s ruby-rspec ruby-rspec-core ruby-rspec-expectations ruby-rspec-mocks 870s ruby-rspec-support ruby-ruby2-keywords ruby-rubygems ruby-timecop 870s ruby-webrick ruby-xmlrpc ruby3.3 rubygems-integration 871s 0 upgraded, 60 newly installed, 0 to remove and 0 not upgraded. 871s Need to get 88.5 MB of archives. 871s After this operation, 281 MB of additional disk space will be used. 871s Get:1 http://ftpmaster.internal/ubuntu resolute/main s390x ca-certificates-java all 20240118build1 [11.7 kB] 871s Get:2 http://ftpmaster.internal/ubuntu resolute/main s390x java-common all 0.76build1 [6956 B] 871s Get:3 http://ftpmaster.internal/ubuntu resolute/main s390x liblcms2-2 s390x 2.17-1 [176 kB] 871s Get:4 http://ftpmaster.internal/ubuntu resolute/main s390x libjpeg-turbo8 s390x 2.1.5-4ubuntu3 [156 kB] 871s Get:5 http://ftpmaster.internal/ubuntu resolute/main s390x libjpeg8 s390x 8c-2ubuntu11 [2146 B] 871s Get:6 http://ftpmaster.internal/ubuntu resolute/main s390x libpcsclite1 s390x 2.4.1-1 [24.5 kB] 871s Get:7 http://ftpmaster.internal/ubuntu resolute/main s390x openjdk-21-jre-headless s390x 21.0.10+7-1 [43.8 MB] 877s Get:8 http://ftpmaster.internal/ubuntu resolute/main s390x default-jre-headless s390x 2:1.21-76build1 [3268 B] 877s Get:9 http://ftpmaster.internal/ubuntu resolute/universe s390x libasm-java all 9.8-2 [388 kB] 877s Get:10 http://ftpmaster.internal/ubuntu resolute/universe s390x libbackport9-java all 1.10-2build1 [13.2 kB] 877s Get:11 http://ftpmaster.internal/ubuntu resolute/universe s390x libbcprov-java all 1.80-3 [5468 kB] 878s Get:12 http://ftpmaster.internal/ubuntu resolute/universe s390x libbcutil-java all 1.80-3 [545 kB] 878s Get:13 http://ftpmaster.internal/ubuntu resolute/universe s390x libbcpkix-java all 1.80-3 [913 kB] 878s Get:14 http://ftpmaster.internal/ubuntu resolute/universe s390x libbctls-java all 1.80-3 [645 kB] 878s Get:15 http://ftpmaster.internal/ubuntu resolute/universe s390x libdirgra-java all 0.4-2build1 [21.8 kB] 878s Get:16 http://ftpmaster.internal/ubuntu resolute/universe s390x libfixposix4t64 s390x 1:0.5.1-1+nmu1.1build2 [16.5 kB] 878s Get:17 http://ftpmaster.internal/ubuntu resolute/universe s390x libheadius-options-java all 1.7-1build1 [18.3 kB] 878s Get:18 http://ftpmaster.internal/ubuntu resolute/universe s390x libinvokebinder-java all 1.14-1build1 [52.1 kB] 878s Get:19 http://ftpmaster.internal/ubuntu resolute/universe s390x libhawtjni-runtime-java all 1.18-1build1 [28.4 kB] 878s Get:20 http://ftpmaster.internal/ubuntu resolute/universe s390x libjansi-native-java all 1.8-2build1 [23.6 kB] 878s Get:21 http://ftpmaster.internal/ubuntu resolute/universe s390x libjansi1-java all 1.18-3.1build1 [56.3 kB] 878s Get:22 http://ftpmaster.internal/ubuntu resolute/universe s390x libjcodings-java all 1.0.58-1build1 [1474 kB] 878s Get:23 http://ftpmaster.internal/ubuntu resolute/universe s390x libjffi-jni s390x 1.3.13+ds-1build1 [30.2 kB] 878s Get:24 http://ftpmaster.internal/ubuntu resolute/universe s390x libjffi-java all 1.3.13+ds-1build1 [111 kB] 878s Get:25 http://ftpmaster.internal/ubuntu resolute/universe s390x libjitescript-java all 0.4.3-1build1 [24.5 kB] 878s Get:26 http://ftpmaster.internal/ubuntu resolute/universe s390x libjline2-java all 2.14.6-6 [152 kB] 878s Get:27 http://ftpmaster.internal/ubuntu resolute/universe s390x libjnr-constants-java all 0.10.4-2build1 [1416 kB] 878s Get:28 http://ftpmaster.internal/ubuntu resolute/universe s390x libjnr-x86asm-java all 1.0.2-6build1 [216 kB] 878s Get:29 http://ftpmaster.internal/ubuntu resolute/universe s390x libjnr-ffi-java all 2.2.15-2build1 [632 kB] 878s Get:30 http://ftpmaster.internal/ubuntu resolute/universe s390x libjnr-enxio-java all 0.32.16-1build1 [33.8 kB] 878s Get:31 http://ftpmaster.internal/ubuntu resolute/universe s390x libjnr-netdb-java all 1.2.0+dfsg-1build1 [58.7 kB] 878s Get:32 http://ftpmaster.internal/ubuntu resolute/universe s390x libjnr-posix-java all 3.1.18-1build1 [268 kB] 878s Get:33 http://ftpmaster.internal/ubuntu resolute/universe s390x libjnr-unixsocket-java all 0.38.21-3 [46.8 kB] 878s Get:34 http://ftpmaster.internal/ubuntu resolute/universe s390x libjoda-time-java all 2.10.14-1 [535 kB] 878s Get:35 http://ftpmaster.internal/ubuntu resolute/universe s390x libjruby-joni-java all 2.2.1-1build1 [221 kB] 878s Get:36 http://ftpmaster.internal/ubuntu resolute/universe s390x libjzlib-java all 1.1.3-3build1 [76.7 kB] 878s Get:37 http://ftpmaster.internal/ubuntu resolute/universe s390x libsnakeyaml-engine-java all 2.7+ds-3build1 [258 kB] 878s Get:38 http://ftpmaster.internal/ubuntu resolute/universe s390x jruby all 9.4.8.0+ds-3ubuntu1 [23.4 MB] 880s Get:39 http://ftpmaster.internal/ubuntu resolute/main s390x rubygems-integration all 1.19build1 [5666 B] 880s Get:40 http://ftpmaster.internal/ubuntu resolute/main s390x ruby3.3 s390x 3.3.8-2ubuntu2 [58.8 kB] 880s Get:41 http://ftpmaster.internal/ubuntu resolute/main s390x ruby-rubygems all 3.6.7-2ubuntu2 [332 kB] 880s Get:42 http://ftpmaster.internal/ubuntu resolute-proposed/main s390x ruby s390x 1:3.3build1 [3680 B] 880s Get:43 http://ftpmaster.internal/ubuntu resolute/main s390x rake all 13.2.1-1build1 [45.9 kB] 880s Get:44 http://ftpmaster.internal/ubuntu resolute/main s390x ruby-csv all 3.3.4-1 [43.0 kB] 880s Get:45 http://ftpmaster.internal/ubuntu resolute/main s390x ruby-did-you-mean all 1.6.3-2build1 [14.9 kB] 880s Get:46 http://ftpmaster.internal/ubuntu resolute/main s390x ruby-net-telnet all 0.2.0-1build1 [13.5 kB] 880s Get:47 http://ftpmaster.internal/ubuntu resolute/main s390x ruby-ruby2-keywords all 0.0.5-1build1 [4398 B] 880s Get:48 http://ftpmaster.internal/ubuntu resolute/main s390x ruby-webrick all 1.9.1-1build1 [60.9 kB] 880s Get:49 http://ftpmaster.internal/ubuntu resolute/main s390x ruby-xmlrpc all 0.3.3-2build1 [24.9 kB] 880s Get:50 http://ftpmaster.internal/ubuntu resolute/main s390x libruby3.3 s390x 3.3.8-2ubuntu2 [5871 kB] 880s Get:51 http://ftpmaster.internal/ubuntu resolute-proposed/main s390x libruby s390x 1:3.3build1 [5270 B] 881s Get:52 http://ftpmaster.internal/ubuntu resolute/universe s390x ruby-concurrent all 1.3.4-1 [283 kB] 881s Get:53 http://ftpmaster.internal/ubuntu resolute/universe s390x ruby-concurrent-ext s390x 1.3.4-1 [8950 B] 881s Get:54 http://ftpmaster.internal/ubuntu resolute/universe s390x ruby-diff-lcs all 1.5.1-1 [22.8 kB] 881s Get:55 http://ftpmaster.internal/ubuntu resolute/universe s390x ruby-rspec-support all 3.13.0c0e0m0s1-2 [29.2 kB] 881s Get:56 http://ftpmaster.internal/ubuntu resolute/universe s390x ruby-rspec-core all 3.13.0c0e0m0s1-2 [164 kB] 881s Get:57 http://ftpmaster.internal/ubuntu resolute/universe s390x ruby-rspec-expectations all 3.13.0c0e0m0s1-2 [89.8 kB] 881s Get:58 http://ftpmaster.internal/ubuntu resolute/universe s390x ruby-rspec-mocks all 3.13.0c0e0m0s1-2 [81.0 kB] 881s Get:59 http://ftpmaster.internal/ubuntu resolute/universe s390x ruby-rspec all 3.13.0c0e0m0s1-2 [3500 B] 881s Get:60 http://ftpmaster.internal/ubuntu resolute/universe s390x ruby-timecop all 0.9.10-1.1 [11.5 kB] 883s Fetched 88.5 MB in 11s (8421 kB/s) 883s Selecting previously unselected package ca-certificates-java. 883s (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 88711 files and directories currently installed.) 883s Preparing to unpack .../00-ca-certificates-java_20240118build1_all.deb ... 883s Unpacking ca-certificates-java (20240118build1) ... 884s Selecting previously unselected package java-common. 884s Preparing to unpack .../01-java-common_0.76build1_all.deb ... 884s Unpacking java-common (0.76build1) ... 885s Selecting previously unselected package liblcms2-2:s390x. 885s Preparing to unpack .../02-liblcms2-2_2.17-1_s390x.deb ... 885s Unpacking liblcms2-2:s390x (2.17-1) ... 885s Selecting previously unselected package libjpeg-turbo8:s390x. 885s Preparing to unpack .../03-libjpeg-turbo8_2.1.5-4ubuntu3_s390x.deb ... 885s Unpacking libjpeg-turbo8:s390x (2.1.5-4ubuntu3) ... 885s Selecting previously unselected package libjpeg8:s390x. 885s Preparing to unpack .../04-libjpeg8_8c-2ubuntu11_s390x.deb ... 885s Unpacking libjpeg8:s390x (8c-2ubuntu11) ... 886s Selecting previously unselected package libpcsclite1:s390x. 886s Preparing to unpack .../05-libpcsclite1_2.4.1-1_s390x.deb ... 886s Unpacking libpcsclite1:s390x (2.4.1-1) ... 886s Selecting previously unselected package openjdk-21-jre-headless:s390x. 886s Preparing to unpack .../06-openjdk-21-jre-headless_21.0.10+7-1_s390x.deb ... 886s Unpacking openjdk-21-jre-headless:s390x (21.0.10+7-1) ... 898s Selecting previously unselected package default-jre-headless. 898s Preparing to unpack .../07-default-jre-headless_2%3a1.21-76build1_s390x.deb ... 898s Unpacking default-jre-headless (2:1.21-76build1) ... 898s Selecting previously unselected package libasm-java. 898s Preparing to unpack .../08-libasm-java_9.8-2_all.deb ... 898s Unpacking libasm-java (9.8-2) ... 899s Selecting previously unselected package libbackport9-java. 899s Preparing to unpack .../09-libbackport9-java_1.10-2build1_all.deb ... 899s Unpacking libbackport9-java (1.10-2build1) ... 899s Selecting previously unselected package libbcprov-java. 899s Preparing to unpack .../10-libbcprov-java_1.80-3_all.deb ... 899s Unpacking libbcprov-java (1.80-3) ... 899s Selecting previously unselected package libbcutil-java. 899s Preparing to unpack .../11-libbcutil-java_1.80-3_all.deb ... 899s Unpacking libbcutil-java (1.80-3) ... 900s Selecting previously unselected package libbcpkix-java. 900s Preparing to unpack .../12-libbcpkix-java_1.80-3_all.deb ... 900s Unpacking libbcpkix-java (1.80-3) ... 900s Selecting previously unselected package libbctls-java. 900s Preparing to unpack .../13-libbctls-java_1.80-3_all.deb ... 900s Unpacking libbctls-java (1.80-3) ... 901s Selecting previously unselected package libdirgra-java. 901s Preparing to unpack .../14-libdirgra-java_0.4-2build1_all.deb ... 901s Unpacking libdirgra-java (0.4-2build1) ... 901s Selecting previously unselected package libfixposix4t64:s390x. 901s Preparing to unpack .../15-libfixposix4t64_1%3a0.5.1-1+nmu1.1build2_s390x.deb ... 901s Unpacking libfixposix4t64:s390x (1:0.5.1-1+nmu1.1build2) ... 902s Selecting previously unselected package libheadius-options-java. 902s Preparing to unpack .../16-libheadius-options-java_1.7-1build1_all.deb ... 902s Unpacking libheadius-options-java (1.7-1build1) ... 902s Selecting previously unselected package libinvokebinder-java. 902s Preparing to unpack .../17-libinvokebinder-java_1.14-1build1_all.deb ... 902s Unpacking libinvokebinder-java (1.14-1build1) ... 902s Selecting previously unselected package libhawtjni-runtime-java. 902s Preparing to unpack .../18-libhawtjni-runtime-java_1.18-1build1_all.deb ... 902s Unpacking libhawtjni-runtime-java (1.18-1build1) ... 902s Selecting previously unselected package libjansi-native-java. 902s Preparing to unpack .../19-libjansi-native-java_1.8-2build1_all.deb ... 902s Unpacking libjansi-native-java (1.8-2build1) ... 902s Selecting previously unselected package libjansi1-java. 903s Preparing to unpack .../20-libjansi1-java_1.18-3.1build1_all.deb ... 903s Unpacking libjansi1-java (1.18-3.1build1) ... 903s Selecting previously unselected package libjcodings-java. 903s Preparing to unpack .../21-libjcodings-java_1.0.58-1build1_all.deb ... 903s Unpacking libjcodings-java (1.0.58-1build1) ... 903s Selecting previously unselected package libjffi-jni:s390x. 903s Preparing to unpack .../22-libjffi-jni_1.3.13+ds-1build1_s390x.deb ... 903s Unpacking libjffi-jni:s390x (1.3.13+ds-1build1) ... 903s Selecting previously unselected package libjffi-java. 903s Preparing to unpack .../23-libjffi-java_1.3.13+ds-1build1_all.deb ... 903s Unpacking libjffi-java (1.3.13+ds-1build1) ... 903s Selecting previously unselected package libjitescript-java. 903s Preparing to unpack .../24-libjitescript-java_0.4.3-1build1_all.deb ... 903s Unpacking libjitescript-java (0.4.3-1build1) ... 904s Selecting previously unselected package libjline2-java. 904s Preparing to unpack .../25-libjline2-java_2.14.6-6_all.deb ... 904s Unpacking libjline2-java (2.14.6-6) ... 904s Selecting previously unselected package libjnr-constants-java. 904s Preparing to unpack .../26-libjnr-constants-java_0.10.4-2build1_all.deb ... 904s Unpacking libjnr-constants-java (0.10.4-2build1) ... 905s Selecting previously unselected package libjnr-x86asm-java. 905s Preparing to unpack .../27-libjnr-x86asm-java_1.0.2-6build1_all.deb ... 905s Unpacking libjnr-x86asm-java (1.0.2-6build1) ... 905s Selecting previously unselected package libjnr-ffi-java. 905s Preparing to unpack .../28-libjnr-ffi-java_2.2.15-2build1_all.deb ... 905s Unpacking libjnr-ffi-java (2.2.15-2build1) ... 905s Selecting previously unselected package libjnr-enxio-java. 905s Preparing to unpack .../29-libjnr-enxio-java_0.32.16-1build1_all.deb ... 905s Unpacking libjnr-enxio-java (0.32.16-1build1) ... 906s Selecting previously unselected package libjnr-netdb-java. 906s Preparing to unpack .../30-libjnr-netdb-java_1.2.0+dfsg-1build1_all.deb ... 906s Unpacking libjnr-netdb-java (1.2.0+dfsg-1build1) ... 906s Selecting previously unselected package libjnr-posix-java. 906s Preparing to unpack .../31-libjnr-posix-java_3.1.18-1build1_all.deb ... 906s Unpacking libjnr-posix-java (3.1.18-1build1) ... 906s Selecting previously unselected package libjnr-unixsocket-java. 906s Preparing to unpack .../32-libjnr-unixsocket-java_0.38.21-3_all.deb ... 906s Unpacking libjnr-unixsocket-java (0.38.21-3) ... 906s Selecting previously unselected package libjoda-time-java. 906s Preparing to unpack .../33-libjoda-time-java_2.10.14-1_all.deb ... 906s Unpacking libjoda-time-java (2.10.14-1) ... 907s Selecting previously unselected package libjruby-joni-java. 907s Preparing to unpack .../34-libjruby-joni-java_2.2.1-1build1_all.deb ... 907s Unpacking libjruby-joni-java (2.2.1-1build1) ... 907s Selecting previously unselected package libjzlib-java. 907s Preparing to unpack .../35-libjzlib-java_1.1.3-3build1_all.deb ... 907s Unpacking libjzlib-java (1.1.3-3build1) ... 907s Selecting previously unselected package libsnakeyaml-engine-java. 907s Preparing to unpack .../36-libsnakeyaml-engine-java_2.7+ds-3build1_all.deb ... 907s Unpacking libsnakeyaml-engine-java (2.7+ds-3build1) ... 907s Selecting previously unselected package jruby. 907s Preparing to unpack .../37-jruby_9.4.8.0+ds-3ubuntu1_all.deb ... 907s Unpacking jruby (9.4.8.0+ds-3ubuntu1) ... 912s Selecting previously unselected package rubygems-integration. 912s Preparing to unpack .../38-rubygems-integration_1.19build1_all.deb ... 912s Unpacking rubygems-integration (1.19build1) ... 913s Selecting previously unselected package ruby3.3. 913s Preparing to unpack .../39-ruby3.3_3.3.8-2ubuntu2_s390x.deb ... 913s Unpacking ruby3.3 (3.3.8-2ubuntu2) ... 913s Selecting previously unselected package ruby-rubygems. 913s Preparing to unpack .../40-ruby-rubygems_3.6.7-2ubuntu2_all.deb ... 913s Unpacking ruby-rubygems (3.6.7-2ubuntu2) ... 914s Selecting previously unselected package ruby. 914s Preparing to unpack .../41-ruby_1%3a3.3build1_s390x.deb ... 914s Unpacking ruby (1:3.3build1) ... 914s Selecting previously unselected package rake. 914s Preparing to unpack .../42-rake_13.2.1-1build1_all.deb ... 914s Unpacking rake (13.2.1-1build1) ... 914s Selecting previously unselected package ruby-csv. 914s Preparing to unpack .../43-ruby-csv_3.3.4-1_all.deb ... 914s Unpacking ruby-csv (3.3.4-1) ... 914s Selecting previously unselected package ruby-did-you-mean. 914s Preparing to unpack .../44-ruby-did-you-mean_1.6.3-2build1_all.deb ... 914s Unpacking ruby-did-you-mean (1.6.3-2build1) ... 914s Selecting previously unselected package ruby-net-telnet. 914s Preparing to unpack .../45-ruby-net-telnet_0.2.0-1build1_all.deb ... 914s Unpacking ruby-net-telnet (0.2.0-1build1) ... 914s Selecting previously unselected package ruby-ruby2-keywords. 914s Preparing to unpack .../46-ruby-ruby2-keywords_0.0.5-1build1_all.deb ... 914s Unpacking ruby-ruby2-keywords (0.0.5-1build1) ... 914s Selecting previously unselected package ruby-webrick. 914s Preparing to unpack .../47-ruby-webrick_1.9.1-1build1_all.deb ... 914s Unpacking ruby-webrick (1.9.1-1build1) ... 914s Selecting previously unselected package ruby-xmlrpc. 914s Preparing to unpack .../48-ruby-xmlrpc_0.3.3-2build1_all.deb ... 914s Unpacking ruby-xmlrpc (0.3.3-2build1) ... 915s Selecting previously unselected package libruby3.3:s390x. 915s Preparing to unpack .../49-libruby3.3_3.3.8-2ubuntu2_s390x.deb ... 915s Unpacking libruby3.3:s390x (3.3.8-2ubuntu2) ... 919s Selecting previously unselected package libruby:s390x. 920s Preparing to unpack .../50-libruby_1%3a3.3build1_s390x.deb ... 920s Unpacking libruby:s390x (1:3.3build1) ... 920s Selecting previously unselected package ruby-concurrent. 920s Preparing to unpack .../51-ruby-concurrent_1.3.4-1_all.deb ... 920s Unpacking ruby-concurrent (1.3.4-1) ... 921s Selecting previously unselected package ruby-concurrent-ext. 921s Preparing to unpack .../52-ruby-concurrent-ext_1.3.4-1_s390x.deb ... 921s Unpacking ruby-concurrent-ext (1.3.4-1) ... 921s Selecting previously unselected package ruby-diff-lcs. 921s Preparing to unpack .../53-ruby-diff-lcs_1.5.1-1_all.deb ... 921s Unpacking ruby-diff-lcs (1.5.1-1) ... 922s Selecting previously unselected package ruby-rspec-support. 922s Preparing to unpack .../54-ruby-rspec-support_3.13.0c0e0m0s1-2_all.deb ... 922s Unpacking ruby-rspec-support (3.13.0c0e0m0s1-2) ... 922s Selecting previously unselected package ruby-rspec-core. 922s Preparing to unpack .../55-ruby-rspec-core_3.13.0c0e0m0s1-2_all.deb ... 922s Unpacking ruby-rspec-core (3.13.0c0e0m0s1-2) ... 922s Selecting previously unselected package ruby-rspec-expectations. 922s Preparing to unpack .../56-ruby-rspec-expectations_3.13.0c0e0m0s1-2_all.deb ... 922s Unpacking ruby-rspec-expectations (3.13.0c0e0m0s1-2) ... 922s Selecting previously unselected package ruby-rspec-mocks. 922s Preparing to unpack .../57-ruby-rspec-mocks_3.13.0c0e0m0s1-2_all.deb ... 922s Unpacking ruby-rspec-mocks (3.13.0c0e0m0s1-2) ... 922s Selecting previously unselected package ruby-rspec. 922s Preparing to unpack .../58-ruby-rspec_3.13.0c0e0m0s1-2_all.deb ... 922s Unpacking ruby-rspec (3.13.0c0e0m0s1-2) ... 922s Selecting previously unselected package ruby-timecop. 922s Preparing to unpack .../59-ruby-timecop_0.9.10-1.1_all.deb ... 922s Unpacking ruby-timecop (0.9.10-1.1) ... 923s Setting up libbcprov-java (1.80-3) ... 923s Setting up liblcms2-2:s390x (2.17-1) ... 923s Setting up libfixposix4t64:s390x (1:0.5.1-1+nmu1.1build2) ... 923s Setting up ruby-ruby2-keywords (0.0.5-1build1) ... 923s Setting up java-common (0.76build1) ... 923s Setting up libbcutil-java (1.80-3) ... 923s Setting up libasm-java (9.8-2) ... 923s Setting up rubygems-integration (1.19build1) ... 923s Setting up libheadius-options-java (1.7-1build1) ... 923s Setting up libbctls-java (1.80-3) ... 923s Setting up ruby-concurrent (1.3.4-1) ... 923s Setting up libjnr-x86asm-java (1.0.2-6build1) ... 923s Setting up ruby-timecop (0.9.10-1.1) ... 923s Setting up libjzlib-java (1.1.3-3build1) ... 923s Setting up libbackport9-java (1.10-2build1) ... 923s Setting up libjitescript-java (0.4.3-1build1) ... 923s Setting up libsnakeyaml-engine-java (2.7+ds-3build1) ... 923s Setting up ruby-net-telnet (0.2.0-1build1) ... 923s Setting up ruby-csv (3.3.4-1) ... 923s Setting up libpcsclite1:s390x (2.4.1-1) ... 923s Setting up libjpeg-turbo8:s390x (2.1.5-4ubuntu3) ... 923s Setting up ruby-rspec-support (3.13.0c0e0m0s1-2) ... 923s Setting up libjoda-time-java (2.10.14-1) ... 923s Setting up libjcodings-java (1.0.58-1build1) ... 923s Setting up ruby-webrick (1.9.1-1build1) ... 923s Setting up libinvokebinder-java (1.14-1build1) ... 923s Setting up libjffi-jni:s390x (1.3.13+ds-1build1) ... 923s Setting up ca-certificates-java (20240118build1) ... 923s No JRE found. Skipping Java certificates setup. 923s Setting up ruby-did-you-mean (1.6.3-2build1) ... 923s Setting up libbcpkix-java (1.80-3) ... 923s Setting up ruby-xmlrpc (0.3.3-2build1) ... 923s Setting up libhawtjni-runtime-java (1.18-1build1) ... 923s Setting up libdirgra-java (0.4-2build1) ... 923s Setting up libjnr-constants-java (0.10.4-2build1) ... 923s Setting up libjpeg8:s390x (8c-2ubuntu11) ... 923s Setting up libjffi-java (1.3.13+ds-1build1) ... 923s Setting up openjdk-21-jre-headless:s390x (21.0.10+7-1) ... 923s update-alternatives: using /usr/lib/jvm/java-21-openjdk-s390x/bin/java to provide /usr/bin/java (java) in auto mode 923s update-alternatives: using /usr/lib/jvm/java-21-openjdk-s390x/bin/jpackage to provide /usr/bin/jpackage (jpackage) in auto mode 923s update-alternatives: using /usr/lib/jvm/java-21-openjdk-s390x/bin/keytool to provide /usr/bin/keytool (keytool) in auto mode 923s update-alternatives: using /usr/lib/jvm/java-21-openjdk-s390x/bin/rmiregistry to provide /usr/bin/rmiregistry (rmiregistry) in auto mode 923s update-alternatives: using /usr/lib/jvm/java-21-openjdk-s390x/lib/jexec to provide /usr/bin/jexec (jexec) in auto mode 924s Setting up libjruby-joni-java (2.2.1-1build1) ... 924s Setting up libjansi-native-java (1.8-2build1) ... 924s Setting up libjansi1-java (1.18-3.1build1) ... 924s Setting up libjline2-java (2.14.6-6) ... 924s Setting up libjnr-ffi-java (2.2.15-2build1) ... 924s Setting up libjnr-enxio-java (0.32.16-1build1) ... 924s Setting up libjnr-netdb-java (1.2.0+dfsg-1build1) ... 924s Setting up libjnr-posix-java (3.1.18-1build1) ... 924s Setting up libjnr-unixsocket-java (0.38.21-3) ... 924s Setting up rake (13.2.1-1build1) ... 924s Setting up libruby3.3:s390x (3.3.8-2ubuntu2) ... 924s Setting up ruby3.3 (3.3.8-2ubuntu2) ... 924s Setting up libruby:s390x (1:3.3build1) ... 924s Setting up ruby (1:3.3build1) ... 924s Setting up ruby-rspec-core (3.13.0c0e0m0s1-2) ... 924s Setting up ruby-diff-lcs (1.5.1-1) ... 924s Setting up ruby-rubygems (3.6.7-2ubuntu2) ... 924s Setting up ruby-concurrent-ext (1.3.4-1) ... 924s Setting up ruby-rspec-expectations (3.13.0c0e0m0s1-2) ... 924s Setting up ruby-rspec-mocks (3.13.0c0e0m0s1-2) ... 924s Setting up ruby-rspec (3.13.0c0e0m0s1-2) ... 924s Processing triggers for libc-bin (2.42-2ubuntu4) ... 926s Processing triggers for man-db (2.13.1-1build1) ... 992s Processing triggers for ca-certificates-java (20240118build1) ... 1007s Adding debian:ACCVRAIZ1.pem 1007s Adding debian:AC_RAIZ_FNMT-RCM.pem 1007s Adding debian:AC_RAIZ_FNMT-RCM_SERVIDORES_SEGUROS.pem 1007s Adding debian:ANF_Secure_Server_Root_CA.pem 1007s Adding debian:Actalis_Authentication_Root_CA.pem 1007s Adding debian:AffirmTrust_Commercial.pem 1007s Adding debian:AffirmTrust_Networking.pem 1007s Adding debian:AffirmTrust_Premium.pem 1007s Adding debian:AffirmTrust_Premium_ECC.pem 1007s Adding debian:Amazon_Root_CA_1.pem 1007s Adding debian:Amazon_Root_CA_2.pem 1007s Adding debian:Amazon_Root_CA_3.pem 1007s Adding debian:Amazon_Root_CA_4.pem 1007s Adding debian:Atos_TrustedRoot_2011.pem 1007s Adding debian:Atos_TrustedRoot_Root_CA_ECC_TLS_2021.pem 1007s Adding debian:Atos_TrustedRoot_Root_CA_RSA_TLS_2021.pem 1007s Adding debian:Autoridad_de_Certificacion_Firmaprofesional_CIF_A62634068.pem 1008s Adding debian:BJCA_Global_Root_CA1.pem 1008s Adding debian:BJCA_Global_Root_CA2.pem 1008s Adding debian:Baltimore_CyberTrust_Root.pem 1008s Adding debian:Buypass_Class_2_Root_CA.pem 1008s Adding debian:Buypass_Class_3_Root_CA.pem 1008s Adding debian:CA_Disig_Root_R2.pem 1008s Adding debian:CFCA_EV_ROOT.pem 1009s Adding debian:COMODO_Certification_Authority.pem 1009s Adding debian:COMODO_ECC_Certification_Authority.pem 1009s Adding debian:COMODO_RSA_Certification_Authority.pem 1009s Adding debian:Certainly_Root_E1.pem 1009s Adding debian:Certainly_Root_R1.pem 1010s Adding debian:Certigna.pem 1010s Adding debian:Certigna_Root_CA.pem 1010s Adding debian:Certum_EC-384_CA.pem 1010s Adding debian:Certum_Trusted_Network_CA.pem 1010s Adding debian:Certum_Trusted_Network_CA_2.pem 1010s Adding debian:Certum_Trusted_Root_CA.pem 1010s Adding debian:CommScope_Public_Trust_ECC_Root-01.pem 1011s Adding debian:CommScope_Public_Trust_ECC_Root-02.pem 1011s Adding debian:CommScope_Public_Trust_RSA_Root-01.pem 1011s Adding debian:CommScope_Public_Trust_RSA_Root-02.pem 1011s Adding debian:Comodo_AAA_Services_root.pem 1011s Adding debian:D-TRUST_BR_Root_CA_1_2020.pem 1011s Adding debian:D-TRUST_BR_Root_CA_2_2023.pem 1011s Adding debian:D-TRUST_EV_Root_CA_1_2020.pem 1011s Adding debian:D-TRUST_EV_Root_CA_2_2023.pem 1011s Adding debian:D-TRUST_Root_Class_3_CA_2_2009.pem 1011s Adding debian:D-TRUST_Root_Class_3_CA_2_EV_2009.pem 1012s Adding debian:DigiCert_Assured_ID_Root_CA.pem 1012s Adding debian:DigiCert_Assured_ID_Root_G2.pem 1012s Adding debian:DigiCert_Assured_ID_Root_G3.pem 1012s Adding debian:DigiCert_Global_Root_CA.pem 1012s Adding debian:DigiCert_Global_Root_G2.pem 1012s Adding debian:DigiCert_Global_Root_G3.pem 1013s Adding debian:DigiCert_High_Assurance_EV_Root_CA.pem 1013s Adding debian:DigiCert_TLS_ECC_P384_Root_G5.pem 1013s Adding debian:DigiCert_TLS_RSA4096_Root_G5.pem 1013s Adding debian:DigiCert_Trusted_Root_G4.pem 1013s Adding debian:Entrust.net_Premium_2048_Secure_Server_CA.pem 1013s Adding debian:Entrust_Root_Certification_Authority.pem 1013s Adding debian:Entrust_Root_Certification_Authority_-_EC1.pem 1013s Adding debian:Entrust_Root_Certification_Authority_-_G2.pem 1013s Adding debian:FIRMAPROFESIONAL_CA_ROOT-A_WEB.pem 1013s Adding debian:GDCA_TrustAUTH_R5_ROOT.pem 1013s Adding debian:GLOBALTRUST_2020.pem 1013s Adding debian:GTS_Root_R1.pem 1013s Adding debian:GTS_Root_R2.pem 1013s Adding debian:GTS_Root_R3.pem 1013s Adding debian:GTS_Root_R4.pem 1013s Adding debian:GlobalSign_ECC_Root_CA_-_R4.pem 1013s Adding debian:GlobalSign_ECC_Root_CA_-_R5.pem 1013s Adding debian:GlobalSign_Root_CA.pem 1013s Adding debian:GlobalSign_Root_CA_-_R3.pem 1013s Adding debian:GlobalSign_Root_CA_-_R6.pem 1013s Adding debian:GlobalSign_Root_E46.pem 1013s Adding debian:GlobalSign_Root_R46.pem 1013s Adding debian:Go_Daddy_Class_2_CA.pem 1013s Adding debian:Go_Daddy_Root_Certificate_Authority_-_G2.pem 1013s Adding debian:HARICA_TLS_ECC_Root_CA_2021.pem 1013s Adding debian:HARICA_TLS_RSA_Root_CA_2021.pem 1013s Adding debian:Hellenic_Academic_and_Research_Institutions_ECC_RootCA_2015.pem 1014s Adding debian:Hellenic_Academic_and_Research_Institutions_RootCA_2015.pem 1014s Adding debian:HiPKI_Root_CA_-_G1.pem 1014s Adding debian:Hongkong_Post_Root_CA_3.pem 1014s Adding debian:ISRG_Root_X1.pem 1014s Adding debian:ISRG_Root_X2.pem 1014s Adding debian:IdenTrust_Commercial_Root_CA_1.pem 1015s Adding debian:IdenTrust_Public_Sector_Root_CA_1.pem 1015s Adding debian:Izenpe.com.pem 1015s Adding debian:Microsec_e-Szigno_Root_CA_2009.pem 1015s Adding debian:Microsoft_ECC_Root_Certificate_Authority_2017.pem 1015s Adding debian:Microsoft_RSA_Root_Certificate_Authority_2017.pem 1015s Adding debian:NAVER_Global_Root_Certification_Authority.pem 1015s Adding debian:NetLock_Arany_=Class_Gold=_Főtanúsítvány.pem 1015s Adding debian:OISTE_WISeKey_Global_Root_GB_CA.pem 1015s Adding debian:OISTE_WISeKey_Global_Root_GC_CA.pem 1015s Adding debian:QuoVadis_Root_CA_1_G3.pem 1016s Adding debian:QuoVadis_Root_CA_2.pem 1016s Adding debian:QuoVadis_Root_CA_2_G3.pem 1016s Adding debian:QuoVadis_Root_CA_3.pem 1016s Adding debian:QuoVadis_Root_CA_3_G3.pem 1016s Adding debian:SSL.com_EV_Root_Certification_Authority_ECC.pem 1016s Adding debian:SSL.com_EV_Root_Certification_Authority_RSA_R2.pem 1016s Adding debian:SSL.com_Root_Certification_Authority_ECC.pem 1016s Adding debian:SSL.com_Root_Certification_Authority_RSA.pem 1016s Adding debian:SSL.com_TLS_ECC_Root_CA_2022.pem 1016s Adding debian:SSL.com_TLS_RSA_Root_CA_2022.pem 1016s Adding debian:SZAFIR_ROOT_CA2.pem 1016s Adding debian:Sectigo_Public_Server_Authentication_Root_E46.pem 1016s Adding debian:Sectigo_Public_Server_Authentication_Root_R46.pem 1016s Adding debian:SecureSign_Root_CA12.pem 1016s Adding debian:SecureSign_Root_CA14.pem 1016s Adding debian:SecureSign_Root_CA15.pem 1016s Adding debian:SecureTrust_CA.pem 1016s Adding debian:Secure_Global_CA.pem 1016s Adding debian:Security_Communication_ECC_RootCA1.pem 1016s Adding debian:Security_Communication_RootCA2.pem 1016s Adding debian:Starfield_Class_2_CA.pem 1016s Adding debian:Starfield_Root_Certificate_Authority_-_G2.pem 1016s Adding debian:Starfield_Services_Root_Certificate_Authority_-_G2.pem 1016s Adding debian:SwissSign_Gold_CA_-_G2.pem 1016s Adding debian:T-TeleSec_GlobalRoot_Class_2.pem 1016s Adding debian:T-TeleSec_GlobalRoot_Class_3.pem 1017s Adding debian:TUBITAK_Kamu_SM_SSL_Kok_Sertifikasi_-_Surum_1.pem 1017s Adding debian:TWCA_CYBER_Root_CA.pem 1017s Adding debian:TWCA_Global_Root_CA.pem 1017s Adding debian:TWCA_Root_Certification_Authority.pem 1017s Adding debian:Telekom_Security_TLS_ECC_Root_2020.pem 1017s Adding debian:Telekom_Security_TLS_RSA_Root_2023.pem 1017s Adding debian:TeliaSonera_Root_CA_v1.pem 1018s Adding debian:Telia_Root_CA_v2.pem 1018s Adding debian:TrustAsia_Global_Root_CA_G3.pem 1018s Adding debian:TrustAsia_Global_Root_CA_G4.pem 1018s Adding debian:Trustwave_Global_Certification_Authority.pem 1018s Adding debian:Trustwave_Global_ECC_P256_Certification_Authority.pem 1018s Adding debian:Trustwave_Global_ECC_P384_Certification_Authority.pem 1018s Adding debian:TunTrust_Root_CA.pem 1018s Adding debian:UCA_Extended_Validation_Root.pem 1018s Adding debian:UCA_Global_G2_Root.pem 1018s Adding debian:USERTrust_ECC_Certification_Authority.pem 1018s Adding debian:USERTrust_RSA_Certification_Authority.pem 1018s Adding debian:XRamp_Global_CA_Root.pem 1018s Adding debian:certSIGN_ROOT_CA.pem 1018s Adding debian:certSIGN_Root_CA_G2.pem 1018s Adding debian:e-Szigno_Root_CA_2017.pem 1018s Adding debian:ePKI_Root_Certification_Authority.pem 1018s Adding debian:emSign_ECC_Root_CA_-_C3.pem 1018s Adding debian:emSign_ECC_Root_CA_-_G3.pem 1018s Adding debian:emSign_Root_CA_-_C1.pem 1018s Adding debian:emSign_Root_CA_-_G1.pem 1018s Adding debian:vTrus_ECC_Root_CA.pem 1018s Adding debian:vTrus_Root_CA.pem 1018s done. 1018s Setting up default-jre-headless (2:1.21-76build1) ... 1018s Setting up jruby (9.4.8.0+ds-3ubuntu1) ... 1034s autopkgtest [07:42:12]: test jruby: [----------------------- 1036s installing concurrent-ruby-1.3.4 gem into temporary GEM_HOME for jruby ... 1037s installing concurrent-ruby-edge-0.7.1 gem into temporary GEM_HOME for jruby ... 1037s installing diff-lcs-1.5.1 gem into temporary GEM_HOME for jruby ... 1037s installing rspec-core-3.13.0 gem into temporary GEM_HOME for jruby ... 1037s installing rspec-expectations-3.13.0 gem into temporary GEM_HOME for jruby ... 1037s installing rspec-mocks-3.13.0 gem into temporary GEM_HOME for jruby ... 1037s installing rspec-support-3.13.1 gem into temporary GEM_HOME for jruby ... 1037s installing timecop-0.9.10 gem into temporary GEM_HOME for jruby ... 1081s /usr/share/jruby/lib/ruby/stdlib/rubygems/core_ext/kernel_require.rb:85: warning: loading in progress, circular require considered harmful - /usr/share/rubygems-integration/all/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/options.rb require at org/jruby/RubyKernel.java:1184 1081s require at /usr/share/jruby/lib/ruby/stdlib/rubygems/core_ext/kernel_require.rb:85 1081s at /usr/share/rubygems-integration/all/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/options.rb:6 1081s
at /usr/share/rubygems-integration/all/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/options.rb:3 1081s require at org/jruby/RubyKernel.java:1184 1081s require at /usr/share/jruby/lib/ruby/stdlib/rubygems/core_ext/kernel_require.rb:85 1081s
at /usr/share/rubygems-integration/all/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/scheduled_task.rb:8 1081s require at org/jruby/RubyKernel.java:1184 1081s require at /usr/share/jruby/lib/ruby/stdlib/rubygems/core_ext/kernel_require.rb:85 1081s
at /usr/share/rubygems-integration/all/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/executor/timer_set.rb:1 1081s require at org/jruby/RubyKernel.java:1184 1081s require at /usr/share/jruby/lib/ruby/stdlib/rubygems/core_ext/kernel_require.rb:85 1081s
at /usr/share/rubygems-integration/all/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/executors.rb:20 1081s require at org/jruby/RubyKernel.java:1184 1081s require at /usr/share/jruby/lib/ruby/stdlib/rubygems/core_ext/kernel_require.rb:85 1081s
at /usr/share/rubygems-integration/all/gems/concurrent-ruby-edge-0.7.1/lib/concurrent-ruby-edge/concurrent/actor/core.rb:4 1081s require at org/jruby/RubyKernel.java:1184 1081s require at /usr/share/jruby/lib/ruby/stdlib/rubygems/core_ext/kernel_require.rb:85 1081s at /usr/share/rubygems-integration/all/gems/concurrent-ruby-edge-0.7.1/lib/concurrent-ruby-edge/concurrent/actor.rb:25 1081s at /usr/share/rubygems-integration/all/gems/concurrent-ruby-edge-0.7.1/lib/concurrent-ruby-edge/concurrent/actor.rb:17 1081s
at /usr/share/rubygems-integration/all/gems/concurrent-ruby-edge-0.7.1/lib/concurrent-ruby-edge/concurrent/actor.rb:7 1081s require at org/jruby/RubyKernel.java:1184 1081s require at /usr/share/jruby/lib/ruby/stdlib/rubygems/core_ext/kernel_require.rb:160 1081s
at /tmp/autopkgtest.HpvjbB/build.Cej/src/spec/concurrent/actor_spec.rb:1 1081s load at org/jruby/RubyKernel.java:1220 1081s load_file_handling_errors at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/configuration.rb:2138 1081s load_spec_files at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/configuration.rb:1638 1081s each at org/jruby/RubyArray.java:1981 1081s load_spec_files at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/configuration.rb:1636 1081s setup at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:102 1081s run at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:86 1081s run at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:71 1081s invoke at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:45 1081s
at /usr/bin/rspec:4 1081s 1081s /usr/share/jruby/lib/ruby/stdlib/rubygems/core_ext/kernel_require.rb:85: warning: loading in progress, circular require considered harmful - /usr/share/rubygems-integration/all/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/executor/timer_set.rb require at org/jruby/RubyKernel.java:1184 1081s require at /usr/share/jruby/lib/ruby/stdlib/rubygems/core_ext/kernel_require.rb:85 1081s at /usr/share/rubygems-integration/all/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/executor/timer_set.rb:19 1081s
at /usr/share/rubygems-integration/all/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/executor/timer_set.rb:9 1081s require at org/jruby/RubyKernel.java:1184 1081s require at /usr/share/jruby/lib/ruby/stdlib/rubygems/core_ext/kernel_require.rb:85 1081s
at /usr/share/rubygems-integration/all/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/executors.rb:20 1081s require at org/jruby/RubyKernel.java:1184 1081s require at /usr/share/jruby/lib/ruby/stdlib/rubygems/core_ext/kernel_require.rb:85 1081s
at /usr/share/rubygems-integration/all/gems/concurrent-ruby-edge-0.7.1/lib/concurrent-ruby-edge/concurrent/actor/core.rb:4 1081s require at org/jruby/RubyKernel.java:1184 1081s require at /usr/share/jruby/lib/ruby/stdlib/rubygems/core_ext/kernel_require.rb:85 1081s at /usr/share/rubygems-integration/all/gems/concurrent-ruby-edge-0.7.1/lib/concurrent-ruby-edge/concurrent/actor.rb:25 1081s at /usr/share/rubygems-integration/all/gems/concurrent-ruby-edge-0.7.1/lib/concurrent-ruby-edge/concurrent/actor.rb:17 1081s
at /usr/share/rubygems-integration/all/gems/concurrent-ruby-edge-0.7.1/lib/concurrent-ruby-edge/concurrent/actor.rb:7 1081s require at org/jruby/RubyKernel.java:1184 1081s require at /usr/share/jruby/lib/ruby/stdlib/rubygems/core_ext/kernel_require.rb:160 1081s
at /tmp/autopkgtest.HpvjbB/build.Cej/src/spec/concurrent/actor_spec.rb:1 1081s load at org/jruby/RubyKernel.java:1220 1081s load_file_handling_errors at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/configuration.rb:2138 1081s load_spec_files at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/configuration.rb:1638 1081s each at org/jruby/RubyArray.java:1981 1081s load_spec_files at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/configuration.rb:1636 1081s setup at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:102 1081s run at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:86 1081s run at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:71 1081s invoke at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:45 1081s
at /usr/bin/rspec:4 1081s 1108s /usr/share/jruby/lib/ruby/stdlib/date.rb:471: warning: previous definition of strptime was here 1108s /usr/share/jruby/lib/ruby/stdlib/date.rb:490: warning: previous definition of parse was here 1108s /usr/share/jruby/lib/ruby/stdlib/date.rb:737: warning: previous definition of parse was here 1115s Run options: exclude {:stress=>true} 1118s 1118s Concurrent::Actor 1118s /usr/share/jruby/lib/ruby/stdlib/rubygems/core_ext/kernel_require.rb:85: warning: loading in progress, circular require considered harmful - /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/matchers/built_in/be.rb require at org/jruby/RubyKernel.java:1184 1118s require at /usr/share/jruby/lib/ruby/stdlib/rubygems/core_ext/kernel_require.rb:85 1118s at /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/matchers/built_in/be.rb:30 1118s at /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/matchers/built_in/be.rb:3 1118s at /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/matchers/built_in/be.rb:2 1118s
at /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/matchers/built_in/be.rb:1 1118s require at org/jruby/RubyKernel.java:1184 1118s require at /usr/share/jruby/lib/ruby/stdlib/rubygems/core_ext/kernel_require.rb:85 1118s be_truthy at /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/matchers.rb:311 1118s
at /tmp/autopkgtest.HpvjbB/build.Cej/src/spec/spec_helper.rb:50 1118s instance_exec at org/jruby/RubyBasicObject.java:2620 1118s instance_exec at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:457 1118s run at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:365 1118s run_owned_hooks_for at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:529 1118s each at org/jruby/RubyArray.java:1981 1118s run_owned_hooks_for at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:528 1118s run_example_hooks_for at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:615 1118s reverse_each at org/jruby/RubyArray.java:2063 1118s run_example_hooks_for at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:614 1118s run at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:484 1118s run_before_example at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:505 1118s run at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:261 1118s with_around_and_singleton_context_hooks at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:511 1118s with_around_example_hooks at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:468 1118s run at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:486 1118s run_around_example_hooks_for at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:624 1118s run at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:486 1118s with_around_example_hooks at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:468 1118s with_around_and_singleton_context_hooks at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:511 1118s run at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:259 1118s run_examples at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:646 1118s map at org/jruby/RubyArray.java:2803 1118s run_examples at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:651 1118s run at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:607 1118s run_specs at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:121 1118s map at org/jruby/RubyArray.java:2803 1118s run_specs at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:121 1118s with_suite_hooks at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/configuration.rb:2091 1118s run_specs at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:116 1118s report at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/reporter.rb:74 1118s run_specs at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:115 1118s run at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:89 1118s run at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:71 1118s invoke at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:45 1118s
at /usr/bin/rspec:4 1118s 1118s /usr/share/jruby/lib/ruby/stdlib/rubygems/core_ext/kernel_require.rb:85: warning: loading in progress, circular require considered harmful - /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/matchers/built_in/be.rb require at org/jruby/RubyKernel.java:1184 1118s require at /usr/share/jruby/lib/ruby/stdlib/rubygems/core_ext/kernel_require.rb:85 1118s at /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/matchers/built_in/be.rb:53 1118s at /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/matchers/built_in/be.rb:3 1118s at /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/matchers/built_in/be.rb:2 1118s
at /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/matchers/built_in/be.rb:1 1118s require at org/jruby/RubyKernel.java:1184 1118s require at /usr/share/jruby/lib/ruby/stdlib/rubygems/core_ext/kernel_require.rb:85 1118s be_truthy at /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/matchers.rb:311 1118s
at /tmp/autopkgtest.HpvjbB/build.Cej/src/spec/spec_helper.rb:50 1118s instance_exec at org/jruby/RubyBasicObject.java:2620 1118s instance_exec at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:457 1118s run at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:365 1118s run_owned_hooks_for at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:529 1118s each at org/jruby/RubyArray.java:1981 1118s run_owned_hooks_for at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:528 1118s run_example_hooks_for at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:615 1118s reverse_each at org/jruby/RubyArray.java:2063 1118s run_example_hooks_for at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:614 1118s run at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:484 1118s run_before_example at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:505 1118s run at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:261 1118s with_around_and_singleton_context_hooks at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:511 1118s with_around_example_hooks at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:468 1118s run at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:486 1118s run_around_example_hooks_for at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:624 1118s run at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:486 1118s with_around_example_hooks at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:468 1118s with_around_and_singleton_context_hooks at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:511 1118s run at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:259 1118s run_examples at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:646 1118s map at org/jruby/RubyArray.java:2803 1118s run_examples at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:651 1118s run at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:607 1118s run_specs at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:121 1118s map at org/jruby/RubyArray.java:2803 1118s run_specs at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:121 1118s with_suite_hooks at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/configuration.rb:2091 1118s run_specs at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:116 1118s report at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/reporter.rb:74 1118s run_specs at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:115 1118s run at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:89 1118s run at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:71 1118s invoke at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:45 1118s
at /usr/bin/rspec:4 1118s 1118s /usr/share/jruby/lib/ruby/stdlib/rubygems/core_ext/kernel_require.rb:85: warning: loading in progress, circular require considered harmful - /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/matchers/built_in/be.rb require at org/jruby/RubyKernel.java:1184 1118s require at /usr/share/jruby/lib/ruby/stdlib/rubygems/core_ext/kernel_require.rb:85 1118s at /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/matchers/built_in/be.rb:74 1118s at /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/matchers/built_in/be.rb:3 1118s at /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/matchers/built_in/be.rb:2 1118s
at /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/matchers/built_in/be.rb:1 1118s require at org/jruby/RubyKernel.java:1184 1118s require at /usr/share/jruby/lib/ruby/stdlib/rubygems/core_ext/kernel_require.rb:85 1118s be_truthy at /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/matchers.rb:311 1118s
at /tmp/autopkgtest.HpvjbB/build.Cej/src/spec/spec_helper.rb:50 1118s instance_exec at org/jruby/RubyBasicObject.java:2620 1118s instance_exec at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:457 1118s run at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:365 1118s run_owned_hooks_for at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:529 1118s each at org/jruby/RubyArray.java:1981 1118s run_owned_hooks_for at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:528 1118s run_example_hooks_for at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:615 1118s reverse_each at org/jruby/RubyArray.java:2063 1118s run_example_hooks_for at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:614 1118s run at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:484 1118s run_before_example at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:505 1118s run at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:261 1118s with_around_and_singleton_context_hooks at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:511 1118s with_around_example_hooks at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:468 1118s run at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:486 1118s run_around_example_hooks_for at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:624 1118s run at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:486 1118s with_around_example_hooks at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:468 1118s with_around_and_singleton_context_hooks at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:511 1118s run at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:259 1118s run_examples at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:646 1118s map at org/jruby/RubyArray.java:2803 1118s run_examples at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:651 1118s run at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:607 1118s run_specs at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:121 1118s map at org/jruby/RubyArray.java:2803 1118s run_specs at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:121 1118s with_suite_hooks at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/configuration.rb:2091 1118s run_specs at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:116 1118s report at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/reporter.rb:74 1118s run_specs at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:115 1118s run at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:89 1118s run at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:71 1118s invoke at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:45 1118s
at /usr/bin/rspec:4 1118s 1118s /usr/share/jruby/lib/ruby/stdlib/rubygems/core_ext/kernel_require.rb:85: warning: loading in progress, circular require considered harmful - /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/matchers/built_in/be.rb require at org/jruby/RubyKernel.java:1184 1118s require at /usr/share/jruby/lib/ruby/stdlib/rubygems/core_ext/kernel_require.rb:85 1118s at /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/matchers/built_in/be.rb:101 1118s at /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/matchers/built_in/be.rb:3 1118s at /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/matchers/built_in/be.rb:2 1118s
at /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/matchers/built_in/be.rb:1 1118s require at org/jruby/RubyKernel.java:1184 1118s require at /usr/share/jruby/lib/ruby/stdlib/rubygems/core_ext/kernel_require.rb:85 1118s be_truthy at /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/matchers.rb:311 1118s
at /tmp/autopkgtest.HpvjbB/build.Cej/src/spec/spec_helper.rb:50 1118s instance_exec at org/jruby/RubyBasicObject.java:2620 1118s instance_exec at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:457 1118s run at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:365 1118s run_owned_hooks_for at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:529 1118s each at org/jruby/RubyArray.java:1981 1118s run_owned_hooks_for at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:528 1118s run_example_hooks_for at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:615 1118s reverse_each at org/jruby/RubyArray.java:2063 1118s run_example_hooks_for at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:614 1118s run at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:484 1118s run_before_example at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:505 1118s run at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:261 1118s with_around_and_singleton_context_hooks at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:511 1118s with_around_example_hooks at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:468 1118s run at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:486 1118s run_around_example_hooks_for at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:624 1118s run at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:486 1118s with_around_example_hooks at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:468 1118s with_around_and_singleton_context_hooks at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:511 1118s run at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:259 1118s run_examples at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:646 1118s map at org/jruby/RubyArray.java:2803 1118s run_examples at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:651 1118s run at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:607 1118s run_specs at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:121 1118s map at org/jruby/RubyArray.java:2803 1118s run_specs at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:121 1118s with_suite_hooks at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/configuration.rb:2091 1118s run_specs at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:116 1118s report at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/reporter.rb:74 1118s run_specs at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:115 1118s run at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:89 1118s run at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:71 1118s invoke at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:45 1118s
at /usr/bin/rspec:4 1118s 1118s /usr/share/jruby/lib/ruby/stdlib/rubygems/core_ext/kernel_require.rb:85: warning: loading in progress, circular require considered harmful - /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/matchers/built_in/be.rb require at org/jruby/RubyKernel.java:1184 1118s require at /usr/share/jruby/lib/ruby/stdlib/rubygems/core_ext/kernel_require.rb:85 1118s at /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/matchers/built_in/be.rb:136 1118s at /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/matchers/built_in/be.rb:3 1118s at /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/matchers/built_in/be.rb:2 1118s
at /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/matchers/built_in/be.rb:1 1118s require at org/jruby/RubyKernel.java:1184 1118s require at /usr/share/jruby/lib/ruby/stdlib/rubygems/core_ext/kernel_require.rb:85 1118s be_truthy at /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/matchers.rb:311 1118s
at /tmp/autopkgtest.HpvjbB/build.Cej/src/spec/spec_helper.rb:50 1118s instance_exec at org/jruby/RubyBasicObject.java:2620 1118s instance_exec at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:457 1118s run at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:365 1118s run_owned_hooks_for at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:529 1118s each at org/jruby/RubyArray.java:1981 1118s run_owned_hooks_for at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:528 1118s run_example_hooks_for at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:615 1118s reverse_each at org/jruby/RubyArray.java:2063 1118s run_example_hooks_for at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:614 1118s run at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:484 1118s run_before_example at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:505 1118s run at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:261 1118s with_around_and_singleton_context_hooks at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:511 1118s with_around_example_hooks at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:468 1118s run at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:486 1118s run_around_example_hooks_for at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:624 1118s run at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:486 1118s with_around_example_hooks at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:468 1118s with_around_and_singleton_context_hooks at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:511 1118s run at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:259 1118s run_examples at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:646 1118s map at org/jruby/RubyArray.java:2803 1118s run_examples at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:651 1118s run at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:607 1118s run_specs at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:121 1118s map at org/jruby/RubyArray.java:2803 1118s run_specs at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:121 1118s with_suite_hooks at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/configuration.rb:2091 1118s run_specs at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:116 1118s report at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/reporter.rb:74 1118s run_specs at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:115 1118s run at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:89 1118s run at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:71 1118s invoke at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:45 1118s
at /usr/bin/rspec:4 1118s 1119s forbids Immediate executor 1119s links 1119s links atomically 1119s spawning 1119s terminates on failed initialization 1119s terminates on failed initialization and raises with spawn! 1119s terminates on failed message processing 1119s Actor#spawn! 1119s spawn 1120s executor should be global 1121s returns arg 1121s #path 1121s is expected to eq "/ping" 1121s #parent 1121s is expected to eq # 1121s #name 1122s is expected to eq "ping" 1122s #reference 1122s is expected to eq # 1123s context_spawn 1123s executor should be global 1123s returns arg 1123s #path 1123s is expected to eq "/ping" 1123s #parent 1123s is expected to eq # 1123s #name 1123s is expected to eq "ping" 1123s #reference 1123s is expected to eq # 1123s spawn_by_hash 1123s executor should be global 1124s returns arg 1124s #path 1124s is expected to eq "/ping" 1124s #parent 1124s is expected to eq # 1124s #name 1124s is expected to eq "ping" 1124s #reference 1124s is expected to eq # 1124s context_spawn_by_hash 1124s executor should be global 1126s returns arg 1126s #path 1126s is expected to eq "/ping" 1126s #parent 1126s is expected to eq # 1126s #name 1126s is expected to eq "ping" 1126s #reference 1126s is expected to eq # 1126s messaging 1126s is expected to eq 4 1126s children 1127s has children set after a child is created 1127s envelope 1127s /usr/share/jruby/lib/ruby/stdlib/rubygems/core_ext/kernel_require.rb:85: warning: loading in progress, circular require considered harmful - /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/matchers/built_in/has.rb require at org/jruby/RubyKernel.java:1184 1127s require at /usr/share/jruby/lib/ruby/stdlib/rubygems/core_ext/kernel_require.rb:85 1127s at /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/matchers/built_in/has.rb:125 1127s at /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/matchers/built_in/has.rb:3 1127s at /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/matchers/built_in/has.rb:2 1127s
at /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/matchers/built_in/has.rb:1 1127s require at org/jruby/RubyKernel.java:1184 1127s require at /usr/share/jruby/lib/ruby/stdlib/rubygems/core_ext/kernel_require.rb:85 1127s method_missing at /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/matchers.rb:964 1127s method_missing at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:767 1127s Actor at /tmp/autopkgtest.HpvjbB/build.Cej/src/spec/concurrent/actor_spec.rb:136 1127s instance_exec at org/jruby/RubyBasicObject.java:2620 1127s run at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:263 1127s with_around_and_singleton_context_hooks at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:511 1127s with_around_example_hooks at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:468 1127s run at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:486 1127s run_around_example_hooks_for at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:624 1127s run at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:486 1127s with_around_example_hooks at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:468 1127s with_around_and_singleton_context_hooks at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:511 1127s run at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:259 1127s run_examples at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:646 1127s map at org/jruby/RubyArray.java:2803 1127s run_examples at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:651 1127s run at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:607 1127s run at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608 1127s map at org/jruby/RubyArray.java:2803 1127s run at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608 1127s run_specs at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:121 1127s map at org/jruby/RubyArray.java:2803 1127s run_specs at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:121 1127s with_suite_hooks at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/configuration.rb:2091 1127s run_specs at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:116 1127s report at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/reporter.rb:74 1127s run_specs at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:115 1127s run at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:89 1127s run at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:71 1127s invoke at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:45 1127s
at /usr/bin/rspec:4 1127s 1127s is expected to eq # 1127s termination 1127s terminates with all its children 1127s dead letter routing 1127s logs by deafault 1127s message redirecting 1127s is evaluated by child 1127s pausing 1127s pauses on error and resumes 1128s pauses on error and resets 1128s pauses on error and restarts 1128s pool 1129s supports asks 1129s 1129s Concurrent::Agent 1129s initialization 1130s sets the initial value 1130s sets the initial error to nil 1130s sets the error mode when given a valid value 1130s defaults the error mode to :continue when an error handler is given 1130s defaults the error mode to :fail when no error handler is given 1130s raises an error when given an invalid error mode 1130s sets #failed? to false 1130s action processing 1130s the given block will be passed the current value 1130s the given block will be passed any provided arguments 1130s the return value will be passed to the validator function 1130s upon validation the new value will be set to the block return value 1130s on success all observers will be notified 1131s any recursive action dispatches will run after the value has been updated 1131s when the action raises an error the value will not change 1131s when the action raises an error the validator will not be called 1131s when validation returns false the value will not change 1131s when validation raises an error the value will not change 1132s when the action raises an error the handler will be called 1132s when validation fails the handler will be called 1132s when validation raises an error the handler will be called 1132s validation 1132s sets the new value when the validator returns true 1132s rejects the new value when the validator returns false 1132s rejects the new value when the validator raises an error 1132s sets the error when the error mode is :fail and the validator returns false 1132s sets the error when the error mode is :fail and the validator raises an error 1132s does not set an error when the error mode is :continue and the validator returns false 1132s does not set an error when the error mode is :continue and the validator raises an error 1132s does not trigger observation when validation fails 1132s error handling 1132s the agent will be passed to the handler 1132s the exception will be passed to the handler 1132s does not trigger observation 1132s error mode 1132s :continue 1132s does not set an error when the validator returns false 1132s does not set an error when the validator raises an error 1132s does not set an error when the action raises an error 1132s does not block further action processing 1132s sets #failed? to false 1132s :fail 1132s sets the error when the validator returns false 1132s sets the error when the validator raises an error 1132s sets the error when the action raises an error 1133s blocks all further action processing until a restart 1133s sets #failed? to true 1133s nested actions 1133s occur in the order they ar post 1133s work with immediate execution 1133s posting 1133s with #send 1133s returns true when the job is post 1133s returns false when #failed? 1133s posts to the global fast executor 1133s does not wait for the action to process 1133s with #send! 1133s returns true when the job is post 1133s raises an error when #failed? 1134s posts to the global fast executor 1134s does not wait for the action to process 1134s with #send_off 1134s returns true when the job is post 1134s returns false when #failed? 1134s posts to the global io executor 1134s does not wait for the action to process 1134s with #send_off! 1134s returns true when the job is post 1135s raises an error when #failed? 1135s posts to the global io executor 1135s does not wait for the action to process 1135s with #send_via 1135s returns true when the job is post 1135s returns false when #failed? 1135s posts to the given executor 1135s with #send_via! 1135s returns true when the job is post 1135s raises an error when #failed? 1135s posts to the given executor 1135s with #post 1135s returns true when the job is post 1135s returns false when #failed? 1135s posts to the global io executor 1135s does not wait for the action to process 1135s with #<< 1135s returns self when the job is post 1135s returns self when #failed? 1135s posts to the global io executor 1135s does not wait for the action to process 1135s #restart 1136s when #failed? 1136s raises an error if the new value is not valid 1136s sets the new value 1136s clears the error 1136s sets #failed? to true 1137s removes all actions from the queue when :clear_actions is true 1137s does not clear the action queue when :clear_actions is false 1138s does not clear the action queue when :clear_actions is not given 1138s resumes action processing if actions are enqueued 1138s does not trigger observation 1138s when not #failed? 1138s raises an error 1138s waiting 1138s the await job 1139s does not change the value 1139s does not trigger the error mode 1139s does not trigger observers 1140s waits for nested actions 1140s with #await 1140s returns self when there are no pending actions 1140s does not block on actions from other threads 1141s blocks indefinitely 1142s returns true when all prior actions have processed 1142s blocks forever if restarted with :clear_actions true (PENDING: the timing is nearly impossible) 1142s with #await_for 1142s returns true when there are no pending actions 1142s does not block on actions from other threads 1144s returns true when all prior actions have processed 1145s returns false on timeout 1145s returns false if restarted with :clear_actions true (PENDING: the timing is nearly impossible) 1145s with #await_for! 1145s returns true when there are no pending actions 1145s does not block on actions from other threads 1146s returns true when all prior actions have processed 1147s raises an error on timeout 1148s raises an error if restarted with :clear_actions true (PENDING: the timing is nearly impossible) 1148s with #wait 1148s returns true when there are no pending actions and timeout is nil 1148s returns true when there are no pending actions and a timeout is given 1148s does not block on actions from other threads 1149s blocks indefinitely when timeout is nil 1149s blocks forever when timeout is nil and restarted with :clear_actions true (PENDING: the timing is nearly impossible) 1150s returns true when all prior actions have processed 1151s returns false on timeout 1151s returns false when timeout is given and restarted with :clear_actions true (PENDING: the timing is nearly impossible) 1151s with .await 1151s returns true when all prior actions on all agents have processed 1151s with .await_for 1151s returns true when there are no pending actions 1151s returns true when all prior actions for all agents have processed 1152s returns false on timeout 1152s with await_for! 1152s returns true when there are no pending actions 1153s returns true when all prior actions for all agents have processed 1154s raises an exception on timeout 1154s observable 1154s behaves like observable 1154s #add_observer 1154s adds an observer if called before first notification 1154s adds an observer with :func if called before first notification 1154s creates an observer from a block if called before first notification 1154s raises an exception if not given an observer or a block 1154s raises an exception when given both an observer and a block 1154s #delete_observer 1154s deletes the given observer if called before first notification 1154s returns the removed observer if found in the observer set 1154s returns the given observer even when not found in the observer set 1154s #delete_observers 1154s deletes all observers when called before first notification 1154s returns self 1154s #count_observers 1154s returns zero for a new observable object 1154s returns a count of registered observers if called before first notification 1154s returns zero after #delete_observers has been called 1154s first notification 1154s calls the #update method on all observers without a specified :func 1154s calls the appropriate function on all observers which specified a :func 1154s calls the proc for all observers added as a block 1155s does not notify any observers removed with #delete_observer 1157s does not notify any observers after #delete_observers called 1157s 1157s Concurrent::Array 1157s .[] 1157s when initializing with no arguments 1157s is expected to be empty 1157s when initializing with arguments 1157s creates an array with the given objects 1157s .new 1157s when initializing with no arguments 1157s is expected to be empty 1157s when initializing with a size argument 1157s creates an array with size elements set to nil 1157s when initializing with a default value argument 1157s creates an array with size elements set to the default value 1157s when initializing with a block argument 1157s creates an array with size elements set to the default value 1157s when initializing with another array as an argument 1157s creates a new array 1157s creates an array with the same contents as the other array 1157s creates an array with the results of calling #to_ary on the other array 1157s concurrency 1158s is expected to be empty 1158s #slice 1158s correctly initializes the monitor 1158s 1158s Concurrent::Async 1158s object creation 1159s delegates to the original constructor 1159s passes all args to the original constructor 1159s passes a given block to the original constructor 1159s initializes synchronization 1159s #validate_argc 1159s raises an exception when the method is not defined 1159s raises an exception for too many args on a zero arity method 1159s does not raise an exception for correct zero arity 1159s raises an exception for too many args on a method with positive arity 1159s raises an exception for too few args on a method with positive arity 1159s does not raise an exception for correct positive arity 1159s raises an exception for too few args on a method with negative arity 1159s does not raise an exception for correct negative arity 1159s #async 1159s raises an error when calling a method that does not exist 1159s raises an error when passing too few arguments 1159s raises an error when pasing too many arguments (arity >= 0) 1159s returns the existence of the method 1159s returns a :pending IVar 1159s runs the future on the global executor 1159s sets the value on success 1159s sets the reason on failure 1159s sets the reason when giving too many optional arguments 1159s supports attribute accessors 1160s supports methods with blocks 1160s #await 1160s raises an error when calling a method that does not exist 1160s raises an error when passing too few arguments 1160s raises an error when pasing too many arguments (arity >= 0) 1160s returns the existence of the method 1160s returns a :fulfilled IVar 1160s runs the future on the global executor 1160s sets the value on success 1160s sets the reason on failure 1160s sets the reason when giving too many optional arguments 1160s supports attribute accessors 1160s supports methods with blocks 1160s locking 1160s uses the same lock for both #async and #await 1160s fork safety 1160s does not hang when forked (PENDING: Platform does not support fork) 1160s 1160s Concurrent::Atom 1160s construction 1160s sets the initial value to the given value 1160s #compare_and_set 1160s sets the new value if the current value matches 1160s returns true if the current value matches 1160s rejects the new value if the current value does not match 1160s returns false if the current value does not match 1160s rejects the new value if the validator returns false 1160s rejects the new value if the validator raises an exception 1160s returns false if the validator returns false 1160s returns false if the validator raises an exception 1160s #swap 1160s raises an exception when no block is given 1160s passes the current value to the block 1160s passes all arguments to the block 1160s sets the new value to the result of the block 1160s rejects the new value if the validator returns false 1160s rejects the new value if the validator raises an exception 1160s returns the new value on success 1160s returns the old value if the validator returns false 1161s returns the old value if the validator raises an exception 1161s calls the block more than once if the value changes underneath 1161s reraises the exception from block 1161s #reset 1161s sets the new value 1161s returns the new value on success 1161s returns the new value on success 1161s returns the old value if the validator returns false 1161s returns the old value if the validator raises an exception 1161s observable 1161s behaves like observable 1161s #add_observer 1161s adds an observer if called before first notification 1161s adds an observer with :func if called before first notification 1161s creates an observer from a block if called before first notification 1161s raises an exception if not given an observer or a block 1161s raises an exception when given both an observer and a block 1161s #delete_observer 1161s deletes the given observer if called before first notification 1161s returns the removed observer if found in the observer set 1161s returns the given observer even when not found in the observer set 1161s #delete_observers 1161s deletes all observers when called before first notification 1161s returns self 1161s #count_observers 1161s returns zero for a new observable object 1161s returns a count of registered observers if called before first notification 1161s returns zero after #delete_observers has been called 1161s first notification 1161s calls the #update method on all observers without a specified :func 1161s calls the appropriate function on all observers which specified a :func 1161s calls the proc for all observers added as a block 1162s does not notify any observers removed with #delete_observer 1163s does not notify any observers after #delete_observers called 1164s 1164s Concurrent::MutexAtomicBoolean 1164s it should behave like atomic_boolean 1164s construction 1164s sets the initial value 1164s defaults the initial value to false 1164s evaluates the truthiness of a true value 1164s evaluates the truthiness of a false value 1164s #value 1164s returns the current value 1164s #value= 1164s sets the #value to the given `Boolean` 1164s returns the new value 1164s evaluates the truthiness of a true value 1164s evaluates the truthiness of a false value 1164s #true? 1164s is expected to equal true 1164s is expected to equal false 1164s #false? 1164s is expected to equal false 1164s is expected to equal true 1164s #make_true 1164s makes a false value true and returns true 1164s keeps a true value true and returns false 1164s #make_false 1164s makes a true value false and returns true 1164s keeps a false value false and returns false 1164s instance methods 1164s value is synchronized 1164s value= is synchronized 1164s true? is synchronized 1164s false? is synchronized 1164s make_true is synchronized 1164s make_false is synchronized 1164s 1164s Concurrent::JavaAtomicBoolean 1164s it should behave like atomic_boolean 1164s construction 1164s sets the initial value 1164s defaults the initial value to false 1164s evaluates the truthiness of a true value 1164s evaluates the truthiness of a false value 1164s #value 1164s returns the current value 1164s #value= 1164s sets the #value to the given `Boolean` 1164s returns the new value 1164s evaluates the truthiness of a true value 1164s evaluates the truthiness of a false value 1164s #true? 1164s is expected to equal true 1164s is expected to equal false 1164s #false? 1164s is expected to equal false 1164s is expected to equal true 1164s #make_true 1164s makes a false value true and returns true 1164s keeps a true value true and returns false 1164s #make_false 1164s makes a true value false and returns true 1164s keeps a false value false and returns false 1164s 1164s Concurrent::AtomicBoolean 1164s does not load the C extension 1164s inherits from JavaAtomicBoolean 1164s #to_s and #inspect 1164s includes the value 1164s 1164s Concurrent::MutexAtomicFixnum 1164s it should behave like atomic_fixnum 1164s construction 1164s sets the initial value 1164s defaults the initial value to zero 1164s raises an exception if the initial value is not a Fixnum 1164s #value 1164s returns the current value 1164s #value= 1164s sets the #value to the given `Fixnum` 1164s returns the new value 1164s raises and exception if the value is not a `Fixnum` 1164s #increment 1164s increases the value by one when no argument is given 1164s returns the new value when no argument is given 1164s increases the value by the given argument 1164s returns the new value the given argument 1164s is aliased as #up 1164s #decrement 1164s decreases the value by one when no argument is given 1164s returns the new value when no argument is given 1164s decreases the value by the given argument 1164s returns the new value the given argument 1164s is aliased as #down 1164s #compare_and_set 1164s returns false if the value is not found 1164s returns true if the value is found 1164s sets if the value is found 1164s does not set if the value is not found 1164s #update 1164s passes the current value to the block 1164s atomically sets the value to the return value from the block 1164s returns the new value 1164s construction 1164s raises an exception if the initial value is too big 1164s raises an exception if the initial value is too small 1164s instance methods 1164s value is synchronized 1164s value= is synchronized 1165s increment is synchronized 1165s decrement is synchronized 1165s compare_and_set is synchronized 1165s 1165s Concurrent::JavaAtomicFixnum 1165s it should behave like atomic_fixnum 1165s construction 1165s sets the initial value 1165s defaults the initial value to zero 1165s raises an exception if the initial value is not a Fixnum 1165s #value 1165s returns the current value 1165s #value= 1165s sets the #value to the given `Fixnum` 1165s returns the new value 1165s raises and exception if the value is not a `Fixnum` 1165s #increment 1165s increases the value by one when no argument is given 1165s returns the new value when no argument is given 1165s increases the value by the given argument 1165s returns the new value the given argument 1165s is aliased as #up 1165s #decrement 1165s decreases the value by one when no argument is given 1165s returns the new value when no argument is given 1165s decreases the value by the given argument 1165s returns the new value the given argument 1165s is aliased as #down 1165s #compare_and_set 1165s returns false if the value is not found 1165s returns true if the value is found 1165s sets if the value is found 1165s does not set if the value is not found 1165s #update 1165s passes the current value to the block 1165s atomically sets the value to the return value from the block 1165s returns the new value 1165s 1165s Concurrent::AtomicFixnum 1165s does not load the C extension 1165s inherits from JavaAtomicFixnum 1165s #to_s and #inspect 1165s includes the value 1165s 1165s Concurrent::AtomicMarkableReference 1165s .initialize 1165s constructs the object 1165s has sane defaults 1165s #set 1165s sets the value and mark 1165s #try_update! 1165s updates the value and mark 1165s raises ConcurrentUpdateError when attempting to set inside of block 1165s #try_update 1165s updates the value and mark 1165s returns nil when attempting to set inside of block 1166s #update 1166s updates the value and mark 1166s retries until update succeeds 1166s #compare_and_set 1166s when objects have the same identity 1166s sets the value and mark 1166s when objects have the different identity 1166s it does not set the value or mark 1166s when comparing Numeric objects 1166s Non-idepotent Float 1166s sets the value and mark 1166s BigNum 1166s sets the value and mark 1166s Rational 1166s sets the value and mark 1166s Rational 1166s is successful 1166s 1166s Concurrent::AtomicReference 1166s it should behave like atomic_reference 1166s test_construct 1166s test_value 1166s test_update 1166s test_try_update 1166s test_try_update_bang 1166s test_swap 1166s test_try_update_fails 1166s test_try_update_bang_fails 1166s test_update_retries 1166s test_numeric_cas 1166s #to_s and #inspect 1166s includes the value 1166s 1166s Concurrent::MutexAtomicReference 1166s it should behave like atomic_reference 1166s test_construct 1166s test_value 1166s test_update 1166s test_try_update 1166s test_try_update_bang 1166s test_swap 1166s test_try_update_fails 1166s test_try_update_bang_fails 1166s test_update_retries 1166s test_numeric_cas 1166s 1166s Concurrent::JavaAtomicReference 1166s it should behave like atomic_reference 1166s test_construct 1166s test_value 1166s test_update 1166s test_try_update 1166s test_try_update_bang 1166s test_swap 1166s test_try_update_fails 1166s test_try_update_bang_fails 1166s test_update_retries 1166s test_numeric_cas 1166s 1166s Concurrent::AtomicReference 1166s does not load the C extension 1166s inherits from JavaAtomicReference 1166s 1166s Concurrent::MutexCountDownLatch 1166s it should behave like count_down_latch 1166s #initialize 1166s raises an exception if the initial count is less than zero 1166s raises an exception if the initial count is not an integer 1166s defaults the count to 1 1166s #count 1166s should be the value passed to the constructor 1166s should be decreased after every count down 1166s should not go below zero 1166s #wait 1166s blocks indefinitely, and is kill-able 1167s blocks indefinitely with timeout, and is kill-able 1167s count set to zero 1167s should return true immediately 1167s should return true immediately with timeout 1167s non zero count 1167s should block thread until counter is set to zero 1167s should block until counter is set to zero with timeout 1167s should block until timeout and return false when counter is not set to zero 1167s spurious wake ups 1168s should resist to spurious wake ups without timeout 1169s should resist to spurious wake ups with timeout 1169s 1169s Concurrent::JavaCountDownLatch 1169s it should behave like count_down_latch 1169s #initialize 1169s raises an exception if the initial count is less than zero 1169s raises an exception if the initial count is not an integer 1169s defaults the count to 1 1169s #count 1169s should be the value passed to the constructor 1169s should be decreased after every count down 1169s should not go below zero 1169s #wait 1169s blocks indefinitely, and is kill-able 1169s blocks indefinitely with timeout, and is kill-able 1169s count set to zero 1170s should return true immediately 1170s should return true immediately with timeout 1170s non zero count 1171s should block thread until counter is set to zero 1171s should block until counter is set to zero with timeout 1171s should block until timeout and return false when counter is not set to zero 1171s 1171s Concurrent::CountDownLatch 1171s inherits from JavaCountDownLatch 1171s 1171s Concurrent::CyclicBarrier 1171s #initialize 1171s raises an exception if the initial count is less than 1 1171s raises an exception if the initial count is not an integer 1171s #parties 1171s should be the value passed to the constructor 1171s #number_waiting 1171s without any waiting thread 1171s should be equal to zero 1171s with waiting threads 1171s should be equal to the waiting threads count 1171s #broken? 1171s should not be broken when created 1171s should not be broken when reset is called without waiting thread 1171s reset 1171s should release all waiting threads 1171s #wait 1171s without timeout 1171s should block the thread 1171s should release all threads when their number matches the desired one 1171s returns true when released 1172s executes the block once 1172s can be reused 1172s return false if barrier has been reset 1172s with timeout 1172s timeout not expiring 1172s should block the thread 1172s should release all threads when their number matches the desired one 1172s returns true when released 1172s timeout expiring 1173s returns false 1173s breaks the barrier and release all other threads 1173s breaks the barrier and release all other threads 2 1173s does not execute the block on timeout 1173s #broken barrier 1173s should not accept new threads 1173s can be reset 1174s spurious wake ups 1174s should resist to spurious wake ups without timeout 1175s should resist to spurious wake ups with timeout 1175s 1175s Concurrent::Event 1175s #initialize 1175s sets the state to unset 1175s #set? 1175s returns true when the event has been set 1175s returns false if the event is unset 1175s #set 1175s triggers the event 1175s sets the state to set 1175s #try? 1175s triggers the event if not already set 1175s returns true if not previously set 1175s returns false if previously set 1175s #reset 1175s does not change the state of an unset event 1175s does not trigger an unset event 1176s returns true when called on an unset event 1176s sets the state of a set event to unset 1176s returns true when called on a set event 1176s #wait 1176s returns immediately when the event has been set 1176s returns true once the event is set 1176s blocks indefinitely when the timer is nil 1176s blocks indefinitely 1176s stops waiting when the timer expires 1177s returns false when the timer expires 1178s triggers multiple waiting threads 1178s behaves appropriately if wait begins while #set is processing 1178s spurious wake ups 1179s should resist to spurious wake ups without timeout 1179s should resist spurious wake ups with timeout 1179s 1179s Concurrent::FiberLocalVar 1179s #initialize 1179s can set an initial value 1180s sets nil as a default initial value 1180s sets the same initial value for all fibers 1180s can set a block to be called to get the initial value 1180s when attempting to set both an initial value and a block 1180s is expected to raise ArgumentError 1180s #value 1180s returns the current value 1180s returns the value after modification 1180s when using a block to initialize the value 1180s calls the block to initialize the value 1180s sets the block return value as the current value 1180s calls the block to initialize the value for each fiber 1180s #value= 1180s sets a new value 1180s returns the new value 1180s does not modify the initial value for other fibers 1180s does not modify the value for other fibers 1180s 1180s Concurrent::FiberLocalVar 1180s uses FiberLocalVar if Mutex is per Fiber 1180s 1180s Concurrent::ReadWriteLock 1180s #write_locked? 1180s returns true when the write lock is held 1180s returns false when the write lock is not held 1180s returns false when the write lock is not held but there are readers 1180s #has_waiters? 1180s returns false when no locks are held 1180s returns false when there are readers but no writers 1180s returns true when the write lock is held and there are waiting readers 1181s returns true when the write lock is held and there are waiting writers 1181s #with_read_lock 1181s acquires the lock 1181s returns the value of the block operation 1181s releases the lock 1181s raises an exception if no block is given 1181s raises an exception if maximum lock limit is exceeded 1181s releases the lock when an exception is raised 1181s #with_write_lock 1181s acquires the lock 1181s returns the value of the block operation 1181s releases the lock 1181s raises an exception if no block is given 1181s raises an exception if maximum lock limit is exceeded 1181s releases the lock when an exception is raised 1181s #acquire_read_lock 1181s increments the lock count 1181s waits for a running writer to finish 1181s does not wait for any running readers 1181s raises an exception if maximum lock limit is exceeded 1181s returns true if the lock is acquired 1181s #release_read_lock 1181s decrements the counter 1181s unblocks waiting writers 1181s returns true if the lock is released 1181s returns true if the lock was never set 1181s #acquire_write_lock 1181s increments the lock count 1181s waits for a running writer to finish 1182s waits for a running reader to finish 1182s raises an exception if maximum lock limit is exceeded 1182s returns true if the lock is acquired 1182s #release_write_lock 1182s decrements the counter 1182s unblocks waiting readers 1182s unblocks waiting writers 1182s returns true if the lock is released 1182s returns true if the lock was never set 1182s 1182s Concurrent::ReentrantReadWriteLock 1188s can survive a torture test 1188s read lock 1189s allows other read locks to be acquired at the same time 1189s can be acquired more than once 1189s can be acquired while holding a write lock 1189s can be upgraded to a write lock 1189s can be upgraded to a write lock when read lock acquired more than once 1189s cannot be released when not held 1189s cannot be released more times than it was taken 1189s wakes up waiting writers when the last read lock is released 1189s write lock 1189s cannot be acquired when another thread holds a write lock 1189s cannot be acquired when another thread holds a read lock 1189s can be acquired more than once 1189s can be acquired while holding a read lock 1189s can be downgraded to a read lock 1189s cannot be released when not held 1189s cannot be released more times than it was taken 1190s wakes up waiting readers when the write lock is released 1190s wakes up waiting writers when the write lock is released 1190s #with_read_lock 1190s acquires read block before yielding, then releases it 1190s releases read lock if an exception is raised in block 1190s #with_write_lock 1190s acquires write block before yielding, then releases it 1190s releases write lock if an exception is raised in block 1190s #try_read_lock 1190s returns false immediately if read lock cannot be obtained 1190s acquires read lock and returns true if it can do so without blocking 1190s can acquire a read lock if a read lock is already held 1190s can acquire a read lock if a write lock is already held 1190s #try_write_lock 1190s returns false immediately if write lock cannot be obtained 1190s acquires write lock and returns true if it can do so without blocking 1190s can acquire a write lock if a read lock is already held 1190s can acquire a write lock if a write lock is already held 1190s 1190s Concurrent::ReentrantReadWriteLock 1190s can acquire locks in separate fibers 1190s 1190s Concurrent::MutexSemaphore 1190s it should behave like semaphore 1190s #initialize 1190s raises an exception if the initial count is not an integer 1190s when initializing with 0 1190s is expected not to equal nil 1190s when initializing with -1 1190s is expected to eq 0 1190s #acquire 1190s without block 1190s permits available 1190s should return nil immediately 1190s not enough permits available 1191s should block thread until permits are available 1191s when acquiring negative permits 1191s raises ArgumentError 1191s with block 1191s permits available 1191s should acquire permits, run the block, release permits, and return block return value 1191s if the block raises, the permit is still released 1191s not enough permits available 1192s should block thread until permits are available 1192s when acquiring negative permits 1192s raises ArgumentError 1192s #drain_permits 1192s drains all available permits 1192s drains nothing in no permits are available 1192s #try_acquire 1192s without block 1192s without timeout 1192s acquires immediately if permits are available 1192s returns false immediately in no permits are available 1192s when trying to acquire negative permits 1192s is expected to raise ArgumentError 1192s with timeout 1192s acquires immediately if permits are available 1193s acquires when permits are available within timeout 1193s returns false on timeout 1193s with block 1193s without timeout 1193s acquires immediately if permits are available and returns block return value 1193s releases permit if block raises 1193s returns false immediately in no permits are available 1193s when trying to acquire negative permits 1197s is expected not to change `semaphore.available_permits` 1197s with timeout 1197s acquires immediately if permits are available, and returns block return value 1197s releases permits if block raises 1198s acquires when permits are available within timeout, and returns block return value 1198s returns false on timeout 1198s #reduce_permits 1198s raises ArgumentError if reducing by negative number 1198s reduces permits below zero 1198s reduces permits 1198s reduces zero permits 1198s #release 1198s increases the number of available permits by one 1198s when a number of permits is specified 1198s increases the number of available permits by the specified value 1198s when permits is set to negative number 1198s is expected to raise ArgumentError 1198s 1198s Concurrent::JavaSemaphore 1198s it should behave like semaphore 1198s #initialize 1198s raises an exception if the initial count is not an integer 1198s when initializing with 0 1198s is expected not to equal nil 1198s when initializing with -1 1198s is expected to eq 0 1198s #acquire 1198s without block 1198s permits available 1198s should return nil immediately 1198s not enough permits available 1199s should block thread until permits are available 1199s when acquiring negative permits 1199s raises ArgumentError 1199s with block 1199s permits available 1199s should acquire permits, run the block, release permits, and return block return value 1199s if the block raises, the permit is still released 1199s not enough permits available 1199s should block thread until permits are available 1199s when acquiring negative permits 1199s raises ArgumentError 1199s #drain_permits 1199s drains all available permits 1199s drains nothing in no permits are available 1199s #try_acquire 1199s without block 1199s without timeout 1199s acquires immediately if permits are available 1199s returns false immediately in no permits are available 1199s when trying to acquire negative permits 1199s is expected to raise ArgumentError 1199s with timeout 1199s acquires immediately if permits are available 1200s acquires when permits are available within timeout 1200s returns false on timeout 1200s with block 1200s without timeout 1200s acquires immediately if permits are available and returns block return value 1200s releases permit if block raises 1200s returns false immediately in no permits are available 1200s when trying to acquire negative permits 1200s is expected not to change `semaphore.available_permits` 1200s with timeout 1200s acquires immediately if permits are available, and returns block return value 1200s releases permits if block raises 1201s acquires when permits are available within timeout, and returns block return value 1201s returns false on timeout 1201s #reduce_permits 1201s raises ArgumentError if reducing by negative number 1201s reduces permits below zero 1201s reduces permits 1201s reduces zero permits 1201s #release 1201s increases the number of available permits by one 1201s when a number of permits is specified 1201s increases the number of available permits by the specified value 1201s when permits is set to negative number 1201s is expected to raise ArgumentError 1201s 1201s Concurrent::Semaphore 1201s inherits from JavaSemaphore 1201s 1201s Concurrent::ThreadLocalVar 1201s #initialize 1201s can set an initial value 1201s sets nil as a default initial value 1201s sets the same initial value for all threads 1201s can set a block to be called to get the initial value 1201s when attempting to set both an initial value and a block 1201s is expected to raise ArgumentError 1201s #value 1201s returns the current value 1201s returns the value after modification 1201s when using a block to initialize the value 1201s calls the block to initialize the value 1201s sets the block return value as the current value 1201s calls the block to initialize the value for each thread 1201s #value= 1201s sets a new value 1201s returns the new value 1201s does not modify the initial value for other threads 1201s does not modify the value for other threads 1201s 1201s Concurrent 1202s Cancellation 1202s basic 1202s is expected to be falsey 1202s is expected to be truthy 1202s is expected to be falsey 1202s is expected to eq 2 1202s #join 1202s 1202s Concurrent::Channel::Buffer::Base 1202s is expected to eq 0 1202s is expected to be blocking 1202s is expected to raise NotImplementedError 1202s is expected to raise NotImplementedError 1202s is expected to raise NotImplementedError 1202s is expected to raise NotImplementedError 1202s is expected to raise NotImplementedError 1202s is expected to raise NotImplementedError 1202s is expected to raise NotImplementedError 1202s is expected to raise NotImplementedError 1202s is expected not to be closed 1202s is expected to be closed 1202s 1202s Concurrent::Channel::Buffer::Buffered 1202s is expected to be blocking 1202s behaves like channel_buffered_buffer 1202s behaves like channel_buffer 1203s is expected to respond to #blocking? 1203s #capacity 1203s is expected to be >= 0 1203s #size 1203s returns zero upon initialization 1203s #empty? 1203s returns true when empty 1203s #full? 1203s returns false when not full 1203s #put 1203s does not enqueue the item when closed 1203s returns false when closed 1203s #offer 1203s returns true on success 1203s does not enqueue the item when closed 1203s returns false immediately when closed 1203s #take 1203s returns Concurrent::NULL when closed 1203s #next 1203s returns Concurrent::NULL, false when closed 1203s #poll 1203s returns the next item immediately if available 1204s returns Concurrent::NULL immediately if no item is available 1204s returns Concurrent::NULL when closed 1204s #close 1204s sets #closed? to false 1204s returns true when not previously closed 1204s returns false when already closed 1204s #closed? 1204s returns true when new 1204s returns false after #close 1204s #initialize 1204s raises an exception if size <= 0 1204s #capacity 1204s returns the maximum capacity of the buffer 1204s #size 1204s is 0 when first created 1204s returns the number of items in the buffer 1204s is 0 when there are taking threads but no putting threads 1204s #empty? 1204s returns true when empty 1204s #put 1204s enqueues the item when size > 0, not full, and not closed 1204s returns true when the item is put 1204s #offer 1204s enqueues the item immediately when not full and not closed 1204s #take 1204s returns the first item when not empty 1205s blocks until not empty 1205s returns Concurrent::NULL when closed and empty 1205s #next 1206s blocks until not empty 1206s returns , true when there is only one item and not closed 1206s returns , true when there are multiple items 1206s returns , true when closed and last item 1206s returns Concurrent::NULL, false when closed and no items remain 1206s #full? 1206s returns true when at max capacity 1206s #put 1206s blocks when at capacity until a thread is ready to take 1206s #offer 1206s returns false immediately when full 1206s 1206s Concurrent::Channel::Buffer::Dropping 1206s is expected not to be blocking 1206s behaves like channel_buffered_buffer 1206s behaves like channel_buffer 1206s is expected to respond to #blocking? 1206s #capacity 1206s is expected to be >= 0 1206s #size 1206s returns zero upon initialization 1206s #empty? 1206s returns true when empty 1206s #full? 1206s returns false when not full 1206s #put 1206s does not enqueue the item when closed 1206s returns false when closed 1206s #offer 1206s returns true on success 1206s does not enqueue the item when closed 1206s returns false immediately when closed 1206s #take 1206s returns Concurrent::NULL when closed 1206s #next 1206s returns Concurrent::NULL, false when closed 1206s #poll 1207s returns the next item immediately if available 1207s returns Concurrent::NULL immediately if no item is available 1207s returns Concurrent::NULL when closed 1207s #close 1207s sets #closed? to false 1207s returns true when not previously closed 1207s returns false when already closed 1207s #closed? 1207s returns true when new 1207s returns false after #close 1207s #initialize 1207s raises an exception if size <= 0 1207s #capacity 1207s returns the maximum capacity of the buffer 1207s #size 1207s is 0 when first created 1207s returns the number of items in the buffer 1207s is 0 when there are taking threads but no putting threads 1207s #empty? 1207s returns true when empty 1207s #put 1207s enqueues the item when size > 0, not full, and not closed 1207s returns true when the item is put 1207s #offer 1207s enqueues the item immediately when not full and not closed 1207s #take 1207s returns the first item when not empty 1207s blocks until not empty 1207s returns Concurrent::NULL when closed and empty 1207s #next 1207s blocks until not empty 1207s returns , true when there is only one item and not closed 1207s returns , true when there are multiple items 1207s returns , true when closed and last item 1207s returns Concurrent::NULL, false when closed and no items remain 1207s #put 1207s does not block when full 1207s drops the last value when full 1207s #offer 1207s returns true immediately when full 1207s drops the last value when full 1207s 1207s Concurrent::Channel::Buffer::Sliding 1207s is expected not to be blocking 1207s behaves like channel_buffered_buffer 1207s behaves like channel_buffer 1207s is expected to respond to #blocking? 1207s #capacity 1207s is expected to be >= 0 1207s #size 1207s returns zero upon initialization 1207s #empty? 1207s returns true when empty 1207s #full? 1207s returns false when not full 1207s #put 1207s does not enqueue the item when closed 1207s returns false when closed 1207s #offer 1207s returns true on success 1207s does not enqueue the item when closed 1207s returns false immediately when closed 1207s #take 1207s returns Concurrent::NULL when closed 1207s #next 1207s returns Concurrent::NULL, false when closed 1207s #poll 1207s returns the next item immediately if available 1207s returns Concurrent::NULL immediately if no item is available 1207s returns Concurrent::NULL when closed 1207s #close 1207s sets #closed? to false 1207s returns true when not previously closed 1207s returns false when already closed 1207s #closed? 1207s returns true when new 1207s returns false after #close 1207s #initialize 1207s raises an exception if size <= 0 1207s #capacity 1208s returns the maximum capacity of the buffer 1208s #size 1208s is 0 when first created 1208s returns the number of items in the buffer 1208s is 0 when there are taking threads but no putting threads 1208s #empty? 1208s returns true when empty 1208s #put 1208s enqueues the item when size > 0, not full, and not closed 1208s returns true when the item is put 1208s #offer 1208s enqueues the item immediately when not full and not closed 1208s #take 1208s returns the first item when not empty 1208s blocks until not empty 1208s returns Concurrent::NULL when closed and empty 1208s #next 1208s blocks until not empty 1208s returns , true when there is only one item and not closed 1208s returns , true when there are multiple items 1208s returns , true when closed and last item 1208s returns Concurrent::NULL, false when closed and no items remain 1208s #put 1208s does not block when full 1208s drops the first value when full 1208s #offer 1208s returns true immediately when full 1208s drops the first value when full 1208s 1208s Concurrent::Channel::Buffer::Ticker 1208s behaves like channel_timing_buffer 1208s is expected to be blocking 1208s #capacity 1208s is expected to eq 1 1208s #size 1208s is expected to eq 0 1208s #empty? 1208s is expected not to be empty 1208s #full? 1208s is expected to be full 1208s #put 1208s is expected to equal false 1208s #offer 1208s is expected to equal false 1208s #take 1209s blocks when the timer is not ready 1209s returns a Tick 1209s triggers after the specified time interval 1209s returns Concurrent::NULL when closed 1209s #poll 1209s returns Concurrent::NULL when the timer is not ready 1209s returns a Tick 1209s returns Concurrent::NULL when closed 1209s triggers after the specified time interval 1209s #next 1210s blocks when the timer is not ready 1210s returns a Tick when open 1210s returns Concurrent::NULL, false when closed 1210s triggers after the specified time interval 1210s #close 1210s sets #closed? to false 1210s returns true when not previously closed 1210s returns false when already closed 1210s #closed? 1210s returns true when new 1210s returns false after #close 1210s #take 1210s triggers until closed 1211s returns Concurrent::NULL when closed after trigger 1211s #poll 1211s triggers until closed 1211s #next 1212s triggers until closed 1212s returns true for more while open 1212s returns false for more once closed 1212s 1212s Concurrent::Channel::Buffer::Timer 1212s behaves like channel_timing_buffer 1212s is expected to be blocking 1212s #capacity 1212s is expected to eq 1 1212s #size 1212s is expected to eq 0 1212s #empty? 1212s is expected not to be empty 1212s #full? 1212s is expected to be full 1212s #put 1212s is expected to equal false 1212s #offer 1212s is expected to equal false 1212s #take 1213s blocks when the timer is not ready 1213s returns a Tick 1213s triggers after the specified time interval 1213s returns Concurrent::NULL when closed 1213s #poll 1213s returns Concurrent::NULL when the timer is not ready 1213s returns a Tick 1213s returns Concurrent::NULL when closed 1213s triggers after the specified time interval 1213s #next 1214s blocks when the timer is not ready 1214s returns a Tick when open 1214s returns Concurrent::NULL, false when closed 1214s triggers after the specified time interval 1214s #close 1214s sets #closed? to false 1214s returns true when not previously closed 1214s returns false when already closed 1214s #closed? 1214s returns true when new 1214s returns false after #close 1214s #take 1214s closes automatically on first take 1214s #poll 1214s closes automatically on first take 1214s #next 1215s closes automatically on first take 1215s returns false for more 1215s 1215s Concurrent::Channel::Buffer::Unbuffered 1215s is expected to be blocking 1215s is expected to eq 1 1215s behaves like channel_buffer 1215s is expected to respond to #blocking? 1215s #capacity 1215s is expected to be >= 0 1215s #size 1215s returns zero upon initialization 1215s #empty? 1215s returns true when empty 1215s #full? 1215s returns false when not full 1215s #put 1215s does not enqueue the item when closed 1215s returns false when closed 1215s #offer 1215s returns true on success 1215s does not enqueue the item when closed 1215s returns false immediately when closed 1215s #take 1215s returns Concurrent::NULL when closed 1215s #next 1215s returns Concurrent::NULL, false when closed 1215s #poll 1215s returns the next item immediately if available 1215s returns Concurrent::NULL immediately if no item is available 1215s returns Concurrent::NULL when closed 1215s #close 1215s sets #closed? to false 1215s returns true when not previously closed 1215s returns false when already closed 1215s #closed? 1215s returns true when new 1215s returns false after #close 1215s #size 1216s is 0 when first created 1216s is 1 when a putting thread is waiting 1216s is 0 when there are taking threads but no putting threads 1216s #empty? 1216s is true when there are no putting threads 1216s is false when there are waiting putting threads 1216s #full? 1216s is false when there are no putting threads 1216s is false when there are waiting putting threads 1216s #put 1216s does not enqueue the item when closed 1216s returns false when closed 1217s blocks until a thread is ready to take 1217s delivers when closed after put starts 1217s #offer 1217s returns false immediately when a put in in progress 1217s gives the item to a waiting taker and returns true 1217s #take 1218s returns false immediately when a put in in progress 1218s gives the item to a waiting taker and returns true 1218s #next 1218s blocks when no putting and returns , true when one arrives 1219s returns , true when there are multiple putting 1219s returns , true when closed and last item 1219s returns Concurrent::NULL, false when closed and no items remain 1219s 1219s channel integration tests 1219s A Tour of Go 1222s channels.rb 1223s buffered-channels.rb 1225s range-and-close.rb 1225s select.rb 1225s default-selection.rb (PENDING: flaky) 1225s Go By Example 1227s channels.rb 1229s channel-buffering.rb 1231s channel-synchronization.rb 1233s channel-directions.rb 1236s select.rb 1240s timeouts.rb 1241s non-blocking-channel-operations.rb 1243s closing-channels.rb 1245s range-over-channels.rb 1248s timers.rb 1251s ticker.rb 1256s worker-pools.rb 1259s rate-limiting.rb 1259s 1259s Concurrent::Channel::Tick 1259s initializes to current time when no argument given 1259s initializes to the given monotonic time 1259s #utc returns a Time object in UTC 1259s #epoch returns the UTC time as epoch seconds 1260s #to_s formats as a time 1260s comparison 1260s correctly compares to a Numeric (monotonic) 1260s correctly compares to a Time 1260s correctly compares to a Tick 1260s 1260s Concurrent::Channel 1260s initialization 1260s raises an exception when the :buffer is invalid 1260s is :unbuffered when neither :buffer nore :capacity is given 1260s is :unbuffered when :unbuffered is given 1260s is :unbuffered when :buffered and capacity: 0 1260s raises an exception when both :unbuffered and :capacity are given 1260s is :buffered when :capacity > 0 and no :buffer given 1260s is :buffered when :buffered given 1260s raises an exception when :buffered given without :capacity 1260s raises an exception when :buffered and :capacity < 0 1260s is :dropping when :dropping and :capacity > 0 1260s raises an exception when :dropping given without :capacity 1260s raises an exception when :dropping and :capacity < 1 1260s is :sliding when :sliding and :capacity > 0 1260s raises an exception when :sliding given without :capacity 1260s raises an exception when :sliding and :capacity < 1 1260s uses the given buffer 1260s factories 1260s is expected to receive new(10) 1 time 1260s is expected to receive new(10) 1 time 1260s #put 1260s returns true on success 1260s returns false on failure 1260s rejects when the validator returns false 1260s rejects when the validator raises an exception 1260s rejects nil 1260s put! 1260s returns true on success 1260s raises an exception on failure 1260s rejects when the validator returns false 1260s rejects when the validator raises an exception 1260s rejects nil 1260s put? 1260s returns a just Maybe on success 1260s returns a nothing Maybe on failure 1260s rejects when the validator returns false 1260s rejects when the validator raises an exception 1260s accepts nil 1260s #offer 1260s returns true on success 1260s returns false on failure 1260s rejects when the validator returns false 1260s rejects when the validator raises an exception 1260s rejects nil 1260s offer! 1260s returns true on success 1260s raises an exception on failure 1260s rejects when the validator returns false 1260s rejects when the validator raises an exception 1260s rejects nil 1260s offer? 1260s returns a just Maybe on success 1260s returns a nothing Maybe on failure 1260s rejects when the validator returns false 1260s rejects when the validator raises an exception 1260s accepts nil 1260s #take 1261s takes the next item when not empty 1261s returns nil on failure 1261s #take! 1261s takes the next item when not empty 1261s raises an exception on failure 1261s #take? 1261s returns a just Maybe on success 1261s returns a nothing Maybe on failure 1261s #next 1261s returns , true when there is one item 1261s returns , true when there are multiple items 1261s returns nil, false when empty and closed 1261s returns , true when closed and last item 1261s returns nil, false when closed and no items remain 1261s #next? 1261s returns a just Maybe and true when there is one item 1261s returns a just Maybe, true when there are multiple items 1261s returns a nothing Maybe and false on failure 1261s #poll 1262s returns the next item immediately if available 1262s returns nil immediately if no item is available 1262s returns nil on failure 1262s #poll! 1262s returns the next item immediately if available 1262s raises an exception immediately if no item is available 1262s raises an exception on failure 1262s #poll? 1262s returns a just Maybe immediately if available 1262s returns a nothing Maybe immediately if no item is available 1262s returns a nothing Maybe on failure 1262s .each 1262s raises and exception when no block is given 1262s iterates until the channel is closed 1262s goroutines 1262s .go 1262s raises an exception when no block is given 1262s is expected to receive post(1, 2, 3) 1 time 1262s .go_via 1262s raises an exception when no block is given 1262s is expected to receive post(1, 2, 3) 1 time 1262s .go_loop 1262s raises an exception when no block is given 1262s loops until the block returns false 1262s .go_loop_via 1262s raises an exception when no block is given 1262s loops until the block returns false 1262s select 1262s raises an exception when no block is given 1262s passes a selector to the block 1262s is expected to be truthy 1262s 1262s Concurrent::Collection::CopyOnNotifyObserverSet 1262s behaves like an observer set 1262s #add_observer 1262s with arguments 1263s should return the observer 1263s with a block 1263s should return the observer based on a block 1263s #notify_observers 1263s should return the observer set 1263s with a single observer 1263s should update a registered observer without arguments 1263s should update a registered observer with arguments 1263s should notify an observer using the chosen method 1263s should notify an observer once using the last added method 1263s should notify an observer from a block 1263s can be called many times 1263s with many observers 1263s should notify all observer using the chosen method 1263s with a block 1263s calls the block once for every observer 1263s passes the block return value to the update method 1263s accepts blocks returning a single value 1263s accepts block return values that include arrays 1263s raises an exception if given both arguments and a block 1263s #count_observers 1263s should be zero after initialization 1263s should be 1 after the first observer is added 1263s should be 1 if the same observer is added many times 1263s should be equal to the number of unique observers 1263s #delete_observer 1263s should not notify a deleted observer 1263s can delete a non added observer 1263s should return the observer 1263s #delete_observers 1263s should remove all observers 1263s should return the observer set 1263s #notify_and_delete_observers 1263s should notify all observers 1263s should clear observers 1263s can be called many times without any other notification 1263s should return the observer set 1263s 1263s Concurrent::Collection::CopyOnWriteObserverSet 1263s behaves like an observer set 1263s #add_observer 1263s with arguments 1263s should return the observer 1263s with a block 1263s should return the observer based on a block 1263s #notify_observers 1263s should return the observer set 1263s with a single observer 1263s should update a registered observer without arguments 1263s should update a registered observer with arguments 1263s should notify an observer using the chosen method 1263s should notify an observer once using the last added method 1263s should notify an observer from a block 1263s can be called many times 1263s with many observers 1263s should notify all observer using the chosen method 1263s with a block 1263s calls the block once for every observer 1263s passes the block return value to the update method 1263s accepts blocks returning a single value 1263s accepts block return values that include arrays 1263s raises an exception if given both arguments and a block 1263s #count_observers 1263s should be zero after initialization 1263s should be 1 after the first observer is added 1264s should be 1 if the same observer is added many times 1264s should be equal to the number of unique observers 1264s #delete_observer 1264s should not notify a deleted observer 1264s can delete a non added observer 1264s should return the observer 1264s #delete_observers 1265s should remove all observers 1265s should return the observer set 1265s #notify_and_delete_observers 1265s should notify all observers 1265s should clear observers 1265s can be called many times without any other notification 1265s should return the observer set 1265s 1265s Concurrent::Collection::RubyNonConcurrentPriorityQueue 1265s it should behave like priority_queue 1265s #initialize 1265s sorts from high to low when :order is :max 1265s sorts from high to low when :order is :high 1265s sorts from low to high when :order is :min 1265s sorts from low to high when :order is :low 1265s sorts from high to low by default 1265s #clear 1265s removes all items from a populated queue 1265s has no effect on an empty queue 1265s is expected to be truthy 1265s #delete 1265s deletes the requested item when found 1265s deletes the requested item when it is the first element 1265s deletes the requested item when it is the last element 1265s deletes multiple matching items when present 1265s returns true when found 1265s returns false when not found 1265s returns false when called on an empty queue 1265s deletes the requested item when it is "smaller" than the last element 1265s #empty? 1265s returns true for an empty queue 1265s returns false for a populated queue 1265s #include? 1265s returns true if the item is found 1265s returns false if the item is not found 1265s returns false when the queue is empty 1265s is aliased as #has_priority? 1265s #length 1265s returns the length of a populated queue 1265s returns zero when the queue is empty 1265s is aliased as #size 1265s #peek 1265s returns the item at the head of the queue 1265s does not remove the item from the queue 1265s returns nil when the queue is empty 1265s #pop 1265s returns the item at the head of the queue 1265s removes the item from the queue 1265s returns nil when the queue is empty 1265s returns nil when called multiple times while empty 1265s is aliased as #deq 1265s is aliased as #shift 1265s #push 1265s raises an exception when attempting to enqueue nil 1265s adds the item to the queue 1265s sorts the new item in priority order 1265s arbitrarily orders equal items with respect to each other 1265s is expected to be truthy 1265s is aliased as << 1265s is aliased as enq 1265s .from_list 1265s creates an empty queue from an empty list 1265s creates a sorted, populated queue from an Array 1265s creates a sorted, populated queue from a Hash 1265s 1265s Concurrent::Collection::JavaNonConcurrentPriorityQueue 1265s it should behave like priority_queue 1265s #initialize 1265s sorts from high to low when :order is :max 1265s sorts from high to low when :order is :high 1265s sorts from low to high when :order is :min 1265s sorts from low to high when :order is :low 1265s sorts from high to low by default 1265s #clear 1265s removes all items from a populated queue 1265s has no effect on an empty queue 1265s is expected to be truthy 1265s #delete 1265s deletes the requested item when found 1265s deletes the requested item when it is the first element 1265s deletes the requested item when it is the last element 1265s deletes multiple matching items when present 1265s returns true when found 1265s returns false when not found 1265s returns false when called on an empty queue 1265s deletes the requested item when it is "smaller" than the last element 1265s #empty? 1265s returns true for an empty queue 1265s returns false for a populated queue 1265s #include? 1265s returns true if the item is found 1265s returns false if the item is not found 1265s returns false when the queue is empty 1265s is aliased as #has_priority? 1265s #length 1265s returns the length of a populated queue 1265s returns zero when the queue is empty 1266s is aliased as #size 1266s #peek 1266s returns the item at the head of the queue 1266s does not remove the item from the queue 1266s returns nil when the queue is empty 1266s #pop 1266s returns the item at the head of the queue 1266s removes the item from the queue 1266s returns nil when the queue is empty 1266s returns nil when called multiple times while empty 1266s is aliased as #deq 1266s is aliased as #shift 1266s #push 1266s raises an exception when attempting to enqueue nil 1266s adds the item to the queue 1266s sorts the new item in priority order 1266s arbitrarily orders equal items with respect to each other 1266s is expected to be truthy 1266s is aliased as << 1266s is aliased as enq 1266s .from_list 1266s creates an empty queue from an empty list 1266s creates a sorted, populated queue from an Array 1266s creates a sorted, populated queue from a Hash 1266s 1266s Concurrent::Collection::NonConcurrentPriorityQueue 1266s inherits from JavaNonConcurrentPriorityQueue 1266s 1266s Concurrent::Concern::Obligation 1266s unscheduled 1266s it should behave like incomplete 1266s should be not completed 1266s should be incomplete 1266s #value 1266s should return immediately if timeout is zero 1266s should block on the event if timeout is not set 1266s should block on the event if timeout is not zero 1266s #value! 1266s should return immediately if timeout is zero 1266s should block on the event if timeout is not set 1266s should block on the event if timeout is not zero 1266s #no_error! 1266s should return immediately if timeout is zero 1266s should block on the event if timeout is not set 1266s should block on the event if timeout is not zero 1266s pending 1266s it should behave like incomplete 1266s should be not completed 1266s should be incomplete 1266s #value 1266s should return immediately if timeout is zero 1266s should block on the event if timeout is not set 1266s should block on the event if timeout is not zero 1266s #value! 1266s should return immediately if timeout is zero 1266s should block on the event if timeout is not set 1266s should block on the event if timeout is not zero 1266s #no_error! 1266s should return immediately if timeout is zero 1266s should block on the event if timeout is not set 1266s should block on the event if timeout is not zero 1266s fulfilled 1266s should be completed 1266s should be not incomplete 1266s #value 1266s should return immediately if timeout is zero 1266s should return immediately if timeout is not set 1266s should return immediately if timeout is not zero 1266s #value! 1266s should return immediately if timeout is zero 1266s should return immediately if timeout is not set 1266s should return immediately if timeout is not zero 1266s #no_error! 1266s should return immediately if timeout is zero 1266s should return immediately if timeout is not set 1266s should return immediately if timeout is not zero 1266s rejected 1266s should be completed 1266s should be not incomplete 1266s #value 1266s should return immediately if timeout is zero 1266s should return immediately if timeout is not set 1266s should return immediately if timeout is not zero 1266s #value! 1266s should return immediately if timeout is zero 1266s should return immediately if timeout is not set 1266s should return immediately if timeout is not zero 1266s #no_error! 1267s should return immediately if timeout is zero 1267s should return immediately if timeout is not set 1267s should return immediately if timeout is not zero 1267s #compare_and_set_state 1267s unexpected state 1267s should return false if state is not the expected one 1267s should not change the state if current is not the expected one 1267s expected state 1267s should return true if state is the expected one 1267s should not change the state if current is not the expected one 1267s #if_state 1267s should raise without block 1267s should return false if state is not expected 1267s should the block value if state is expected 1267s should execute the block within the mutex 1267s #get_arguments_from 1267s returns an empty array when opts is not given 1267s returns an empty array when opts is an empty hash 1267s returns an empty array when there is no :args key 1267s returns an empty array when the :args key has a nil value 1267s returns a one-element array when the :args key has a non-array value 1267s returns an array when when the :args key has an array value 1267s returns the given array when the :args key has a complex array value 1267s 1267s Concurrent::Concern::Observable 1267s does not initialize set by by default 1267s uses the given observer set 1267s delegates #add_observer 1267s delegates #with_observer 1267s delegates #delete_observer 1267s delegates #delete_observers 1267s delegates #count_observers 1267s 1267s configuration 1267s global executors 1267s creates a global timer set 1267s creates a global fast executor 1267s creates a global io executor 1267s 1267s dataflow 1267s raises an exception when no block given 1268s #dataflow uses the global fast executor 1268s #dataflow_with uses the given executor 1268s #dataflow_with raises an exception when no executor given 1268s accepts zero or more dependencies 1269s accepts uncompleted dependencies 1270s accepts completed dependencies 1270s raises an exception if any dependencies are not IVars 1270s doesn't raise exceptions from dependencies, unless called with ! 1270s returns a Future 1270s does not schedule the Future 1271s if no dependencies are completed 1271s if one dependency of two is completed 1271s schedules the Future when all dependencies are available 1271s if there is just one 1271s if there is more than one 1271s counts already executed dependencies 1271s if there is just one 1272s if there is more than one 1272s passes the values of dependencies into the block 1272s if there is just one 1273s if there is more than one 1273s module function 1273s can be called as Concurrent.dataflow and Concurrent.dataflow_with 1273s 1273s Concurrent::Delay 1273s behavior 1273s it should behave like dereferenceable 1273s defaults :dup_on_deref to false 1273s calls #dup when the :dup_on_deref option is true 1273s defaults :freeze_on_deref to false 1273s calls #freeze when the :freeze_on_deref option is true 1273s defaults :copy_on_deref to nil 1273s calls the block when the :copy_on_deref option is passed a proc 1273s calls the :copy block first followed by #dup followed by #freeze 1274s does not call #dup when #dup_on_deref is set and the value is nil 1274s does not call #freeze when #freeze_on_deref is set and the value is nil 1274s does not call the #copy_on_deref block when the value is nil 1274s supports dereference flags with observers 1274s it should behave like obligation 1274s #state 1274s is :pending when first created 1274s is :fulfilled when the handler completes 1275s is :rejected when the handler raises an exception 1275s #value 1275s returns nil when reaching the optional timeout value 1275s returns immediately when timeout is zero 1275s returns the value when fulfilled before timeout 1275s returns nil when timeout reached 1275s is nil when :pending 1275s blocks the caller when :pending and timeout is nil 1275s is nil when :rejected 1275s is set to the return value of the block when :fulfilled 1275s #reason 1275s is nil when :pending 1275s is nil when :fulfilled 1275s is set to error object of the exception when :rejected 1275s #initialize 1275s sets the state to :pending 1275s raises an exception when no block given 1275s #reconfigure 1275s returns value of block used in reconfiguration 1275s returns false when process completed? 1275s #value 1275s does not call the block before #value is called 1275s calls the block when #value is called 1275s only calls the block once no matter how often #value is called 1275s raises when called recursively 1275s can be called twice 1275s 1275s Concurrent 1275s Promises::Channel 1275s #capacity 1275s #to_s 1275s #(try_)push(_op) 1275s #(try_)pop(_op) 1275s #(try_)pop(_op)_matching 1275s #(try_)select(_op) 1275s exchanging 1275s integration 1275s 1276s Concurrent 1276s ErlangActor 1276s on thread 1276s is expected to eq [:bad_message, -1] 1276s behaves like erlang actor 1276s run to termination 1276s run to termination with arguments 1277s #receive 1277s pid has name 1277s receives message 1277s receives message with matchers 1277s spawn(link: true) 1277s termination 1277s monitoring 1278s (de)monitor 1278s demonitor 1278s demonitor should leave the down message in the inbox if it's already there 1278s notifications 1 1278s notifications 2 1278s linking 1278s links 1278s unlinks 1278s link dead 1279s link dead when trapping 1279s exit/1 when linked 1279s 1 1280s 2 1280s 3 1280s 4 1280s 5 1280s 6 1280s 7 1280s 8 1280s 9 1280s exit/2 when linked 1280s 1 1280s 2 1280s 3 1280s 4 1281s 5 1281s 6 1281s 7 1281s 8 1281s 9 1281s 10 1281s 11 1281s 12 1281s 13 1281s asking 1282s replies 1282s timing out (PENDING: flaky on truffleruby and jruby) 1282s rejects on no reply 1282s on pool 1282s receives message repeatedly with keep 1283s class defined 1283s behaves like erlang actor 1283s run to termination 1283s run to termination with arguments 1286s #receive 1287s pid has name 1287s receives message 1287s receives message with matchers 1287s spawn(link: true) 1287s termination 1287s monitoring 1287s (de)monitor 1288s demonitor 1288s demonitor should leave the down message in the inbox if it's already there 1288s notifications 1 1288s notifications 2 1288s linking 1290s links 1290s unlinks 1290s link dead 1290s link dead when trapping 1290s exit/1 when linked 1290s 1 1290s 2 1290s 3 1290s 4 1290s 5 1290s 6 1290s 7 1290s 8 1290s 9 1290s exit/2 when linked 1290s 1 1290s 2 1290s 3 1290s 4 1290s 5 1291s 6 1291s 7 1291s 8 1291s 9 1291s 10 1291s 11 1291s 12 1291s 13 1291s asking 1292s replies 1292s timing out (PENDING: flaky on truffleruby and jruby) 1292s rejects on no reply 1292s 1292s Concurrent::Edge::LockFreeLinkedSet 1292s .new 1292s when passed default val 1292s uses the val arg as data for each node 1292s #add 1292s appends to the linked set 1292s in a multi-threaded environment 1293s adds the items to the set 1293s #<< 1293s appends to the linked set and returns self 1293s returns self regardless of whether it was logically added 1293s #contains? 1293s when checking if set includes a value 1293s returns true if a value exists 1293s compares object using Object#hash 1293s returns false for values not in the set 1293s when set is empty 1293s does not break 1293s when set is long 1297s does not break 1297s in a multi-threaded environment 1300s correctly check that the set contains the item 1300s #remove 1300s when item is inside of set 1300s the item is no longer visible to the user 1300s allows for the item to be added despite being physically present 1300s in a multi-threaded environment 1300s adds the items to the set 1302s does not recognize the existence of the item when removed 1302s when item is not inside of set 1302s does not remove to value 1302s the set remains intact 1302s when the set is empty 1302s remove does not break 1302s when the set is large 1304s remove successfully removes the node 1304s 1304s Concurrent::RubyExchanger 1304s behaves like exchanger 1304s #exchange 1304s behaves like exchanger method with indefinite timeout 1304s blocks indefinitely 1304s receives the other value 1304s can be reused 1304s behaves like exchanger method with finite timeout 1305s blocks until timeout (FAILED - 1) 1305s receives the other value 1305s can be reused 1305s behaves like exchanger method cross-thread interactions 1305s when first, waits for a second 1306s allows multiple firsts to cancel if necessary 1306s #exchange! 1306s behaves like exchanger method with indefinite timeout 1306s blocks indefinitely 1306s receives the other value 1306s can be reused 1306s behaves like exchanger method with finite timeout 1306s blocks until timeout (FAILED - 2) 1306s receives the other value 1306s can be reused 1306s behaves like exchanger method cross-thread interactions 1306s when first, waits for a second 1307s allows multiple firsts to cancel if necessary 1307s #try_exchange 1307s behaves like exchanger method with indefinite timeout 1307s blocks indefinitely 1307s receives the other value 1307s can be reused 1307s behaves like exchanger method with finite timeout 1308s blocks until timeout 1308s receives the other value 1308s can be reused 1308s behaves like exchanger method cross-thread interactions 1308s when first, waits for a second 1308s allows multiple firsts to cancel if necessary 1308s 1308s Concurrent::JavaExchanger 1308s behaves like exchanger 1308s #exchange 1309s behaves like exchanger method with indefinite timeout 1309s blocks indefinitely 1309s receives the other value 1309s can be reused 1309s behaves like exchanger method with finite timeout 1309s blocks until timeout (FAILED - 3) 1309s receives the other value 1309s can be reused 1309s behaves like exchanger method cross-thread interactions 1309s when first, waits for a second 1309s allows multiple firsts to cancel if necessary 1309s #exchange! 1309s behaves like exchanger method with indefinite timeout 1309s blocks indefinitely 1309s receives the other value 1310s can be reused 1310s behaves like exchanger method with finite timeout 1310s blocks until timeout 1310s receives the other value 1310s can be reused 1310s behaves like exchanger method cross-thread interactions 1310s when first, waits for a second 1310s allows multiple firsts to cancel if necessary 1310s #try_exchange 1310s behaves like exchanger method with indefinite timeout 1310s blocks indefinitely 1310s receives the other value 1310s can be reused 1310s behaves like exchanger method with finite timeout 1310s blocks until timeout 1310s receives the other value 1311s can be reused 1311s behaves like exchanger method cross-thread interactions 1311s when first, waits for a second 1311s allows multiple firsts to cancel if necessary 1311s 1311s Concurrent::Exchanger 1311s class hierarchy 1311s inherits from JavaExchanger 1311s 1311s Concurrent::CachedThreadPool 1311s it should behave like thread_pool 1311s it should behave like executor_service 1311s it should behave like global_thread_pool 1311s #post 1311s raises an exception if no block is given 1311s returns true when the block is added to the queue 1311s calls the block with the given arguments 1311s aliases #<< 1311s #post 1313s rejects the block while shutting down 1313s rejects the block once shutdown 1313s auto terminate 1323s does not stop shutdown (FAILED - 4) 1323s #running? 1323s returns true when the thread pool is running 1324s returns false when the thread pool is shutting down 1324s returns false when the thread pool is shutdown 1324s returns false when the thread pool is killed 1324s #shuttingdown? 1324s returns false when the thread pool is running 1324s returns true when the thread pool is shutting down 1324s returns false when the thread pool is shutdown 1324s #shutdown? 1324s returns false when the thread pool is running 1326s returns false when the thread pool is shutting down 1326s returns true when the thread pool is shutdown 1326s #shutdown 1326s stops accepting new tasks 1326s allows in-progress tasks to complete 1327s allows pending tasks to complete 1327s #shutdown followed by #wait_for_termination 1327s allows in-progress tasks to complete 1328s allows pending tasks to complete 1329s stops accepting/running new tasks 1329s #kill 1329s stops accepting new tasks 1329s rejects all pending tasks 1329s #wait_for_termination 1329s immediately returns true when no operations are pending 1329s returns true after shutdown has complete 1331s returns true when shutdown successfully completes before timeout 1335s returns false when shutdown fails to complete before timeout 1335s waits forever when no timeout value is given 1335s #auto_terminate? 1335s returns true by default 1335s returns true when :enable_at_exit_handler is true 1335s returns false when :enable_at_exit_handler is false 1335s #length 1335s returns zero on creation 1336s returns zero once shut down 1336s #scheduled_task_count 1336s returns zero on creation 1337s returns the approximate number of tasks that have been post thus far 1337s returns the approximate number of tasks that were post 1337s #completed_task_count 1337s returns zero on creation 1337s #shutdown 1339s allows threads to exit normally 1339s #initialize 1339s sets :max_length to DEFAULT_MAX_POOL_SIZE 1339s sets :min_length to DEFAULT_MIN_POOL_SIZE 1339s sets :idletime to DEFAULT_THREAD_IDLETIMEOUT 1339s sets :max_queue to DEFAULT_MAX_QUEUE_SIZE 1339s #min_length 1339s returns zero on creation 1339s returns zero while running 1339s returns zero once shutdown 1339s #max_length 1339s returns :max_length on creation 1340s returns :max_length while running 1340s returns :max_length once shutdown 1340s #largest_length 1340s returns zero on creation 1341s returns a non-zero number once tasks have been received 1341s returns a non-zero number after shutdown if tasks have been received 1341s #idletime 1341s returns the thread idletime 1341s runtime-specific implementation 1341s #initialize 1341s sets :fallback_policy correctly 1341s defaults :fallback_policy to :abort 1341s raises an exception if given an invalid :fallback_policy 1341s stress 1344s ERRORSIZE 117 max 2147483647 1347s is expected to be <= 200 1348s is expected to be <= 4 1348s 1348s Concurrent::FixedThreadPool 1348s it should behave like thread_pool 1348s it should behave like executor_service 1348s it should behave like global_thread_pool 1348s #post 1348s raises an exception if no block is given 1348s returns true when the block is added to the queue 1348s calls the block with the given arguments 1348s aliases #<< 1348s #post 1350s rejects the block while shutting down 1350s rejects the block once shutdown 1350s auto terminate 1360s does not stop shutdown (FAILED - 5) 1360s #running? 1360s returns true when the thread pool is running 1361s returns false when the thread pool is shutting down 1361s returns false when the thread pool is shutdown 1361s returns false when the thread pool is killed 1361s #shuttingdown? 1361s returns false when the thread pool is running 1362s returns true when the thread pool is shutting down 1362s returns false when the thread pool is shutdown 1362s #shutdown? 1362s returns false when the thread pool is running 1362s returns false when the thread pool is shutting down 1362s returns true when the thread pool is shutdown 1362s #shutdown 1363s stops accepting new tasks 1363s allows in-progress tasks to complete 1364s allows pending tasks to complete 1364s #shutdown followed by #wait_for_termination 1364s allows in-progress tasks to complete 1364s allows pending tasks to complete 1365s stops accepting/running new tasks 1365s #kill 1365s stops accepting new tasks 1366s rejects all pending tasks 1366s #wait_for_termination 1366s immediately returns true when no operations are pending 1366s returns true after shutdown has complete 1367s returns true when shutdown successfully completes before timeout 1368s returns false when shutdown fails to complete before timeout 1368s waits forever when no timeout value is given 1368s #auto_terminate? 1369s returns true by default 1369s returns true when :enable_at_exit_handler is true 1369s returns false when :enable_at_exit_handler is false 1369s #length 1369s returns zero on creation 1369s returns zero once shut down 1369s #scheduled_task_count 1369s returns zero on creation 1370s returns the approximate number of tasks that have been post thus far 1370s returns the approximate number of tasks that were post 1370s #completed_task_count 1370s returns zero on creation 1370s #shutdown 1371s allows threads to exit normally 1371s #initialize default values 1371s defaults :min_length correctly 1371s defaults :max_length correctly 1371s defaults :fallback_policy to :abort 1371s defaults :idletime correctly 1371s defaults default :max_queue to zero 1371s #initialize explicit values 1371s raises an exception when the pool length is less than one 1371s sets explicit :max_queue correctly 1371s correctly sets valid :fallback_policy 1371s correctly sets valid :idletime 1371s raises an exception if given an invalid :fallback_policy 1371s #min_length 1371s returns :num_threads on creation 1371s returns :num_threads while running 1371s returns :num_threads once shutdown 1371s #max_length 1371s returns :num_threads on creation 1371s returns :num_threads while running 1371s returns :num_threads once shutdown 1371s #length 1371s returns :num_threads while running 1371s #largest_length 1371s returns zero on creation 1371s returns :num_threads while running 1371s returns :num_threads once shutdown 1371s #kill 1372s attempts to kill all in-progress tasks 1372s worker creation and caching 1373s never creates more than :num_threads threads 1373s fallback policy 1373s raises an error when overflow on abort 1374s discards when fallback_policy is :discard 1375s uses the calling thread for overflow under caller_runs 1375s runtime-specific implementation 1375s sets :fallback_policy correctly 1375s 1375s Concurrent::ImmediateExecutor 1375s it should behave like executor_service 1375s it should behave like global_thread_pool 1375s #post 1375s raises an exception if no block is given 1375s returns true when the block is added to the queue 1375s calls the block with the given arguments 1375s aliases #<< 1375s #post 1378s rejects the block while shutting down 1378s rejects the block once shutdown 1378s auto terminate 1389s does not stop shutdown (FAILED - 6) 1389s #running? 1389s returns true when the thread pool is running 1389s returns false when the thread pool is shutting down 1389s returns false when the thread pool is shutdown 1389s returns false when the thread pool is killed 1389s #shuttingdown? 1389s returns false when the thread pool is running 1389s returns true when the thread pool is shutting down (PENDING: will never be in shuttingdown? state) 1389s returns false when the thread pool is shutdown 1389s #shutdown? 1389s returns false when the thread pool is running 1389s returns false when the thread pool is shutting down (PENDING: will never be in shuttingdown? state) 1389s returns true when the thread pool is shutdown 1389s #shutdown 1390s stops accepting new tasks 1391s allows in-progress tasks to complete 1392s allows pending tasks to complete 1392s #shutdown followed by #wait_for_termination 1392s allows in-progress tasks to complete 1393s allows pending tasks to complete 1394s stops accepting/running new tasks 1394s #kill 1394s stops accepting new tasks 1396s rejects all pending tasks 1396s #wait_for_termination 1396s immediately returns true when no operations are pending 1396s returns true after shutdown has complete 1397s returns true when shutdown successfully completes before timeout 1397s returns false when shutdown fails to complete before timeout 1398s waits forever when no timeout value is given 1398s 1398s Concurrent::IndirectImmediateExecutor 1398s runs its tasks synchronously 1398s runs the task on a separate thread 1398s it should behave like executor_service 1398s it should behave like global_thread_pool 1398s #post 1398s raises an exception if no block is given 1398s returns true when the block is added to the queue 1398s calls the block with the given arguments 1398s aliases #<< 1398s #post 1401s rejects the block while shutting down 1401s rejects the block once shutdown 1401s auto terminate 1412s does not stop shutdown (FAILED - 7) 1412s #running? 1412s returns true when the thread pool is running 1413s returns false when the thread pool is shutting down 1413s returns false when the thread pool is shutdown 1413s returns false when the thread pool is killed 1413s #shuttingdown? 1413s returns false when the thread pool is running 1413s returns true when the thread pool is shutting down (PENDING: will never be in shuttingdown? state) 1413s returns false when the thread pool is shutdown 1413s #shutdown? 1413s returns false when the thread pool is running 1413s returns false when the thread pool is shutting down (PENDING: will never be in shuttingdown? state) 1413s returns true when the thread pool is shutdown 1413s #shutdown 1413s stops accepting new tasks 1414s allows in-progress tasks to complete 1415s allows pending tasks to complete 1415s #shutdown followed by #wait_for_termination 1415s allows in-progress tasks to complete 1417s allows pending tasks to complete 1418s stops accepting/running new tasks 1418s #kill 1418s stops accepting new tasks 1420s rejects all pending tasks 1420s #wait_for_termination 1420s immediately returns true when no operations are pending 1420s returns true after shutdown has complete 1422s returns true when shutdown successfully completes before timeout 1422s returns false when shutdown fails to complete before timeout 1423s waits forever when no timeout value is given 1423s 1423s Concurrent::JavaSingleThreadExecutor 1423s it should behave like executor_service 1423s it should behave like global_thread_pool 1423s #post 1423s raises an exception if no block is given 1423s returns true when the block is added to the queue 1424s calls the block with the given arguments 1424s aliases #<< 1424s #post 1426s rejects the block while shutting down 1426s rejects the block once shutdown 1426s auto terminate 1436s does not stop shutdown (FAILED - 8) 1436s #running? 1436s returns true when the thread pool is running 1437s returns false when the thread pool is shutting down 1437s returns false when the thread pool is shutdown 1437s returns false when the thread pool is killed 1437s #shuttingdown? 1437s returns false when the thread pool is running 1438s returns true when the thread pool is shutting down 1438s returns false when the thread pool is shutdown 1438s #shutdown? 1438s returns false when the thread pool is running 1439s returns false when the thread pool is shutting down 1439s returns true when the thread pool is shutdown 1439s #shutdown 1439s stops accepting new tasks 1440s allows in-progress tasks to complete 1441s allows pending tasks to complete 1441s #shutdown followed by #wait_for_termination 1441s allows in-progress tasks to complete 1442s allows pending tasks to complete 1443s stops accepting/running new tasks 1443s #kill 1443s stops accepting new tasks 1444s rejects all pending tasks 1444s #wait_for_termination 1444s immediately returns true when no operations are pending 1444s returns true after shutdown has complete 1445s returns true when shutdown successfully completes before timeout 1445s returns false when shutdown fails to complete before timeout 1446s waits forever when no timeout value is given 1446s 1446s Concurrent::JavaThreadPoolExecutor 1446s it should behave like thread_pool 1446s it should behave like executor_service 1446s it should behave like global_thread_pool 1446s #post 1446s raises an exception if no block is given 1446s returns true when the block is added to the queue 1446s calls the block with the given arguments 1446s aliases #<< 1446s #post 1447s rejects the block while shutting down 1447s rejects the block once shutdown 1447s auto terminate 1458s does not stop shutdown (FAILED - 9) 1458s #running? 1458s returns true when the thread pool is running 1459s returns false when the thread pool is shutting down 1459s returns false when the thread pool is shutdown 1459s returns false when the thread pool is killed 1459s #shuttingdown? 1459s returns false when the thread pool is running 1460s returns true when the thread pool is shutting down 1460s returns false when the thread pool is shutdown 1460s #shutdown? 1460s returns false when the thread pool is running 1461s returns false when the thread pool is shutting down 1461s returns true when the thread pool is shutdown 1461s #shutdown 1461s stops accepting new tasks 1462s allows in-progress tasks to complete 1462s allows pending tasks to complete 1462s #shutdown followed by #wait_for_termination 1462s allows in-progress tasks to complete 1463s allows pending tasks to complete 1463s stops accepting/running new tasks 1463s #kill 1464s stops accepting new tasks 1464s rejects all pending tasks 1464s #wait_for_termination 1464s immediately returns true when no operations are pending 1465s returns true after shutdown has complete 1465s returns true when shutdown successfully completes before timeout 1468s returns false when shutdown fails to complete before timeout 1469s waits forever when no timeout value is given 1469s #auto_terminate? 1469s returns true by default 1469s returns true when :enable_at_exit_handler is true 1469s returns false when :enable_at_exit_handler is false 1469s #length 1469s returns zero on creation 1470s returns zero once shut down 1470s #scheduled_task_count 1470s returns zero on creation 1470s returns the approximate number of tasks that have been post thus far 1470s returns the approximate number of tasks that were post 1470s #completed_task_count 1470s returns zero on creation 1470s #shutdown 1472s allows threads to exit normally 1472s it should behave like thread_pool_executor 1472s #initialize defaults 1472s defaults :min_length to DEFAULT_MIN_POOL_SIZE 1472s defaults :max_length to DEFAULT_MAX_POOL_SIZE 1472s defaults :idletime to DEFAULT_THREAD_IDLETIMEOUT 1472s defaults :max_queue to DEFAULT_MAX_QUEUE_SIZE 1472s defaults :fallback_policy to :abort 1472s defaults :name to nil 1472s #initialize explicit values 1472s sets :min_threads 1472s sets :max_threads 1472s sets :idletime 1472s doesn't allow max_threads < min_threads 1472s accepts all valid fallback policies 1472s raises an exception if :max_threads is less than zero 1472s raises an exception if :min_threads is less than zero 1472s raises an exception if :max_threads greater than the max allowable 1472s raises an exception if :max_threads is less than :min_threads 1472s raises an exception if given an invalid :fallback_policy 1472s sets :name 1472s #max_queue 1472s returns the set value on creation 1472s returns the set value when running 1473s returns the set value after stopping 1473s #synchronous 1473s cannot be set unless `max_queue` is zero 1474s executes fallback policy once max_threads has been reached 1474s #queue_length 1474s returns zero on creation 1474s returns zero when there are no enqueued tasks (FAILED - 10) 1475s returns the size of the queue when tasks are enqueued 1477s returns zero when stopped 1478s can never be greater than :max_queue 1478s #remaining_capacity 1478s returns -1 when :max_queue is set to zero 1478s returns :max_length on creation 1480s returns :max_length when stopped 1480s #active_count 1481s returns the number of threads that are actively executing tasks. 1481s #fallback_policy 1481s :abort 1482s #post raises an error when the queue is at capacity 1482s #<< raises an error when the queue is at capacity 1482s #post raises an error when the executor is shutting down 1482s #<< raises an error when the executor is shutting down 1483s a #post task is never executed when the queue is at capacity 1484s a #<< task is never executed when the queue is at capacity 1484s :discard 1484s a #post task is never executed when the queue is at capacity 1484s a #<< task is never executed when the queue is at capacity 1484s a #post task is never executed when the executor is shutting down 1484s a #<< task is never executed when the executor is shutting down 1484s #post returns false when the executor is shutting down 1484s :caller_runs 1484s #post does not create any new threads when the queue is at capacity 1489s #<< executes the task on the current thread when the queue is at capacity 1490s #post executes the task on the current thread when the queue is at capacity 1490s #post executes the task on the current thread when the executor is shutting down 1490s #<< executes the task on the current thread when the executor is shutting down 1491s #post does not block other jobs running on the worker threads 1491s prune 1491s is a no-op, pruning is handled by the JVM 1491s #overload_policy 1491s :abort maps to AbortPolicy 1492s :discard maps to DiscardPolicy 1492s :caller_runs maps to CallerRunsPolicy 1492s 1492s Concurrent::RubySingleThreadExecutor 1492s it should behave like executor_service 1492s it should behave like global_thread_pool 1492s #post 1492s raises an exception if no block is given 1492s returns true when the block is added to the queue 1492s calls the block with the given arguments 1492s aliases #<< 1492s #post 1494s rejects the block while shutting down 1494s rejects the block once shutdown 1494s auto terminate 1505s does not stop shutdown (FAILED - 11) 1505s #running? 1505s returns true when the thread pool is running 1505s returns false when the thread pool is shutting down 1505s returns false when the thread pool is shutdown 1505s returns false when the thread pool is killed 1505s #shuttingdown? 1505s returns false when the thread pool is running 1506s returns true when the thread pool is shutting down 1506s returns false when the thread pool is shutdown 1506s #shutdown? 1506s returns false when the thread pool is running 1507s returns false when the thread pool is shutting down 1508s returns true when the thread pool is shutdown 1508s #shutdown 1509s stops accepting new tasks 1510s allows in-progress tasks to complete 1511s allows pending tasks to complete 1511s #shutdown followed by #wait_for_termination 1511s allows in-progress tasks to complete 1513s allows pending tasks to complete 1514s stops accepting/running new tasks 1514s #kill 1515s stops accepting new tasks 1515s rejects all pending tasks 1515s #wait_for_termination 1515s immediately returns true when no operations are pending 1515s returns true after shutdown has complete 1516s returns true when shutdown successfully completes before timeout 1517s returns false when shutdown fails to complete before timeout 1518s waits forever when no timeout value is given 1518s 1518s Concurrent::RubyThreadPoolExecutor 1518s it should behave like thread_pool 1518s it should behave like executor_service 1518s it should behave like global_thread_pool 1518s #post 1518s raises an exception if no block is given 1518s returns true when the block is added to the queue 1519s calls the block with the given arguments 1519s aliases #<< 1519s #post 1521s rejects the block while shutting down 1521s rejects the block once shutdown 1521s auto terminate 1531s does not stop shutdown (FAILED - 12) 1531s #running? 1532s returns true when the thread pool is running 1533s returns false when the thread pool is shutting down 1533s returns false when the thread pool is shutdown 1533s returns false when the thread pool is killed 1533s #shuttingdown? 1533s returns false when the thread pool is running 1534s returns true when the thread pool is shutting down 1534s returns false when the thread pool is shutdown 1534s #shutdown? 1534s returns false when the thread pool is running 1535s returns false when the thread pool is shutting down 1535s returns true when the thread pool is shutdown 1535s #shutdown 1536s stops accepting new tasks 1536s allows in-progress tasks to complete 1537s allows pending tasks to complete 1537s #shutdown followed by #wait_for_termination 1537s allows in-progress tasks to complete 1537s allows pending tasks to complete 1538s stops accepting/running new tasks 1538s #kill 1538s stops accepting new tasks 1539s rejects all pending tasks 1539s #wait_for_termination 1539s immediately returns true when no operations are pending 1539s returns true after shutdown has complete 1540s returns true when shutdown successfully completes before timeout 1540s returns false when shutdown fails to complete before timeout 1541s waits forever when no timeout value is given 1541s #auto_terminate? 1541s returns true by default 1541s returns true when :enable_at_exit_handler is true 1541s returns false when :enable_at_exit_handler is false 1541s #length 1541s returns zero on creation 1541s returns zero once shut down 1541s #scheduled_task_count 1541s returns zero on creation 1541s returns the approximate number of tasks that have been post thus far 1541s returns the approximate number of tasks that were post 1541s #completed_task_count 1541s returns zero on creation 1541s #shutdown 1543s allows threads to exit normally 1543s it should behave like thread_pool_executor 1543s #initialize defaults 1543s defaults :min_length to DEFAULT_MIN_POOL_SIZE 1543s defaults :max_length to DEFAULT_MAX_POOL_SIZE 1543s defaults :idletime to DEFAULT_THREAD_IDLETIMEOUT 1543s defaults :max_queue to DEFAULT_MAX_QUEUE_SIZE 1543s defaults :fallback_policy to :abort 1543s defaults :name to nil 1543s #initialize explicit values 1543s sets :min_threads 1543s sets :max_threads 1543s sets :idletime 1543s doesn't allow max_threads < min_threads 1543s accepts all valid fallback policies 1543s raises an exception if :max_threads is less than zero 1543s raises an exception if :min_threads is less than zero 1543s raises an exception if :max_threads greater than the max allowable 1543s raises an exception if :max_threads is less than :min_threads 1543s raises an exception if given an invalid :fallback_policy 1543s sets :name 1543s #max_queue 1543s returns the set value on creation 1543s returns the set value when running 1544s returns the set value after stopping 1544s #synchronous 1544s cannot be set unless `max_queue` is zero 1544s executes fallback policy once max_threads has been reached 1544s #queue_length 1544s returns zero on creation 1544s returns zero when there are no enqueued tasks 1544s returns the size of the queue when tasks are enqueued 1544s returns zero when stopped 1544s can never be greater than :max_queue 1544s #remaining_capacity 1544s returns -1 when :max_queue is set to zero 1544s returns :max_length on creation 1544s returns :max_length when stopped 1544s #active_count 1544s returns the number of threads that are actively executing tasks. 1544s #fallback_policy 1544s :abort 1544s #post raises an error when the queue is at capacity 1544s #<< raises an error when the queue is at capacity 1544s #post raises an error when the executor is shutting down 1544s #<< raises an error when the executor is shutting down 1547s a #post task is never executed when the queue is at capacity 1547s a #<< task is never executed when the queue is at capacity 1547s :discard 1547s a #post task is never executed when the queue is at capacity 1547s a #<< task is never executed when the queue is at capacity 1547s a #post task is never executed when the executor is shutting down 1547s a #<< task is never executed when the executor is shutting down 1547s #post returns false when the executor is shutting down 1547s :caller_runs 1547s #post does not create any new threads when the queue is at capacity 1547s #<< executes the task on the current thread when the queue is at capacity 1547s #post executes the task on the current thread when the queue is at capacity 1547s #post executes the task on the current thread when the executor is shutting down 1547s #<< executes the task on the current thread when the executor is shutting down 1549s #post does not block other jobs running on the worker threads 1549s #remaining_capacity 1550s returns :max_length when no tasks are enqueued 1552s returns the remaining capacity when tasks are enqueued 1552s threads naming 1552s without pool name 1552s sets counted name 1552s with pool name 1552s sets counted name 1552s 1552s Concurrent::SafeTaskExecutor 1552s #execute 1552s happy execution 1552s should return success 1552s should return task value 1552s should return a nil reason 1552s passes all arguments to #execute to the task 1552s protectes #execute with a mutex 1552s failing execution 1552s should return false success 1552s should return a nil value 1552s should return the reason 1552s rescues Exception when :rescue_exception is true 1552s rescues StandardError when :rescue_exception is false 1552s rescues StandardError by default 1552s 1552s Concurrent::SerializedExecutionDelegator 1552s it should behave like executor_service 1552s it should behave like global_thread_pool 1552s #post 1552s raises an exception if no block is given 1552s returns true when the block is added to the queue 1552s calls the block with the given arguments 1552s aliases #<< 1552s #post 1553s rejects the block while shutting down 1553s rejects the block once shutdown 1553s auto terminate 1563s does not stop shutdown (FAILED - 13) 1563s #running? 1563s returns true when the thread pool is running 1565s returns false when the thread pool is shutting down 1565s returns false when the thread pool is shutdown 1565s returns false when the thread pool is killed 1565s #shuttingdown? 1565s returns false when the thread pool is running 1565s returns true when the thread pool is shutting down (PENDING: will never be in shuttingdown? state) 1565s returns false when the thread pool is shutdown 1565s #shutdown? 1565s returns false when the thread pool is running 1565s returns false when the thread pool is shutting down (PENDING: will never be in shuttingdown? state) 1565s returns true when the thread pool is shutdown 1565s #shutdown 1565s stops accepting new tasks 1565s allows in-progress tasks to complete 1566s allows pending tasks to complete 1566s #shutdown followed by #wait_for_termination 1568s allows in-progress tasks to complete 1568s allows pending tasks to complete 1568s stops accepting/running new tasks 1568s #kill 1568s stops accepting new tasks 1570s rejects all pending tasks 1570s #wait_for_termination 1570s immediately returns true when no operations are pending 1570s returns true after shutdown has complete 1571s returns true when shutdown successfully completes before timeout 1571s returns false when shutdown fails to complete before timeout 1573s waits forever when no timeout value is given 1573s 1573s Concurrent::SimpleExecutorService 1573s it should behave like executor_service 1573s it should behave like global_thread_pool 1573s #post 1573s raises an exception if no block is given 1573s returns true when the block is added to the queue 1573s calls the block with the given arguments 1574s aliases #<< 1574s #post 1576s rejects the block while shutting down 1576s rejects the block once shutdown 1576s auto terminate 1586s does not stop shutdown (FAILED - 14) 1586s #running? 1586s returns true when the thread pool is running 1587s returns false when the thread pool is shutting down 1587s returns false when the thread pool is shutdown 1587s returns false when the thread pool is killed 1587s #shuttingdown? 1587s returns false when the thread pool is running 1590s returns true when the thread pool is shutting down 1590s returns false when the thread pool is shutdown 1590s #shutdown? 1590s returns false when the thread pool is running 1590s returns false when the thread pool is shutting down 1590s returns true when the thread pool is shutdown 1590s #shutdown 1590s stops accepting new tasks 1590s allows in-progress tasks to complete 1591s allows pending tasks to complete 1591s #shutdown followed by #wait_for_termination 1591s allows in-progress tasks to complete 1592s allows pending tasks to complete 1592s stops accepting/running new tasks 1593s #kill 1594s stops accepting new tasks 1594s rejects all pending tasks 1594s #wait_for_termination 1594s immediately returns true when no operations are pending 1595s returns true after shutdown has complete 1596s returns true when shutdown successfully completes before timeout 1597s returns false when shutdown fails to complete before timeout 1597s waits forever when no timeout value is given 1597s #post 1598s creates a new thread for a call without arguments 1598s executes a call without arguments 1598s creates a new thread for a call with arguments 1598s executes a call with one argument 1598s executes a call with multiple arguments 1598s aliases #<< 1598s SimpleExecutorService.post 1598s creates a new thread for a call without arguments 1598s executes a call without arguments 1598s creates a new thread for a call with arguments 1598s executes a call with one argument 1598s executes a call with multiple arguments 1598s aliases #<< 1598s 1598s Concurrent::SingleThreadExecutor 1598s inherits from JavaSingleThreadExecutor 1598s 1598s Concurrent::ThreadPoolExecutor 1598s inherits from JavaThreadPoolExecutor 1598s 1598s Concurrent::TimerSet 1598s construction 1598s uses the executor given at construction 1598s uses the global io executor be default 1598s #post 1598s raises an exception when given a task with a delay less than zero 1598s raises an exception when no block given 1599s immediately posts a task when the delay is zero 1599s execution 1599s executes a given task when given an interval in seconds 1599s returns an IVar when posting a task 1599s executes a given task when given an interval in seconds, even if longer tasks have been scheduled (FAILED - 15) 1600s passes all arguments to the task on execution 1601s does not execute tasks early 1601s executes all tasks scheduled for the same time 1601s executes tasks with different times in schedule order 1603s executes tasks with different times in schedule time (FAILED - 16) 1603s continues to execute new tasks even after the queue is emptied 1604s safely handles an executor raising RejectedExecutionError 1604s resolution 1604s sets the IVar value on success when delay is zero 1604s sets the IVar value on success when given a delay 1604s sets the IVar reason on failure when delay is zero 1604s sets the IVar reason on failure when given a delay 1604s task cancellation 1605s fails to cancel the task once processing has begun 1605s fails to cancel the task once processing is complete 1605s cancels a pending task 1605s returns false when not running 1605s task rescheduling 1606s raises an exception when given an invalid time 1606s does not change the current schedule when given an invalid time 1606s reschdules a pending and unpost task when given a valid time 1606s returns false once the task has been post to the executor 1607s returns false once the task is processing 1607s returns false once the task has is complete 1607s returns false when not running 1607s task resetting 1607s calls #reschedule with the original delay 1607s termination 1608s cancels all pending tasks on #shutdown 1608s cancels all pending tasks on #kill 1608s stops the monitor thread on #shutdown 1608s kills the monitor thread on #kill 1608s rejects tasks once shutdown 1608s rejects tasks once killed 1608s #wait_for_termination returns true if shutdown completes before timeout 1608s #wait_for_termination returns false on timeout 1608s state 1608s is running? when first created 1608s is running? after tasks have been post 1608s is shutdown? after shutdown completes 1608s is shutdown? after being killed 1608s 1608s Concurrent::WrappingExecutor 1608s is expected to be a kind of Concurrent::WrappingExecutor 1608s is expected to respond to #post 1608s is expected to respond to #can_overflow? 1608s is expected to respond to #serialized? 1608s #post 1608s with passthrough wrapper 1608s is expected to equal # 1608s with wrapper modifying args 1609s is expected to equal # 1609s with wrapper modifying task 1609s is expected to equal # 1609s 1609s Concurrent::Future 1609s it should behave like ivar 1609s it should behave like obligation 1609s #state 1609s is :pending when first created 1609s is :fulfilled when the handler completes 1609s is :rejected when the handler raises an exception 1609s #value 1609s returns nil when reaching the optional timeout value 1609s returns immediately when timeout is zero 1614s returns the value when fulfilled before timeout 1614s returns nil when timeout reached 1614s is nil when :pending 1619s blocks the caller when :pending and timeout is nil 1619s is nil when :rejected 1619s is set to the return value of the block when :fulfilled 1619s #reason 1619s is nil when :pending 1619s is nil when :fulfilled 1619s is set to error object of the exception when :rejected 1620s it should behave like dereferenceable 1622s defaults :dup_on_deref to false 1623s calls #dup when the :dup_on_deref option is true 1624s defaults :freeze_on_deref to false 1625s calls #freeze when the :freeze_on_deref option is true 1625s defaults :copy_on_deref to nil 1626s calls the block when the :copy_on_deref option is passed a proc 1626s calls the :copy block first followed by #dup followed by #freeze 1626s does not call #dup when #dup_on_deref is set and the value is nil 1627s does not call #freeze when #freeze_on_deref is set and the value is nil 1628s does not call the #copy_on_deref block when the value is nil 1629s supports dereference flags with observers 1629s it should behave like observable 1629s #add_observer 1629s adds an observer if called before first notification 1629s adds an observer with :func if called before first notification 1629s creates an observer from a block if called before first notification 1629s raises an exception if not given an observer or a block 1629s raises an exception when given both an observer and a block 1629s #delete_observer 1629s deletes the given observer if called before first notification 1629s returns the removed observer if found in the observer set 1629s returns the given observer even when not found in the observer set 1629s #delete_observers 1629s deletes all observers when called before first notification 1629s returns self 1629s #count_observers 1629s returns zero for a new observable object 1629s returns a count of registered observers if called before first notification 1629s returns zero after #delete_observers has been called 1629s first notification 1630s calls the #update method on all observers without a specified :func 1630s calls the appropriate function on all observers which specified a :func 1631s calls the proc for all observers added as a block 1632s does not notify any observers removed with #delete_observer 1635s does not notify any observers after #delete_observers called 1635s initialization 1635s sets the state to incomplete 1635s #set 1636s sets the state to be fulfilled 1636s sets the value 1636s raises an exception if set more than once 1636s returns self 1636s fulfils when given a block which executes successfully 1636s rejects when given a block which raises an exception 1636s raises an exception when given a value and a block 1636s raises an exception when given neither a value nor a block 1636s #fail 1636s sets the state to be rejected 1636s sets the value to be nil 1636s sets the reason to the given exception 1636s raises an exception if set more than once 1636s defaults the reason to a StandardError 1636s returns self 1636s #try_set 1636s when unset 1636s assigns the value 1636s assigns the block result 1636s returns true 1636s when fulfilled 1636s does not assign the value 1636s does not assign the block result 1636s returns false 1636s when rejected 1636s does not assign the value 1636s does not assign the block result 1636s has a nil value 1636s returns false 1636s it should behave like thread_arguments 1636s passes an empty array when opts is not given 1636s passes an empty array when opts is an empty hash 1636s passes an empty array when there is no :args key 1636s passes an empty array when the :args key has a nil value 1636s passes a one-element array when the :args key has a non-array value 1636s passes an array when when the :args key has an array value 1636s passes the given array when the :args key has a complex array value 1636s allows the given arguments array to be dereferenced 1636s #initialize 1636s sets the state to :unscheduled 1636s raises an exception when no block given 1636s uses the executor given with the :executor option 1636s uses the global io executor by default 1636s instance #execute 1636s does nothing unless the state is :unscheduled 1636s posts the block given on construction 1636s sets the state to :pending 1636s returns self 1636s class #execute 1636s creates a new Future 1636s passes the block to the new Future 1636s calls #execute on the new Future 1636s fulfillment 1636s sets the state to :processing while the task is executing 1636s passes all arguments to handler 1636s sets the value to the result of the handler 1636s sets the state to :fulfilled when the block completes 1636s sets the value to nil when the handler raises an exception 1636s sets the value to nil when the handler raises Exception 1636s sets the reason to the Exception instance when the handler raises Exception 1636s sets the state to :rejected when the handler raises an exception 1636s aliases 1636s aliases #realized? for #fulfilled? 1636s aliases #deref for #value 1636s cancellation 1636s #cancel 1636s fails to cancel the task once processing has begun 1636s fails to cancel the task once processing is complete 1637s cancels a pending task 1637s #wait_or_cancel 1637s returns true if the operation completes before timeout 1637s cancels the task on timeout 1637s observation 1638s notifies all observers on fulfillment 1638s notifies all observers on rejection 1638s notifies an observer added after fulfillment 1638s notifies an observer added after rejection 1638s does not notify existing observers when a new observer added after fulfillment 1638s does not notify existing observers when a new observer added after rejection 1638s deadlock avoidance 1638s should notify observers outside mutex lock 1638s should notify a new observer added after fulfillment outside lock 1638s 1638s Concurrent::Hash 1638s .[] 1638s when initializing with no arguments 1638s is expected to be empty 1638s when initializing with an even number of arguments 1638s creates a hash using the odd position arguments as keys and even position arguments as values 1638s when initializing with an array of pairs 1638s creates a hash using each pair as a (key, value) pair 1638s when initializing with another hash as an argument 1638s creates a new hash 1638s creates a hash with the same contents as the other hash 1638s creates a hash with the results of calling #to_hash on the other array 1638s .new 1638s when initializing with no arguments 1638s is expected to be empty 1638s when initialized with a default object 1638s uses the default object for non-existing keys 1638s when initialized with a block 1638s calls the block for non-existing keys 1638s returns the results of calling the block for non-existing key 1638s concurrency 1640s is expected to be empty 1640s 1640s Concurrent::ImmutableStruct 1640s it should behave like struct 1640s definition 1640s registers the class when given a class name 1640s registers the class when given a class name which is defined in the ancestors 1640s creates an anonymous class when given at least one member 1640s raises an exception when given an invalid class name 1640s defines a getter for each member 1640s raises an exception when given no members 1640s raise an exception when given an invalid member 1640s evalues a given block against the new class 1640s construction 1640s sets all absent members to nil 1640s sets all given members in order 1640s raises an exception when extra members are given 1640s properties 1640s #length 1640s returns the number of struct members 1640s #members 1640s returns the struct members as an array of symbols 1640s returns a different object than the array passed at definition 1640s #size 1640s returns the number of struct members 1640s #values 1642s returns the values of the struct as an array in order 1642s #values_at 1642s returns the value at the given offset 1642s returns the values at multiple given offsets 1642s returns values at offsets in a given range 1642s returns values for multiple ranges 1642s returns values for ranges and offsets 1642s accessors 1642s #[member] 1642s retrieves the value when given a valid symbol member 1642s retrieves the value when given a valid string member 1642s raises an exception when given a non-existent symbol member 1642s raises an exception when given a non-existent string member 1642s #[index] 1642s retrieves the value when given a valid index 1642s raises an exception when given an out-of-bound index 1642s comparison 1642s #== 1642s returns true if other has same struct subclass and equal values 1643s returns false if other has different struct subclass 1643s returns false if other has different values 1643s #!= 1643s returns false if other has same struct subclass and equal values 1643s returns true if other has different struct subclass 1643s returns true if other has different values 1643s enumeration 1643s #each 1643s yields the value of each struct member in order 1643s returns an enumerator when no block is given 1643s #each_pair 1643s yields the name and value of each struct member in order 1643s returns an enumerator when no block is given 1643s #select 1643s yields each value 1643s returns an Array with the values from for which the block returns true 1643s returns an enumerator when no block is given 1643s conversion 1643s #to_s 1643s includes the name of the class when registered 1643s includes the names of all members 1643s includes all values 1643s returns the same string as #inspect 1643s #to_a 1643s returns the to_a for this struct as an array 1643s #to_h 1643s returns a Hash containing the names and values in order 1643s copy 1643s #dup 1643s shallowly duplicates all members along with the struct 1643s discards frozen state of the struct 1643s retains frozen state of members 1643s discards singleton class 1643s copies the singleton class of members 1643s #clone 1643s shallowly clones all members along with the struct 1643s retains frozen state 1643s copies the singleton class 1643s copies the singleton class of members 1643s it should behave like mergeable_struct 1643s #merge 1643s updates all members with the new values from a given hash 1643s calls the given block for each key in `other` 1643s retains the value for all members not without values in the given hash 1643s raises an exception when given a hash with members not in the struct 1643s returns a new object 1643s 1643s Concurrent::IVar 1643s it should behave like ivar 1643s it should behave like obligation 1643s #state 1643s is :pending when first created 1643s is :fulfilled when the handler completes 1643s is :rejected when the handler raises an exception 1643s #value 1643s returns nil when reaching the optional timeout value 1643s returns immediately when timeout is zero 1643s returns the value when fulfilled before timeout 1643s returns nil when timeout reached 1643s is nil when :pending 1644s blocks the caller when :pending and timeout is nil 1644s is nil when :rejected 1644s is set to the return value of the block when :fulfilled 1644s #reason 1644s is nil when :pending 1644s is nil when :fulfilled 1644s is set to error object of the exception when :rejected 1644s it should behave like dereferenceable 1644s defaults :dup_on_deref to false 1644s calls #dup when the :dup_on_deref option is true 1644s defaults :freeze_on_deref to false 1644s calls #freeze when the :freeze_on_deref option is true 1644s defaults :copy_on_deref to nil 1644s calls the block when the :copy_on_deref option is passed a proc 1644s calls the :copy block first followed by #dup followed by #freeze 1644s does not call #dup when #dup_on_deref is set and the value is nil 1644s does not call #freeze when #freeze_on_deref is set and the value is nil 1644s does not call the #copy_on_deref block when the value is nil 1644s supports dereference flags with observers 1644s it should behave like observable 1644s #add_observer 1644s adds an observer if called before first notification 1644s adds an observer with :func if called before first notification 1644s creates an observer from a block if called before first notification 1644s raises an exception if not given an observer or a block 1644s raises an exception when given both an observer and a block 1644s #delete_observer 1644s deletes the given observer if called before first notification 1644s returns the removed observer if found in the observer set 1644s returns the given observer even when not found in the observer set 1644s #delete_observers 1644s deletes all observers when called before first notification 1644s returns self 1644s #count_observers 1644s returns zero for a new observable object 1645s returns a count of registered observers if called before first notification 1645s returns zero after #delete_observers has been called 1645s first notification 1645s calls the #update method on all observers without a specified :func 1645s calls the appropriate function on all observers which specified a :func 1645s calls the proc for all observers added as a block 1646s does not notify any observers removed with #delete_observer 1647s does not notify any observers after #delete_observers called 1647s initialization 1647s sets the state to incomplete 1647s #set 1647s sets the state to be fulfilled 1647s sets the value 1647s raises an exception if set more than once 1647s returns self 1647s fulfils when given a block which executes successfully 1647s rejects when given a block which raises an exception 1647s raises an exception when given a value and a block 1647s raises an exception when given neither a value nor a block 1647s #fail 1648s sets the state to be rejected 1648s sets the value to be nil 1648s sets the reason to the given exception 1648s raises an exception if set more than once 1648s defaults the reason to a StandardError 1648s returns self 1648s #try_set 1648s when unset 1648s assigns the value 1648s assigns the block result 1648s returns true 1648s when fulfilled 1648s does not assign the value 1648s does not assign the block result 1648s returns false 1648s when rejected 1648s does not assign the value 1648s does not assign the block result 1648s has a nil value 1648s returns false 1648s #initialize 1648s does not have to set an initial value 1648s does not set an initial value if you pass NULL 1648s can set an initial value 1648s can set an initial value with a block 1648s raises an exception if given both a value and a block 1648s observation 1648s notifies all observers on #set 1648s deadlock avoidance 1648s should notify observers outside mutex lock 1648s should notify a new observer added after fulfillment outside lock 1648s 1648s Concurrent::LazyRegister 1648s example at ./spec/concurrent/lazy_register_spec.rb:6 (PENDING: Not yet implemented) 1648s 1648s Concurrent::Map 1648s default_proc is called with the Concurrent::Map and the key 1648s default_proc is called with the Concurrent::Map and the key after #dup 1650s concurrency 1650s retrieval 1650s #put_if_absent 1653s updates dont block reads 1654s collision resistance 1729s collision resistance with arrays 1729s #replace_pair 1729s #replace_if_exists 1729s #get_and_set 1729s #key 1729s #key? 1729s #value? 1729s #delete 1729s #delete_pair 1729s default proc 1729s falsy default proc 1729s #clear 1729s #keys 1729s #values 1729s #each_key 1729s #each_value 1730s #empty 1730s options validation 1730s initial capacity options validation 1730s load factor options validation 1730s #size 1730s #get_or_default 1730s #dup,#clone 1730s is unfreezable 1730s marshal dump load 1730s marshal dump does not work with default proc 1730s #inspect 1730s #compute_if_absent 1730s works in default_proc 1730s common 1730s with return 1730s exception 1731s atomicity 1731s #compute_if_present 1731s common 1731s with return 1731s exception 1731s #compute 1731s common 1731s with return 1731s exception 1731s #merge_pair 1731s common 1731s with return 1731s exception 1731s #fetch 1731s common 1731s falsy 1731s with return 1731s #fetch_or_store 1731s common 1731s falsy 1731s with return 1731s #each_pair 1731s it should behave like collection_each 1731s common 1731s pair iterator 1731s allows modification 1731s when no block is given 1731s returns an enumerator 1731s returns an object which is enumerable 1731s #each 1731s it should behave like collection_each 1731s common 1731s pair iterator 1731s allows modification 1731s when no block is given 1731s returns an enumerator 1732s returns an object which is enumerable 1732s 1732s Concurrent::Maybe 1732s construction 1732s hides Maybe.new 1732s Maybe.from 1732s raises an exception when no block is given 1732s passes all arguments to the block 1732s creates a Just Maybe on success 1732s sets the value to the block result on success 1732s creates a Nothing Maybe on exception 1732s sets the reason to the error object on exception 1732s Maybe.just 1732s creates a new Just Maybe 1732s Maybe.nothing 1732s creates a new Nothing Maybe 1732s uses the given Error object 1732s creates a new error object with the given string 1732s creates a new error object when given nothing 1732s when just 1732s #just? returns true 1732s #fulfilled? returns true 1732s #nothing? returns false 1732s #rejected? returns false 1732s #just returns the value 1732s #value returns the value 1732s #nothing returns NONE 1732s #reason returns NONE 1732s when nothing 1732s #just? returns false 1732s #fulfilled? returns false 1732s #nothing? returns true 1732s #rejected? returns true 1732s #just returns NONE 1732s #value returns NONE 1732s #nothing returns the raised error 1732s #reason returns the raised error 1732s comparison 1732s something is not equal to nothing 1732s nothing is equal to nothing 1732s something is equal to the same value 1732s something is not equal to a different value 1732s something is greater than a smaller value 1732s something is less than a bigger value 1732s nothing is not less than nothing 1732s nothing is not greater than nothing 1732s #or 1732s returns the value when something 1732s returns the other when nothing 1732s 1732s monotonic_time 1732s behavior 1732s returns seconds as float 1732s returns a Float when unit = :float_second 1732s returns a Float when unit = :float_millisecond 1732s returns a Float when unit = :float_microsecond 1732s returns an Integer when unit = :second 1732s returns an Integer when unit = :millisecond 1732s returns an Integer when unit = :microsecond 1732s returns an Integer when unit = :nanosecond 1732s raises ArgumentError on unknown units 1732s 1732s Concurrent::MutableStruct 1732s it should behave like struct 1732s definition 1732s registers the class when given a class name 1732s registers the class when given a class name which is defined in the ancestors 1732s /tmp/autopkgtest.HpvjbB/build.Cej/src/spec/concurrent/struct_shared.rb:15: warning: already initialized constant ValidClassName2 1732s creates an anonymous class when given at least one member 1732s raises an exception when given an invalid class name 1732s defines a getter for each member 1732s raises an exception when given no members 1732s raise an exception when given an invalid member 1732s evalues a given block against the new class 1732s construction 1732s sets all absent members to nil 1732s sets all given members in order 1732s raises an exception when extra members are given 1732s properties 1732s #length 1732s returns the number of struct members 1732s #members 1732s returns the struct members as an array of symbols 1732s returns a different object than the array passed at definition 1733s #size 1733s returns the number of struct members 1733s #values 1733s returns the values of the struct as an array in order 1733s #values_at 1733s returns the value at the given offset 1733s returns the values at multiple given offsets 1733s returns values at offsets in a given range 1733s returns values for multiple ranges 1733s returns values for ranges and offsets 1733s accessors 1733s #[member] 1733s retrieves the value when given a valid symbol member 1733s retrieves the value when given a valid string member 1733s raises an exception when given a non-existent symbol member 1733s raises an exception when given a non-existent string member 1733s #[index] 1733s retrieves the value when given a valid index 1733s raises an exception when given an out-of-bound index 1733s comparison 1733s #== 1733s returns true if other has same struct subclass and equal values 1733s returns false if other has different struct subclass 1733s returns false if other has different values 1733s #!= 1733s returns false if other has same struct subclass and equal values 1733s returns true if other has different struct subclass 1733s returns true if other has different values 1733s enumeration 1733s #each 1733s yields the value of each struct member in order 1733s returns an enumerator when no block is given 1733s #each_pair 1733s yields the name and value of each struct member in order 1733s returns an enumerator when no block is given 1733s #select 1733s yields each value 1733s returns an Array with the values from for which the block returns true 1733s returns an enumerator when no block is given 1733s conversion 1733s #to_s 1733s includes the name of the class when registered 1733s includes the names of all members 1733s includes all values 1733s returns the same string as #inspect 1733s #to_a 1733s returns the to_a for this struct as an array 1733s #to_h 1733s returns a Hash containing the names and values in order 1733s copy 1733s #dup 1733s shallowly duplicates all members along with the struct 1733s discards frozen state of the struct 1733s retains frozen state of members 1733s discards singleton class 1733s copies the singleton class of members 1733s #clone 1733s shallowly clones all members along with the struct 1733s retains frozen state 1733s copies the singleton class 1733s copies the singleton class of members 1733s it should behave like mergeable_struct 1733s #merge 1733s updates all members with the new values from a given hash 1733s calls the given block for each key in `other` 1733s retains the value for all members not without values in the given hash 1733s raises an exception when given a hash with members not in the struct 1733s returns a new object 1733s definition 1733s defines a setter for each member 1733s #[member]= 1733s sets the value when given a valid symbol member 1734s sets the value when given a valid string member 1734s raises an exception when given a non-existent symbol member 1734s raises an exception when given a non-existent string member 1734s #[index]= 1734s sets the value when given a valid index 1734s raises an exception when given an out-of-bound index 1734s synchronization 1734s protects #values 1734s protects #values_at 1734s protects #[index] 1734s protects #[member] 1734s protects getter methods 1734s protects #[index]= 1734s protects #[member]= 1734s protects getter methods 1734s protects #to_s 1734s protects #inspect 1734s protects #merge 1734s protects #to_h 1734s protects #== 1734s protects #each 1734s protects #each_pair 1735s protects #select 1735s protects #initialize_copy 1735s copy 1735s #dup 1735s mutates only the copy 1735s #clone 1735s mutates only the copy 1735s 1735s Concurrent::MVar 1735s behavior 1735s it should behave like dereferenceable 1735s defaults :dup_on_deref to false 1735s calls #dup when the :dup_on_deref option is true 1735s defaults :freeze_on_deref to false 1735s calls #freeze when the :freeze_on_deref option is true 1735s defaults :copy_on_deref to nil 1735s calls the block when the :copy_on_deref option is passed a proc 1735s calls the :copy block first followed by #dup followed by #freeze 1735s does not call #dup when #dup_on_deref is set and the value is nil 1735s does not call #freeze when #freeze_on_deref is set and the value is nil 1735s does not call the #copy_on_deref block when the value is nil 1735s supports dereference flags with observers 1735s #initialize 1735s accepts no initial value 1735s accepts an empty initial value 1735s accepts an initial value 1735s accepts a nil initial value 1735s #take 1735s sets the MVar to empty 1735s returns the value on a full MVar 1735s waits for another thread to #put 1735s returns TIMEOUT on timeout on an empty MVar 1735s #borrow 1735s /usr/share/jruby/lib/ruby/stdlib/rubygems/core_ext/kernel_require.rb:85: warning: loading in progress, circular require considered harmful - /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/matchers/built_in/yield.rb require at org/jruby/RubyKernel.java:1184 1735s require at /usr/share/jruby/lib/ruby/stdlib/rubygems/core_ext/kernel_require.rb:85 1735s at /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/matchers/built_in/yield.rb:101 1735s at /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/matchers/built_in/yield.rb:7 1735s at /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/matchers/built_in/yield.rb:6 1735s
at /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/matchers/built_in/yield.rb:5 1735s require at org/jruby/RubyKernel.java:1184 1735s require at /usr/share/jruby/lib/ruby/stdlib/rubygems/core_ext/kernel_require.rb:85 1735s yield_with_args at /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/matchers.rb:920 1735s Concurrent at /tmp/autopkgtest.HpvjbB/build.Cej/src/spec/concurrent/mvar_spec.rb:78 1735s instance_exec at org/jruby/RubyBasicObject.java:2620 1735s run at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:263 1735s with_around_and_singleton_context_hooks at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:511 1735s with_around_example_hooks at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:468 1735s run at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:486 1735s run_around_example_hooks_for at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:624 1735s run at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:486 1735s with_around_example_hooks at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:468 1735s with_around_and_singleton_context_hooks at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:511 1735s run at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:259 1735s run_examples at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:646 1735s map at org/jruby/RubyArray.java:2803 1735s run_examples at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:651 1735s run at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:607 1735s run at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608 1735s map at org/jruby/RubyArray.java:2803 1735s run at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608 1735s run_specs at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:121 1735s map at org/jruby/RubyArray.java:2803 1735s run_specs at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:145 1735s with_suite_hooks at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/configuration.rb:2091 1735s run_specs at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:116 1735s report at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/reporter.rb:74 1735s run_specs at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:115 1735s run at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:89 1735s run at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:71 1735s invoke at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:45 1735s
at /usr/bin/rspec:4 1735s 1735s /usr/share/jruby/lib/ruby/stdlib/rubygems/core_ext/kernel_require.rb:85: warning: loading in progress, circular require considered harmful - /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/matchers/built_in/yield.rb require at org/jruby/RubyKernel.java:1184 1735s require at /usr/share/jruby/lib/ruby/stdlib/rubygems/core_ext/kernel_require.rb:85 1735s at /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/matchers/built_in/yield.rb:149 1735s at /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/matchers/built_in/yield.rb:7 1735s at /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/matchers/built_in/yield.rb:6 1735s
at /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/matchers/built_in/yield.rb:5 1735s require at org/jruby/RubyKernel.java:1184 1735s require at /usr/share/jruby/lib/ruby/stdlib/rubygems/core_ext/kernel_require.rb:85 1735s yield_with_args at /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/matchers.rb:920 1735s Concurrent at /tmp/autopkgtest.HpvjbB/build.Cej/src/spec/concurrent/mvar_spec.rb:78 1735s instance_exec at org/jruby/RubyBasicObject.java:2620 1735s run at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:263 1735s with_around_and_singleton_context_hooks at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:511 1735s with_around_example_hooks at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:468 1735s run at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:486 1735s run_around_example_hooks_for at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:624 1735s run at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:486 1735s with_around_example_hooks at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:468 1735s with_around_and_singleton_context_hooks at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:511 1735s run at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:259 1735s run_examples at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:646 1735s map at org/jruby/RubyArray.java:2803 1735s run_examples at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:651 1735s run at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:607 1735s run at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608 1735s map at org/jruby/RubyArray.java:2803 1735s run at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608 1735s run_specs at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:121 1735s map at org/jruby/RubyArray.java:2803 1735s run_specs at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:145 1735s with_suite_hooks at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/configuration.rb:2091 1735s run_specs at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:116 1735s report at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/reporter.rb:74 1735s run_specs at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:115 1735s run at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:89 1735s run at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:71 1735s invoke at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:45 1735s
at /usr/bin/rspec:4 1735s 1735s yields current value to the block and puts back value 1735s puts back value even if an exception is raised 1735s returns the returned value of the block 1735s /usr/share/jruby/lib/ruby/stdlib/rubygems/core_ext/kernel_require.rb:85: warning: loading in progress, circular require considered harmful - /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/matchers/built_in/yield.rb require at org/jruby/RubyKernel.java:1184 1735s require at /usr/share/jruby/lib/ruby/stdlib/rubygems/core_ext/kernel_require.rb:85 1735s at /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/matchers/built_in/yield.rb:296 1735s at /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/matchers/built_in/yield.rb:7 1735s at /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/matchers/built_in/yield.rb:6 1735s
at /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/matchers/built_in/yield.rb:5 1735s require at org/jruby/RubyKernel.java:1184 1735s require at /usr/share/jruby/lib/ruby/stdlib/rubygems/core_ext/kernel_require.rb:85 1735s yield_with_args at /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/matchers.rb:920 1735s Concurrent at /tmp/autopkgtest.HpvjbB/build.Cej/src/spec/concurrent/mvar_spec.rb:78 1735s instance_exec at org/jruby/RubyBasicObject.java:2620 1735s run at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:263 1735s with_around_and_singleton_context_hooks at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:511 1735s with_around_example_hooks at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:468 1735s run at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:486 1735s run_around_example_hooks_for at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:624 1735s run at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:486 1735s with_around_example_hooks at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:468 1735s with_around_and_singleton_context_hooks at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:511 1735s run at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:259 1735s run_examples at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:646 1735s map at org/jruby/RubyArray.java:2803 1735s run_examples at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:651 1735s run at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:607 1735s run at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608 1735s map at org/jruby/RubyArray.java:2803 1735s run at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608 1735s run_specs at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:121 1735s map at org/jruby/RubyArray.java:2803 1735s run_specs at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:145 1735s with_suite_hooks at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/configuration.rb:2091 1735s run_specs at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:116 1735s report at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/reporter.rb:74 1735s run_specs at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:115 1735s run at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:89 1735s run at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:71 1735s invoke at /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:45 1735s
at /usr/bin/rspec:4 1735s 1736s returns TIMEOUT on timeout on an empty MVar 1736s #put 1736s sets the MVar to be empty 1736s sets a new value on an empty MVar 1736s waits for another thread to #take 1736s returns TIMEOUT on timeout on a full MVar 1736s returns the value 1736s #empty? 1736s returns true on an empty MVar 1736s returns false on a full MVar 1736s #full? 1736s returns false on an empty MVar 1736s returns true on a full MVar 1736s #modify 1736s raises an exception when no block given 1736s modifies a full MVar 1736s returns the unmodified value 1736s waits for another thread to #put 1737s is atomic 1738s returns TIMEOUT on timeout on an empty MVar 1738s #try_put! 1738s returns true an empty MVar 1738s returns false on a full MVar 1738s sets an empty MVar to be full 1738s #try_take! 1738s returns EMPTY an empty MVar 1738s returns the value on a full MVar 1738s sets a full MVar to be empty 1738s #set! 1738s sets an empty MVar to be full 1738s sets a full MVar to be full 1738s returns EMPTY on an empty MVar 1738s returns the original value on a full MVar 1738s #modify! 1738s raises an exception when no block given 1738s modifies a full MVar 1738s modifies an empty MVar 1738s can be used to set a full MVar to empty 1738s can be used to set an empty MVar to empty 1738s returns the unmodified value 1738s spurious wake ups 1738s #take 1738s waits for another thread to #put 1739s returns TIMEOUT on timeout on an empty MVar 1739s #modify 1739s waits for another thread to #put 1740s returns TIMEOUT on timeout on an empty MVar 1740s #put 1741s waits for another thread to #take 1741s returns TIMEOUT on timeout on a full MVar (FAILED - 17) 1741s 1741s Concurrent::Options 1741s .executor_from_options 1741s returns the given :executor 1741s returns the global io executor when :executor is :io 1741s returns the global fast executor when :executor is :fast 1741s returns an immediate executor when :executor is :immediate 1741s raises an exception when :executor is an unrecognized symbol 1741s 1741s Concurrent::ProcessingActor 1742s is expected to eq "ab" 1742s 1742s Concurrent::Promise 1742s it should behave like ivar 1742s it should behave like obligation 1742s #state 1742s is :pending when first created 1742s is :fulfilled when the handler completes 1742s is :rejected when the handler raises an exception 1742s #value 1742s returns nil when reaching the optional timeout value 1742s returns immediately when timeout is zero 1747s returns the value when fulfilled before timeout 1747s returns nil when timeout reached 1747s is nil when :pending 1753s blocks the caller when :pending and timeout is nil 1753s is nil when :rejected 1753s is set to the return value of the block when :fulfilled 1753s #reason 1753s is nil when :pending 1753s is nil when :fulfilled 1753s is set to error object of the exception when :rejected 1753s it should behave like dereferenceable 1754s defaults :dup_on_deref to false 1754s calls #dup when the :dup_on_deref option is true 1755s defaults :freeze_on_deref to false 1755s calls #freeze when the :freeze_on_deref option is true 1756s defaults :copy_on_deref to nil 1756s calls the block when the :copy_on_deref option is passed a proc 1756s calls the :copy block first followed by #dup followed by #freeze 1757s does not call #dup when #dup_on_deref is set and the value is nil 1757s does not call #freeze when #freeze_on_deref is set and the value is nil 1757s does not call the #copy_on_deref block when the value is nil 1758s supports dereference flags with observers 1758s it should behave like observable 1758s #add_observer 1758s adds an observer if called before first notification 1758s adds an observer with :func if called before first notification 1758s creates an observer from a block if called before first notification 1758s raises an exception if not given an observer or a block 1758s raises an exception when given both an observer and a block 1758s #delete_observer 1758s deletes the given observer if called before first notification 1758s returns the removed observer if found in the observer set 1758s returns the given observer even when not found in the observer set 1758s #delete_observers 1758s deletes all observers when called before first notification 1758s returns self 1758s #count_observers 1758s returns zero for a new observable object 1758s returns a count of registered observers if called before first notification 1758s returns zero after #delete_observers has been called 1758s first notification 1758s calls the #update method on all observers without a specified :func 1758s calls the appropriate function on all observers which specified a :func 1759s calls the proc for all observers added as a block 1760s does not notify any observers removed with #delete_observer 1761s does not notify any observers after #delete_observers called 1761s initialization 1761s sets the state to incomplete 1761s #set 1761s sets the state to be fulfilled 1761s sets the value 1761s raises an exception if set more than once 1761s returns self 1762s fulfils when given a block which executes successfully 1762s rejects when given a block which raises an exception 1762s raises an exception when given a value and a block 1762s raises an exception when given neither a value nor a block 1762s #fail 1762s sets the state to be rejected 1762s sets the value to be nil 1762s sets the reason to the given exception 1762s raises an exception if set more than once 1762s defaults the reason to a StandardError 1763s returns self 1763s #try_set 1763s when unset 1763s assigns the value 1763s assigns the block result 1763s returns true 1763s when fulfilled 1763s does not assign the value 1763s does not assign the block result 1763s returns false 1763s when rejected 1763s does not assign the value 1763s does not assign the block result 1763s has a nil value 1763s returns false 1763s it should behave like thread_arguments 1763s passes an empty array when opts is not given 1763s passes an empty array when opts is an empty hash 1763s passes an empty array when there is no :args key 1763s passes an empty array when the :args key has a nil value 1763s passes a one-element array when the :args key has a non-array value 1763s passes an array when when the :args key has an array value 1763s passes the given array when the :args key has a complex array value 1763s allows the given arguments array to be dereferenced 1763s initializers 1763s .fulfill 1763s should return a Promise 1763s should return a fulfilled Promise 1763s should return a Promise with set value 1763s .reject 1763s should return a Promise 1763s should return a rejected Promise 1763s should return a Promise with set reason 1763s .new 1763s should return an unscheduled Promise 1763s .execute 1763s creates a new Promise 1763s passes the block to the new Promise 1763s calls #execute on the new Promise 1763s #execute 1763s unscheduled 1764s sets the promise to :pending 1764s posts the block given in construction 1764s pending 1764s sets the promise to :pending 1764s does not post again 1764s with children 1764s when called on the root 1765s should set all promises to :pending 1765s when called on a child 1766s should set all promises to :pending 1766s when called on child after parent completes 1766s sets state to :pending immediately 1766s #then 1766s returns a new promise when a block is passed 1766s returns a new promise when a rescuer is passed 1766s returns a new promise when a block and rescuer are passed 1766s returns a new promise when a block, rescuer and executor are passed 1766s supports setting the executor using a named parameter 1766s should have block or rescuers 1767s can be called more than once 1767s unscheduled 1767s returns a new promise 1767s returns an unscheduled promise 1767s pending 1767s returns a new promise 1767s returns a pending promise 1767s fulfilled 1767s returns a new Promise 1767s notifies fulfillment to new child 1767s rejected 1767s returns a new Promise when :rejected 1767s notifies rejection to new child 1767s on_success 1767s should have a block 1767s returns a new promise 1767s #rescue 1767s returns a new promise 1767s #flat_map 1767s returns a promise 1767s succeeds if both promises succeed 1767s fails if the left promise fails 1767s fails if the right promise fails 1767s fails if the generating block fails 1767s #zip 1767s executes the returned Promise by default 1767s executes the returned Promise when execute is true 1767s does not execute the returned Promise when execute is false 1767s allows setting executor for Promise chain 1767s yields the results as an array 1767s fails if one component fails 1769s preserves ordering of the executed promises 1769s .zip 1769s executes the returned Promise by default 1769s executes the returned Promise when execute is true 1769s does not execute the returned Promise when execute is false 1769s allows setting executor for Promise chain 1769s yields the results as an array 1769s fails if one component fails 1769s preserves ordering of the executed promises 1769s aggregators 1769s .all? 1769s returns a new Promise 1769s does not execute the returned Promise 1769s executes the #then condition when all components succeed 1769s executes the #then condition when no promises are given 1770s executes the #rescue handler if even one component fails 1770s .any? 1770s returns a new Promise 1770s does not execute the returned Promise 1770s executes the #then condition when any components succeed 1770s executes the #then condition when no promises are given 1770s executes the #rescue handler if all componenst fail 1770s fulfillment 1770s passes the result of each block to all its children 1770s sets the promise value to the result if its block 1770s sets the promise state to :fulfilled if the block completes 1770s passes the last result through when a promise has no block 1770s uses result as fulfillment value when a promise has no block 1770s can manage long chain 1770s #set 1770s #can only be called on the root promise 1770s triggers children 1770s can be called with a block 1770s #fail 1770s can only be called on the root promise 1770s rejects children 1770s rejection 1770s passes the reason to all its children 1770s sets the promise value to the result if its block 1770s sets the promise state to :rejected if the block completes 1770s uses reason as rejection reason when a promise has no rescue callable 1770s rejects on Exception 1770s aliases 1770s aliases #realized? for #fulfilled? 1770s aliases #deref for #value 1770s aliases #catch for #rescue 1770s aliases #on_error for #rescue 1770s 1770s Concurrent::Promises 1770s zip_futures_over 1770s chain_resolvable 1770s event 1770s future 1770s .future 1770s executes 1770s executes with args 1770s .delay 1770s is expected to eq 2 1770s .schedule 1771s scheduled execution 1771s scheduled execution in graph 1772s .event 1772s is expected to equal true 1772s .future without block 1772s is expected to eq 0 1772s .any_resolved 1772s continues on first result 1772s .any_fulfilled 1772s continues on first result 1772s treats a resolved Event as a fulfilled Future 1772s treats a pending Event as a pending Future 1772s .zip 1772s waits for all results 1772s when a future raises an error 1772s raises a concurrent error 1772s when deeply nested 1772s raises the original error 1772s .zip_events 1772s waits for all and returns event 1772s .rejected_future 1772s raises the correct error when passed an unraised error 1772s Future 1772s has sync and async callbacks 1772s wait supports setting timeout 1772s wait! supports setting timeout 1772s value supports setting timeout 1772s value! supports setting timeout 1772s reason supports setting timeout 1772s result supports setting timeout (FAILED - 18) 1772s chains 1772s chains with correct arguments 1772s constructs promise like tree 1772s allows graphs 1772s resolves future when Exception raised 1772s runs 1773s can be risen when rejected 1773s #flat 1773s returns value of inner future 1773s propagates rejection of inner future 1773s it propagates rejection of the future which was suppose to provide inner future 1773s rejects if inner value is not a future 1773s accepts inner event 1773s propagates requests for values to delayed futures 1773s has shortcuts 1773s ResolvableEvent 1773s #wait 1773s #resolve(raise_on_reassign = true) 1773s #resolve(raise_on_reassign = false) 1773s reservation 1773s ResolvableFuture 1773s #wait 1773s #wait! 1773s #value 1773s #value! 1773s #reason 1773s result 1773s reservation 1773s atomic_resolution 1773s interoperability 1773s with erlang actor 1773s with channel 1773s value! 1773s does not return spuriously with timeout 1774s does not return spuriously without timeout 1774s 1774s Concurrent::ScheduledTask 1774s behavior 1774s it should behave like obligation 1774s #state 1774s is :pending when first created 1774s is :fulfilled when the handler completes 1774s is :rejected when the handler raises an exception 1774s #value 1774s returns nil when reaching the optional timeout value 1774s returns immediately when timeout is zero 1775s returns the value when fulfilled before timeout 1775s returns nil when timeout reached 1775s is nil when :pending 1776s blocks the caller when :pending and timeout is nil 1776s is nil when :rejected 1776s is set to the return value of the block when :fulfilled 1776s #reason 1776s is nil when :pending 1776s is nil when :fulfilled 1776s is set to error object of the exception when :rejected 1776s it should behave like dereferenceable 1776s defaults :dup_on_deref to false 1776s calls #dup when the :dup_on_deref option is true 1776s defaults :freeze_on_deref to false 1776s calls #freeze when the :freeze_on_deref option is true 1776s defaults :copy_on_deref to nil 1776s calls the block when the :copy_on_deref option is passed a proc 1776s calls the :copy block first followed by #dup followed by #freeze 1776s does not call #dup when #dup_on_deref is set and the value is nil 1776s does not call #freeze when #freeze_on_deref is set and the value is nil 1776s does not call the #copy_on_deref block when the value is nil 1776s supports dereference flags with observers 1776s it should behave like observable 1776s #add_observer 1776s adds an observer if called before first notification 1776s adds an observer with :func if called before first notification 1776s creates an observer from a block if called before first notification 1776s raises an exception if not given an observer or a block 1776s raises an exception when given both an observer and a block 1776s #delete_observer 1776s deletes the given observer if called before first notification 1776s returns the removed observer if found in the observer set 1776s returns the given observer even when not found in the observer set 1776s #delete_observers 1776s deletes all observers when called before first notification 1776s returns self 1776s #count_observers 1776s returns zero for a new observable object 1776s returns a count of registered observers if called before first notification 1776s returns zero after #delete_observers has been called 1776s first notification 1776s calls the #update method on all observers without a specified :func 1777s calls the appropriate function on all observers which specified a :func 1777s calls the proc for all observers added as a block 1779s does not notify any observers removed with #delete_observer 1780s does not notify any observers after #delete_observers called 1780s #initialize 1780s accepts a number of seconds (from now) as the schedule time 1780s raises an exception when seconds is less than zero 1780s raises an exception when no block given 1780s sets the initial state to :unscheduled 1780s instance #execute 1780s does nothing unless the state is :unscheduled 1780s sets the sate to :pending 1780s returns self 1781s class #execute 1781s creates a new ScheduledTask 1781s passes the block to the new ScheduledTask 1781s calls #execute on the new ScheduledTask 1781s execution 1781s passes :args from the options to the block 1781s uses the :executor from the options 1781s uses the :timer_set from the options 1781s sets the state to :processing when the task is running 1781s #cancel 1781s returns false if the task has already been performed 1782s returns false if the task is already in progress 1782s cancels the task if it has not yet scheduled 1783s cancels the task if it has not yet started 1783s returns true on success 1783s sets the reason to CancelledOperationError when cancelled 1783s observation 1783s returns true for an observer added while :unscheduled 1783s returns true for an observer added while :pending 1784s returns true for an observer added while :processing 1784s notifies all observers on fulfillment 1784s notifies all observers on rejection 1784s 1784s Concurrent::Set 1784s .[] 1784s when initializing with no arguments 1784s is expected to be empty 1784s when initializing with arguments 1784s creates a set with the given objects 1784s .new 1784s when initializing with no arguments 1784s is expected to be empty 1784s when initializing with an enumerable object 1784s creates a set with the contents of the enumerable object 1784s when initializing with a block argument 1784s creates a set with the contents of the enumerable object 1784s concurrency 1788s #add and #delete 1788s force context switch 1794s #each 1794s 1794s Concurrent::SettableStruct 1794s it should behave like struct 1794s definition 1794s registers the class when given a class name 1794s /tmp/autopkgtest.HpvjbB/build.Cej/src/spec/concurrent/struct_shared.rb:15: warning: already initialized constant ValidClassName2 1794s registers the class when given a class name which is defined in the ancestors 1794s creates an anonymous class when given at least one member 1794s raises an exception when given an invalid class name 1794s defines a getter for each member 1794s raises an exception when given no members 1794s raise an exception when given an invalid member 1794s evalues a given block against the new class 1794s construction 1794s sets all absent members to nil 1794s sets all given members in order 1794s raises an exception when extra members are given 1794s properties 1794s #length 1794s returns the number of struct members 1794s #members 1794s returns the struct members as an array of symbols 1794s returns a different object than the array passed at definition 1794s #size 1794s returns the number of struct members 1794s #values 1794s returns the values of the struct as an array in order 1794s #values_at 1794s returns the value at the given offset 1794s returns the values at multiple given offsets 1794s returns values at offsets in a given range 1795s returns values for multiple ranges 1795s returns values for ranges and offsets 1795s accessors 1795s #[member] 1795s retrieves the value when given a valid symbol member 1795s retrieves the value when given a valid string member 1795s raises an exception when given a non-existent symbol member 1795s raises an exception when given a non-existent string member 1795s #[index] 1795s retrieves the value when given a valid index 1795s raises an exception when given an out-of-bound index 1795s comparison 1795s #== 1795s returns true if other has same struct subclass and equal values 1795s returns false if other has different struct subclass 1795s returns false if other has different values 1795s #!= 1795s returns false if other has same struct subclass and equal values 1795s returns true if other has different struct subclass 1795s returns true if other has different values 1795s enumeration 1795s #each 1795s yields the value of each struct member in order 1795s returns an enumerator when no block is given 1795s #each_pair 1795s yields the name and value of each struct member in order 1795s returns an enumerator when no block is given 1795s #select 1795s yields each value 1795s returns an Array with the values from for which the block returns true 1795s returns an enumerator when no block is given 1795s conversion 1795s #to_s 1795s includes the name of the class when registered 1795s includes the names of all members 1795s includes all values 1795s returns the same string as #inspect 1795s #to_a 1795s returns the to_a for this struct as an array 1795s #to_h 1795s returns a Hash containing the names and values in order 1795s copy 1795s #dup 1795s shallowly duplicates all members along with the struct 1795s discards frozen state of the struct 1795s retains frozen state of members 1795s discards singleton class 1795s copies the singleton class of members 1795s #clone 1795s shallowly clones all members along with the struct 1795s retains frozen state 1795s copies the singleton class 1795s copies the singleton class of members 1795s it should behave like mergeable_struct 1795s #merge 1795s updates all members with the new values from a given hash 1795s calls the given block for each key in `other` 1795s retains the value for all members not without values in the given hash 1795s raises an exception when given a hash with members not in the struct 1795s returns a new object 1795s definition 1795s defines a setter for each member 1795s #[member]= 1795s sets the value when given a valid symbol member 1795s sets the value when given a valid string member 1795s raises an exception when given a non-existent symbol member 1795s raises an exception when given a non-existent string member 1795s raises an exception when given a symbol member that has already been set 1795s raises an exception when given a string member that has already been set 1795s #[index]= 1795s sets the value when given a valid index 1795s raises an exception when given an out-of-bound index 1795s raises an exception when given an index that has already been set 1796s synchronization 1797s protects #values 1797s protects #values_at 1797s protects #[index] 1797s protects #[member] 1797s protects getter methods 1797s protects #[index]= 1797s protects #[member]= 1797s protects getter methods 1797s protects #to_s 1797s protects #inspect 1797s protects #to_h 1797s protects #merge 1797s protects #== 1797s protects #each 1797s protects #each_pair 1797s protects #select 1797s protects #initialize_copy 1797s copy 1797s #dup 1797s retains settability of members 1797s #clone 1797s retains settability of members 1797s 1797s Concurrent::Synchronization 1797s Concurrent::Synchronization::Object 1797s does not ensure visibility when not needed 1797s does ensure visibility when specified 1797s does ensure visibility when specified in a parent 1797s does ensure visibility once when specified in child again 1797s it should behave like attr_volatile 1798s older writes are always visible 1798s Concurrent::Synchronization::LockableObject 1798s final field always visible 1798s #wait 1798s puts the current thread to sleep 1799s allows the sleeping thread to be killed 1799s releases the lock on the current object 1799s can be called from within a #synchronize block 1799s #synchronize 1799s allows only one thread to execute count 1799s signaling 1799s for now pending, tested pretty well by Event (PENDING: Not yet implemented) 1799s it should behave like attr_volatile 1799s older writes are always visible 1799s Concurrent::Synchronization::Volatile module 1799s it should behave like attr_volatile 1799s older writes are always visible 1799s attr_atomic 1799s is expected to be == b 1799s 1799s Concurrent::SynchronizedDelegator 1799s wraps array 1799s synchronizes access 1800s synchronizes access with block 1800s 1800s Concurrent 1800s Throttle 1800s acquiring (FAILED - 19) 1800s #to_s 1800s #on 1801s capacity limited 1801s 1801s Concurrent::TimerTask 1801s dereferenceable 1801s it should behave like dereferenceable 1802s defaults :dup_on_deref to false 1803s calls #dup when the :dup_on_deref option is true 1803s defaults :freeze_on_deref to false 1804s calls #freeze when the :freeze_on_deref option is true 1804s defaults :copy_on_deref to nil 1805s calls the block when the :copy_on_deref option is passed a proc 1805s calls the :copy block first followed by #dup followed by #freeze 1805s does not call #dup when #dup_on_deref is set and the value is nil 1806s does not call #freeze when #freeze_on_deref is set and the value is nil 1806s does not call the #copy_on_deref block when the value is nil 1807s supports dereference flags with observers 1807s observable 1807s it should behave like observable 1807s #add_observer 1807s adds an observer if called before first notification 1807s adds an observer with :func if called before first notification 1807s creates an observer from a block if called before first notification 1807s raises an exception if not given an observer or a block 1807s raises an exception when given both an observer and a block 1807s #delete_observer 1807s deletes the given observer if called before first notification 1807s returns the removed observer if found in the observer set 1807s returns the given observer even when not found in the observer set 1807s #delete_observers 1807s deletes all observers when called before first notification 1807s returns self 1807s #count_observers 1807s returns zero for a new observable object 1807s returns a count of registered observers if called before first notification 1807s returns zero after #delete_observers has been called 1807s first notification 1807s calls the #update method on all observers without a specified :func 1807s calls the appropriate function on all observers which specified a :func 1808s calls the proc for all observers added as a block 1809s does not notify any observers removed with #delete_observer 1811s does not notify any observers after #delete_observers called 1811s created with #new 1811s #initialize 1811s raises an exception if no block given 1811s raises an exception if :execution_interval is not greater than zero 1811s raises an exception if :execution_interval is not an integer 1811s uses the default execution interval when no interval is given 1811s uses the given execution interval 1811s raises an exception if :interval_type is not a valid value 1811s uses the default :interval_type when no type is given 1811s uses the given interval type 1811s #kill 1811s returns true on success 1811s #shutdown 1811s TimeTask timeouts are now ignored as these were not able to be implemented correctly 1811s returns true on success 1811s arguments 1811s raises an exception if no block given 1811s TimeTask timeouts are now ignored as these were not able to be implemented correctly 1811s #execution_interval is writeable 1811s raises on invalid interval_type 1811s #timeout_interval being written produces a warning 1811s execution 1811s runs the block immediately when the :run_now option is true 1811s waits for :execution_interval seconds when the :run_now option is false 1812s waits for :execution_interval seconds when the :run_now option is not given 1812s passes a "self" reference to the block as the sole argument 1812s uses the global executor by default 1812s uses a custom executor when given 1812s uses a fixed delay when set 1813s uses a fixed rate when set 1813s observation 1813s notifies all observers on success 1813s notifies all observers on error 1813s 1813s Concurrent::TVar 1813s #initialize 1813s accepts an initial value 1813s #value 1813s gets the value 1813s #value= 1813s sets the value 1813s 1813s #atomically 1813s raises an exception when no block given 1813s raises the same exception that was raised in Concurrent::atomically 1813s retries on abort 1813s commits writes if the transaction succeeds 1813s undoes writes if the transaction is aborted 1813s provides atomicity 1813s nests 1813s reflects transactional writes from within the same transaction 1813s 1813s #abort_transaction 1813s raises an exception outside an #atomically block 1813s 1813s #leave_transaction 1813s raises an exception outside an #atomically block 1813s neither commits nor aborts a transaction 1813s 1813s #processor_count 1813s retuns a positive integer 1813s 1813s #physical_processor_count 1813s retuns a positive integer 1813s 1813s #cpu_quota 1813s returns #compute_cpu_quota 1813s returns nil if no quota is detected 1813s returns nil if cgroups v2 sets no limit 1813s returns a float if cgroups v2 sets a limit 1814s returns nil if cgroups v1 sets no limit 1814s returns nil if cgroups v1 and cpu.cfs_quota_us is -1 1814s returns a float if cgroups v1 sets a limit 1814s 1814s #available_processor_count 1814s returns #processor_count if #cpu_quota is nil 1814s returns #processor_count if #cpu_quota is higher 1814s returns #cpu_quota if #cpu_quota is lower than #processor_count 1814s 1814s #cpu_shares 1814s returns a float when cgroups v2 sets a cpu.weight 1814s returns a float if cgroups v1 sets a cpu.shares 1823s 1823s Failures: 1823s 1823s 1) Concurrent::RubyExchanger behaves like exchanger #exchange behaves like exchanger method with finite timeout blocks until timeout 1823s Failure/Error: expect(duration).to be_within(0.05).of(0.1) 1823s expected 0.15866959599998154 to be within 0.05 of 0.1 1823s Shared Example Group: "exchanger method with finite timeout" called from ./spec/concurrent/exchanger_spec.rb:173 1823s Shared Example Group: :exchanger called from ./spec/concurrent/exchanger_spec.rb:206 1823s # /usr/share/rubygems-integration/all/gems/rspec-support-3.13.1/lib/rspec/support.rb:110:in `block in Support' 1823s # /usr/share/rubygems-integration/all/gems/rspec-support-3.13.1/lib/rspec/support.rb:119:in `notify_failure' 1823s # /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/expectations/fail_with.rb:35:in `fail_with' 1823s # /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/expectations/handler.rb:40:in `handle_failure' 1823s # /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/expectations/handler.rb:56:in `block in handle_matcher' 1823s # /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/expectations/handler.rb:27:in `with_matcher' 1823s # /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/expectations/handler.rb:48:in `handle_matcher' 1823s # /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/expectations/expectation_target.rb:65:in `to' 1823s # /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/expectations/expectation_target.rb:101:in `to' 1823s # ./spec/concurrent/exchanger_spec.rb:69:in `block in
' 1823s # org/jruby/RubyBasicObject.java:2620:in `instance_exec' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:263:in `block in run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:511:in `block in with_around_and_singleton_context_hooks' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:468:in `block in with_around_example_hooks' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:486:in `block in run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:624:in `run_around_example_hooks_for' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:486:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:468:in `with_around_example_hooks' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:511:in `with_around_and_singleton_context_hooks' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:259:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:646:in `block in run_examples' 1823s # org/jruby/RubyArray.java:2803:in `map' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:651:in `run_examples' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:607:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `block in run' 1823s # org/jruby/RubyArray.java:2803:in `map' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `block in run' 1823s # org/jruby/RubyArray.java:2803:in `map' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `block in run' 1823s # org/jruby/RubyArray.java:2803:in `map' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:121:in `block in run_specs' 1823s # org/jruby/RubyArray.java:2803:in `map' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:121:in `block in run_specs' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/configuration.rb:2091:in `with_suite_hooks' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:116:in `block in run_specs' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/reporter.rb:74:in `report' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:115:in `run_specs' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:89:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:71:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:45:in `invoke' 1823s # /usr/bin/rspec:4:in `
' 1823s 1823s 2) Concurrent::RubyExchanger behaves like exchanger #exchange! behaves like exchanger method with finite timeout blocks until timeout 1823s Failure/Error: expect(duration).to be_within(0.05).of(0.1) 1823s expected 0.2034774070000367 to be within 0.05 of 0.1 1823s Shared Example Group: "exchanger method with finite timeout" called from ./spec/concurrent/exchanger_spec.rb:185 1823s Shared Example Group: :exchanger called from ./spec/concurrent/exchanger_spec.rb:206 1823s # /usr/share/rubygems-integration/all/gems/rspec-support-3.13.1/lib/rspec/support.rb:110:in `block in Support' 1823s # /usr/share/rubygems-integration/all/gems/rspec-support-3.13.1/lib/rspec/support.rb:119:in `notify_failure' 1823s # /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/expectations/fail_with.rb:35:in `fail_with' 1823s # /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/expectations/handler.rb:40:in `handle_failure' 1823s # /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/expectations/handler.rb:56:in `block in handle_matcher' 1823s # /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/expectations/handler.rb:27:in `with_matcher' 1823s # /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/expectations/handler.rb:48:in `handle_matcher' 1823s # /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/expectations/expectation_target.rb:65:in `to' 1823s # /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/expectations/expectation_target.rb:101:in `to' 1823s # ./spec/concurrent/exchanger_spec.rb:69:in `block in
' 1823s # org/jruby/RubyBasicObject.java:2620:in `instance_exec' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:263:in `block in run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:511:in `block in with_around_and_singleton_context_hooks' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:468:in `block in with_around_example_hooks' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:486:in `block in run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:624:in `run_around_example_hooks_for' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:486:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:468:in `with_around_example_hooks' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:511:in `with_around_and_singleton_context_hooks' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:259:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:646:in `block in run_examples' 1823s # org/jruby/RubyArray.java:2803:in `map' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:651:in `run_examples' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:607:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `block in run' 1823s # org/jruby/RubyArray.java:2803:in `map' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `block in run' 1823s # org/jruby/RubyArray.java:2803:in `map' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `block in run' 1823s # org/jruby/RubyArray.java:2803:in `map' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:121:in `block in run_specs' 1823s # org/jruby/RubyArray.java:2803:in `map' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:121:in `block in run_specs' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/configuration.rb:2091:in `with_suite_hooks' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:116:in `block in run_specs' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/reporter.rb:74:in `report' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:115:in `run_specs' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:89:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:71:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:45:in `invoke' 1823s # /usr/bin/rspec:4:in `
' 1823s 1823s 3) Concurrent::JavaExchanger behaves like exchanger #exchange behaves like exchanger method with finite timeout blocks until timeout 1823s Failure/Error: expect(duration).to be_within(0.05).of(0.1) 1823s expected 0.1579122409999627 to be within 0.05 of 0.1 1823s Shared Example Group: "exchanger method with finite timeout" called from ./spec/concurrent/exchanger_spec.rb:173 1823s Shared Example Group: :exchanger called from ./spec/concurrent/exchanger_spec.rb:244 1823s # /usr/share/rubygems-integration/all/gems/rspec-support-3.13.1/lib/rspec/support.rb:110:in `block in Support' 1823s # /usr/share/rubygems-integration/all/gems/rspec-support-3.13.1/lib/rspec/support.rb:119:in `notify_failure' 1823s # /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/expectations/fail_with.rb:35:in `fail_with' 1823s # /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/expectations/handler.rb:40:in `handle_failure' 1823s # /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/expectations/handler.rb:56:in `block in handle_matcher' 1823s # /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/expectations/handler.rb:27:in `with_matcher' 1823s # /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/expectations/handler.rb:48:in `handle_matcher' 1823s # /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/expectations/expectation_target.rb:65:in `to' 1823s # /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/expectations/expectation_target.rb:101:in `to' 1823s # ./spec/concurrent/exchanger_spec.rb:69:in `block in
' 1823s # org/jruby/RubyBasicObject.java:2620:in `instance_exec' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:263:in `block in run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:511:in `block in with_around_and_singleton_context_hooks' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:468:in `block in with_around_example_hooks' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:486:in `block in run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:624:in `run_around_example_hooks_for' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:486:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:468:in `with_around_example_hooks' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:511:in `with_around_and_singleton_context_hooks' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:259:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:646:in `block in run_examples' 1823s # org/jruby/RubyArray.java:2803:in `map' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:651:in `run_examples' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:607:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `block in run' 1823s # org/jruby/RubyArray.java:2803:in `map' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `block in run' 1823s # org/jruby/RubyArray.java:2803:in `map' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `block in run' 1823s # org/jruby/RubyArray.java:2803:in `map' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:121:in `block in run_specs' 1823s # org/jruby/RubyArray.java:2803:in `map' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:121:in `block in run_specs' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/configuration.rb:2091:in `with_suite_hooks' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:116:in `block in run_specs' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/reporter.rb:74:in `report' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:115:in `run_specs' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:89:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:71:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:45:in `invoke' 1823s # /usr/bin/rspec:4:in `
' 1823s 1823s 4) Concurrent::CachedThreadPool it should behave like thread_pool it should behave like executor_service auto terminate does not stop shutdown 1823s Failure/Error: Process.waitpid pid 1823s 1823s Timeout::Error: 1823s execution expired 1823s Shared Example Group: :executor_service called from ./spec/concurrent/executor/thread_pool_shared.rb:10 1823s Shared Example Group: :thread_pool called from ./spec/concurrent/executor/cached_thread_pool_spec.rb:17 1823s # ./spec/concurrent/executor/executor_service_shared.rb:48:in `block in waitpid' 1823s # ./spec/concurrent/executor/executor_service_shared.rb:48:in `block in
' 1823s # /usr/share/jruby/lib/ruby/stdlib/timeout.rb:189:in `block in timeout' 1823s # /usr/share/jruby/lib/ruby/stdlib/timeout.rb:36:in `block in catch' 1823s # /usr/share/jruby/lib/ruby/stdlib/timeout.rb:36:in `catch' 1823s # /usr/share/jruby/lib/ruby/stdlib/timeout.rb:36:in `catch' 1823s # /usr/share/jruby/lib/ruby/stdlib/timeout.rb:198:in `timeout' 1823s # ./spec/concurrent/executor/executor_service_shared.rb:44:in `block in
' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:263:in `block in instance_exec' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:263:in `block in run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:511:in `block in with_around_and_singleton_context_hooks' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:468:in `block in with_around_example_hooks' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:486:in `block in run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:624:in `run_around_example_hooks_for' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:486:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:468:in `with_around_example_hooks' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:511:in `with_around_and_singleton_context_hooks' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:259:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:646:in `block in run_examples' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:651:in `map' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:651:in `run_examples' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:607:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `block in run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `map' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `block in run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `map' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `block in run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `map' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:121:in `block in run_specs' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:121:in `block in map' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:121:in `block in run_specs' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/configuration.rb:2091:in `with_suite_hooks' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:116:in `block in run_specs' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/reporter.rb:74:in `report' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:115:in `run_specs' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:89:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:71:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:45:in `invoke' 1823s # /usr/bin/rspec:4:in `
' 1823s 1823s 5) Concurrent::FixedThreadPool it should behave like thread_pool it should behave like executor_service auto terminate does not stop shutdown 1823s Failure/Error: Process.waitpid pid 1823s 1823s Timeout::Error: 1823s execution expired 1823s Shared Example Group: :executor_service called from ./spec/concurrent/executor/thread_pool_shared.rb:10 1823s Shared Example Group: :thread_pool called from ./spec/concurrent/executor/fixed_thread_pool_spec.rb:16 1823s # ./spec/concurrent/executor/executor_service_shared.rb:48:in `block in waitpid' 1823s # ./spec/concurrent/executor/executor_service_shared.rb:48:in `block in
' 1823s # /usr/share/jruby/lib/ruby/stdlib/timeout.rb:189:in `block in timeout' 1823s # /usr/share/jruby/lib/ruby/stdlib/timeout.rb:36:in `block in catch' 1823s # /usr/share/jruby/lib/ruby/stdlib/timeout.rb:36:in `catch' 1823s # /usr/share/jruby/lib/ruby/stdlib/timeout.rb:36:in `catch' 1823s # /usr/share/jruby/lib/ruby/stdlib/timeout.rb:198:in `timeout' 1823s # ./spec/concurrent/executor/executor_service_shared.rb:44:in `block in
' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:263:in `block in instance_exec' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:263:in `block in run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:511:in `block in with_around_and_singleton_context_hooks' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:468:in `block in with_around_example_hooks' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:486:in `block in run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:624:in `run_around_example_hooks_for' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:486:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:468:in `with_around_example_hooks' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:511:in `with_around_and_singleton_context_hooks' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:259:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:646:in `block in run_examples' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:651:in `map' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:651:in `run_examples' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:607:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `block in run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `map' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `block in run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `map' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `block in run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `map' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:121:in `block in run_specs' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:121:in `block in map' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:121:in `block in run_specs' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/configuration.rb:2091:in `with_suite_hooks' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:116:in `block in run_specs' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/reporter.rb:74:in `report' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:115:in `run_specs' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:89:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:71:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:45:in `invoke' 1823s # /usr/bin/rspec:4:in `
' 1823s 1823s 6) Concurrent::ImmediateExecutor it should behave like executor_service auto terminate does not stop shutdown 1823s Failure/Error: Process.waitpid pid 1823s 1823s Timeout::Error: 1823s execution expired 1823s Shared Example Group: :executor_service called from ./spec/concurrent/executor/immediate_executor_spec.rb:10 1823s # ./spec/concurrent/executor/executor_service_shared.rb:48:in `block in waitpid' 1823s # ./spec/concurrent/executor/executor_service_shared.rb:48:in `block in
' 1823s # /usr/share/jruby/lib/ruby/stdlib/timeout.rb:189:in `block in timeout' 1823s # /usr/share/jruby/lib/ruby/stdlib/timeout.rb:36:in `block in catch' 1823s # /usr/share/jruby/lib/ruby/stdlib/timeout.rb:36:in `catch' 1823s # /usr/share/jruby/lib/ruby/stdlib/timeout.rb:36:in `catch' 1823s # /usr/share/jruby/lib/ruby/stdlib/timeout.rb:198:in `timeout' 1823s # ./spec/concurrent/executor/executor_service_shared.rb:44:in `block in
' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:263:in `block in instance_exec' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:263:in `block in run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:511:in `block in with_around_and_singleton_context_hooks' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:468:in `block in with_around_example_hooks' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:486:in `block in run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:624:in `run_around_example_hooks_for' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:486:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:468:in `with_around_example_hooks' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:511:in `with_around_and_singleton_context_hooks' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:259:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:646:in `block in run_examples' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:651:in `map' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:651:in `run_examples' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:607:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `block in run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `map' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `block in run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `map' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:121:in `block in run_specs' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:121:in `block in map' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:121:in `block in run_specs' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/configuration.rb:2091:in `with_suite_hooks' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:116:in `block in run_specs' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/reporter.rb:74:in `report' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:115:in `run_specs' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:89:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:71:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:45:in `invoke' 1823s # /usr/bin/rspec:4:in `
' 1823s 1823s 7) Concurrent::IndirectImmediateExecutor it should behave like executor_service auto terminate does not stop shutdown 1823s Failure/Error: Process.waitpid pid 1823s 1823s Timeout::Error: 1823s execution expired 1823s Shared Example Group: :executor_service called from ./spec/concurrent/executor/indirect_immediate_executor_spec.rb:10 1823s # ./spec/concurrent/executor/executor_service_shared.rb:48:in `block in waitpid' 1823s # ./spec/concurrent/executor/executor_service_shared.rb:48:in `block in
' 1823s # /usr/share/jruby/lib/ruby/stdlib/timeout.rb:189:in `block in timeout' 1823s # /usr/share/jruby/lib/ruby/stdlib/timeout.rb:36:in `block in catch' 1823s # /usr/share/jruby/lib/ruby/stdlib/timeout.rb:36:in `catch' 1823s # /usr/share/jruby/lib/ruby/stdlib/timeout.rb:36:in `catch' 1823s # /usr/share/jruby/lib/ruby/stdlib/timeout.rb:198:in `timeout' 1823s # ./spec/concurrent/executor/executor_service_shared.rb:44:in `block in
' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:263:in `block in instance_exec' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:263:in `block in run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:511:in `block in with_around_and_singleton_context_hooks' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:468:in `block in with_around_example_hooks' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:486:in `block in run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:624:in `run_around_example_hooks_for' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:486:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:468:in `with_around_example_hooks' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:511:in `with_around_and_singleton_context_hooks' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:259:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:646:in `block in run_examples' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:651:in `map' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:651:in `run_examples' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:607:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `block in run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `map' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `block in run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `map' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:121:in `block in run_specs' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:121:in `block in map' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:121:in `block in run_specs' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/configuration.rb:2091:in `with_suite_hooks' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:116:in `block in run_specs' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/reporter.rb:74:in `report' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:115:in `run_specs' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:89:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:71:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:45:in `invoke' 1823s # /usr/bin/rspec:4:in `
' 1823s 1823s 8) Concurrent::JavaSingleThreadExecutor it should behave like executor_service auto terminate does not stop shutdown 1823s Failure/Error: Process.waitpid pid 1823s 1823s Timeout::Error: 1823s execution expired 1823s Shared Example Group: :executor_service called from ./spec/concurrent/executor/java_single_thread_executor_spec.rb:17 1823s # ./spec/concurrent/executor/executor_service_shared.rb:48:in `block in waitpid' 1823s # ./spec/concurrent/executor/executor_service_shared.rb:48:in `block in
' 1823s # /usr/share/jruby/lib/ruby/stdlib/timeout.rb:189:in `block in timeout' 1823s # /usr/share/jruby/lib/ruby/stdlib/timeout.rb:36:in `block in catch' 1823s # /usr/share/jruby/lib/ruby/stdlib/timeout.rb:36:in `catch' 1823s # /usr/share/jruby/lib/ruby/stdlib/timeout.rb:36:in `catch' 1823s # /usr/share/jruby/lib/ruby/stdlib/timeout.rb:198:in `timeout' 1823s # ./spec/concurrent/executor/executor_service_shared.rb:44:in `block in
' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:263:in `block in instance_exec' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:263:in `block in run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:511:in `block in with_around_and_singleton_context_hooks' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:468:in `block in with_around_example_hooks' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:486:in `block in run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:624:in `run_around_example_hooks_for' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:486:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:468:in `with_around_example_hooks' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:511:in `with_around_and_singleton_context_hooks' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:259:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:646:in `block in run_examples' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:651:in `map' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:651:in `run_examples' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:607:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `block in run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `map' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `block in run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `map' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:121:in `block in run_specs' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:121:in `block in map' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:121:in `block in run_specs' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/configuration.rb:2091:in `with_suite_hooks' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:116:in `block in run_specs' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/reporter.rb:74:in `report' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:115:in `run_specs' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:89:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:71:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:45:in `invoke' 1823s # /usr/bin/rspec:4:in `
' 1823s 1823s 9) Concurrent::JavaThreadPoolExecutor it should behave like thread_pool it should behave like executor_service auto terminate does not stop shutdown 1823s Failure/Error: Process.waitpid pid 1823s 1823s Timeout::Error: 1823s execution expired 1823s Shared Example Group: :executor_service called from ./spec/concurrent/executor/thread_pool_shared.rb:10 1823s Shared Example Group: :thread_pool called from ./spec/concurrent/executor/java_thread_pool_executor_spec.rb:25 1823s # ./spec/concurrent/executor/executor_service_shared.rb:48:in `block in waitpid' 1823s # ./spec/concurrent/executor/executor_service_shared.rb:48:in `block in
' 1823s # /usr/share/jruby/lib/ruby/stdlib/timeout.rb:189:in `block in timeout' 1823s # /usr/share/jruby/lib/ruby/stdlib/timeout.rb:36:in `block in catch' 1823s # /usr/share/jruby/lib/ruby/stdlib/timeout.rb:36:in `catch' 1823s # /usr/share/jruby/lib/ruby/stdlib/timeout.rb:36:in `catch' 1823s # /usr/share/jruby/lib/ruby/stdlib/timeout.rb:198:in `timeout' 1823s # ./spec/concurrent/executor/executor_service_shared.rb:44:in `block in
' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:263:in `block in instance_exec' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:263:in `block in run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:511:in `block in with_around_and_singleton_context_hooks' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:468:in `block in with_around_example_hooks' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:486:in `block in run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:624:in `run_around_example_hooks_for' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:486:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:468:in `with_around_example_hooks' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:511:in `with_around_and_singleton_context_hooks' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:259:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:646:in `block in run_examples' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:651:in `map' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:651:in `run_examples' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:607:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `block in run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `map' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `block in run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `map' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `block in run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `map' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:121:in `block in run_specs' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:121:in `block in map' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:121:in `block in run_specs' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/configuration.rb:2091:in `with_suite_hooks' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:116:in `block in run_specs' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/reporter.rb:74:in `report' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:115:in `run_specs' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:89:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:71:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:45:in `invoke' 1823s # /usr/bin/rspec:4:in `
' 1823s 1823s 10) Concurrent::JavaThreadPoolExecutor it should behave like thread_pool_executor #queue_length returns zero when there are no enqueued tasks 1823s Failure/Error: expect(subject.queue_length).to eq 0 1823s 1823s expected: 0 1823s got: 3 1823s 1823s (compared using ==) 1823s Shared Example Group: :thread_pool_executor called from ./spec/concurrent/executor/java_thread_pool_executor_spec.rb:27 1823s # /usr/share/rubygems-integration/all/gems/rspec-support-3.13.1/lib/rspec/support.rb:110:in `block in Support' 1823s # /usr/share/rubygems-integration/all/gems/rspec-support-3.13.1/lib/rspec/support.rb:119:in `notify_failure' 1823s # /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/expectations/fail_with.rb:35:in `fail_with' 1823s # /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/expectations/handler.rb:38:in `handle_failure' 1823s # /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/expectations/handler.rb:56:in `block in handle_matcher' 1823s # /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/expectations/handler.rb:27:in `with_matcher' 1823s # /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/expectations/handler.rb:48:in `handle_matcher' 1823s # /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/expectations/expectation_target.rb:65:in `to' 1823s # /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/expectations/expectation_target.rb:101:in `to' 1823s # ./spec/concurrent/executor/thread_pool_executor_shared.rb:211:in `block in
' 1823s # org/jruby/RubyBasicObject.java:2620:in `instance_exec' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:263:in `block in run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:511:in `block in with_around_and_singleton_context_hooks' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:468:in `block in with_around_example_hooks' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:486:in `block in run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:624:in `run_around_example_hooks_for' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:486:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:468:in `with_around_example_hooks' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:511:in `with_around_and_singleton_context_hooks' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:259:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:646:in `block in run_examples' 1823s # org/jruby/RubyArray.java:2803:in `map' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:651:in `run_examples' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:607:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `block in run' 1823s # org/jruby/RubyArray.java:2803:in `map' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `block in run' 1823s # org/jruby/RubyArray.java:2803:in `map' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:121:in `block in run_specs' 1823s # org/jruby/RubyArray.java:2803:in `map' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:121:in `block in run_specs' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/configuration.rb:2091:in `with_suite_hooks' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:116:in `block in run_specs' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/reporter.rb:74:in `report' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:115:in `run_specs' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:89:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:71:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:45:in `invoke' 1823s # /usr/bin/rspec:4:in `
' 1823s 1823s 11) Concurrent::RubySingleThreadExecutor it should behave like executor_service auto terminate does not stop shutdown 1823s Failure/Error: Process.waitpid pid 1823s 1823s Timeout::Error: 1823s execution expired 1823s Shared Example Group: :executor_service called from ./spec/concurrent/executor/ruby_single_thread_executor_spec.rb:15 1823s # ./spec/concurrent/executor/executor_service_shared.rb:48:in `block in waitpid' 1823s # ./spec/concurrent/executor/executor_service_shared.rb:48:in `block in
' 1823s # /usr/share/jruby/lib/ruby/stdlib/timeout.rb:189:in `block in timeout' 1823s # /usr/share/jruby/lib/ruby/stdlib/timeout.rb:36:in `block in catch' 1823s # /usr/share/jruby/lib/ruby/stdlib/timeout.rb:36:in `catch' 1823s # /usr/share/jruby/lib/ruby/stdlib/timeout.rb:36:in `catch' 1823s # /usr/share/jruby/lib/ruby/stdlib/timeout.rb:198:in `timeout' 1823s # ./spec/concurrent/executor/executor_service_shared.rb:44:in `block in
' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:263:in `block in instance_exec' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:263:in `block in run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:511:in `block in with_around_and_singleton_context_hooks' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:468:in `block in with_around_example_hooks' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:486:in `block in run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:624:in `run_around_example_hooks_for' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:486:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:468:in `with_around_example_hooks' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:511:in `with_around_and_singleton_context_hooks' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:259:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:646:in `block in run_examples' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:651:in `map' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:651:in `run_examples' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:607:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `block in run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `map' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `block in run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `map' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:121:in `block in run_specs' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:121:in `block in map' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:121:in `block in run_specs' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/configuration.rb:2091:in `with_suite_hooks' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:116:in `block in run_specs' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/reporter.rb:74:in `report' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:115:in `run_specs' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:89:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:71:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:45:in `invoke' 1823s # /usr/bin/rspec:4:in `
' 1823s 1823s 12) Concurrent::RubyThreadPoolExecutor it should behave like thread_pool it should behave like executor_service auto terminate does not stop shutdown 1823s Failure/Error: Process.waitpid pid 1823s 1823s Timeout::Error: 1823s execution expired 1823s Shared Example Group: :executor_service called from ./spec/concurrent/executor/thread_pool_shared.rb:10 1823s Shared Example Group: :thread_pool called from ./spec/concurrent/executor/ruby_thread_pool_executor_spec.rb:23 1823s # ./spec/concurrent/executor/executor_service_shared.rb:48:in `block in waitpid' 1823s # ./spec/concurrent/executor/executor_service_shared.rb:48:in `block in
' 1823s # /usr/share/jruby/lib/ruby/stdlib/timeout.rb:189:in `block in timeout' 1823s # /usr/share/jruby/lib/ruby/stdlib/timeout.rb:36:in `block in catch' 1823s # /usr/share/jruby/lib/ruby/stdlib/timeout.rb:36:in `catch' 1823s # /usr/share/jruby/lib/ruby/stdlib/timeout.rb:36:in `catch' 1823s # /usr/share/jruby/lib/ruby/stdlib/timeout.rb:198:in `timeout' 1823s # ./spec/concurrent/executor/executor_service_shared.rb:44:in `block in
' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:263:in `block in instance_exec' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:263:in `block in run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:511:in `block in with_around_and_singleton_context_hooks' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:468:in `block in with_around_example_hooks' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:486:in `block in run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:624:in `run_around_example_hooks_for' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:486:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:468:in `with_around_example_hooks' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:511:in `with_around_and_singleton_context_hooks' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:259:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:646:in `block in run_examples' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:651:in `map' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:651:in `run_examples' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:607:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `block in run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `map' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `block in run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `map' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `block in run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `map' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:121:in `block in run_specs' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:121:in `block in map' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:121:in `block in run_specs' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/configuration.rb:2091:in `with_suite_hooks' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:116:in `block in run_specs' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/reporter.rb:74:in `report' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:115:in `run_specs' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:89:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:71:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:45:in `invoke' 1823s # /usr/bin/rspec:4:in `
' 1823s 1823s 13) Concurrent::SerializedExecutionDelegator it should behave like executor_service auto terminate does not stop shutdown 1823s Failure/Error: Process.waitpid pid 1823s 1823s Timeout::Error: 1823s execution expired 1823s Shared Example Group: :executor_service called from ./spec/concurrent/executor/serialized_execution_spec.rb:11 1823s # ./spec/concurrent/executor/executor_service_shared.rb:48:in `block in waitpid' 1823s # ./spec/concurrent/executor/executor_service_shared.rb:48:in `block in
' 1823s # /usr/share/jruby/lib/ruby/stdlib/timeout.rb:189:in `block in timeout' 1823s # /usr/share/jruby/lib/ruby/stdlib/timeout.rb:36:in `block in catch' 1823s # /usr/share/jruby/lib/ruby/stdlib/timeout.rb:36:in `catch' 1823s # /usr/share/jruby/lib/ruby/stdlib/timeout.rb:36:in `catch' 1823s # /usr/share/jruby/lib/ruby/stdlib/timeout.rb:198:in `timeout' 1823s # ./spec/concurrent/executor/executor_service_shared.rb:44:in `block in
' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:263:in `block in instance_exec' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:263:in `block in run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:511:in `block in with_around_and_singleton_context_hooks' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:468:in `block in with_around_example_hooks' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:486:in `block in run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:624:in `run_around_example_hooks_for' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:486:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:468:in `with_around_example_hooks' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:511:in `with_around_and_singleton_context_hooks' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:259:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:646:in `block in run_examples' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:651:in `map' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:651:in `run_examples' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:607:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `block in run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `map' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `block in run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `map' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:121:in `block in run_specs' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:121:in `block in map' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:121:in `block in run_specs' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/configuration.rb:2091:in `with_suite_hooks' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:116:in `block in run_specs' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/reporter.rb:74:in `report' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:115:in `run_specs' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:89:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:71:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:45:in `invoke' 1823s # /usr/bin/rspec:4:in `
' 1823s 1823s 14) Concurrent::SimpleExecutorService it should behave like executor_service auto terminate does not stop shutdown 1823s Failure/Error: Process.waitpid pid 1823s 1823s Timeout::Error: 1823s execution expired 1823s Shared Example Group: :executor_service called from ./spec/concurrent/executor/simple_executor_service_spec.rb:11 1823s # ./spec/concurrent/executor/executor_service_shared.rb:48:in `block in waitpid' 1823s # ./spec/concurrent/executor/executor_service_shared.rb:48:in `block in
' 1823s # /usr/share/jruby/lib/ruby/stdlib/timeout.rb:189:in `block in timeout' 1823s # /usr/share/jruby/lib/ruby/stdlib/timeout.rb:36:in `block in catch' 1823s # /usr/share/jruby/lib/ruby/stdlib/timeout.rb:36:in `catch' 1823s # /usr/share/jruby/lib/ruby/stdlib/timeout.rb:36:in `catch' 1823s # /usr/share/jruby/lib/ruby/stdlib/timeout.rb:198:in `timeout' 1823s # ./spec/concurrent/executor/executor_service_shared.rb:44:in `block in
' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:263:in `block in instance_exec' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:263:in `block in run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:511:in `block in with_around_and_singleton_context_hooks' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:468:in `block in with_around_example_hooks' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:486:in `block in run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:624:in `run_around_example_hooks_for' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:486:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:468:in `with_around_example_hooks' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:511:in `with_around_and_singleton_context_hooks' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:259:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:646:in `block in run_examples' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:651:in `map' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:651:in `run_examples' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:607:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `block in run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `map' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `block in run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `map' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:121:in `block in run_specs' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:121:in `block in map' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:121:in `block in run_specs' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/configuration.rb:2091:in `with_suite_hooks' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:116:in `block in run_specs' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/reporter.rb:74:in `report' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:115:in `run_specs' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:89:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:71:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:45:in `invoke' 1823s # /usr/bin/rspec:4:in `
' 1823s 1823s 15) Concurrent::TimerSet execution executes a given task when given an interval in seconds, even if longer tasks have been scheduled 1823s Failure/Error: expect(latch.wait(0.2)).to be_truthy 1823s 1823s expected: truthy value 1823s got: false 1823s # /usr/share/rubygems-integration/all/gems/rspec-support-3.13.1/lib/rspec/support.rb:110:in `block in Support' 1823s # /usr/share/rubygems-integration/all/gems/rspec-support-3.13.1/lib/rspec/support.rb:119:in `notify_failure' 1823s # /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/expectations/fail_with.rb:35:in `fail_with' 1823s # /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/expectations/handler.rb:40:in `handle_failure' 1823s # /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/expectations/handler.rb:56:in `block in handle_matcher' 1823s # /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/expectations/handler.rb:27:in `with_matcher' 1823s # /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/expectations/handler.rb:48:in `handle_matcher' 1823s # /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/expectations/expectation_target.rb:65:in `to' 1823s # /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/expectations/expectation_target.rb:101:in `to' 1823s # ./spec/concurrent/executor/timer_set_spec.rb:64:in `block in Concurrent' 1823s # org/jruby/RubyBasicObject.java:2620:in `instance_exec' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:263:in `block in run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:511:in `block in with_around_and_singleton_context_hooks' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:468:in `block in with_around_example_hooks' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:486:in `block in run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:624:in `run_around_example_hooks_for' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:486:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:468:in `with_around_example_hooks' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:511:in `with_around_and_singleton_context_hooks' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:259:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:646:in `block in run_examples' 1823s # org/jruby/RubyArray.java:2803:in `map' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:651:in `run_examples' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:607:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `block in run' 1823s # org/jruby/RubyArray.java:2803:in `map' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:121:in `block in run_specs' 1823s # org/jruby/RubyArray.java:2803:in `map' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:121:in `block in run_specs' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/configuration.rb:2091:in `with_suite_hooks' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:116:in `block in run_specs' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/reporter.rb:74:in `report' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:115:in `run_specs' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:89:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:71:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:45:in `invoke' 1823s # /usr/bin/rspec:4:in `
' 1823s 1823s 16) Concurrent::TimerSet execution executes tasks with different times in schedule time 1823s Failure/Error: expect(delta).to be_within(0.1).of((i * interval) + 0.05) 1823s expected 0.567583 to be within 0.1 of 0.15000000000000002 1823s # /usr/share/rubygems-integration/all/gems/rspec-support-3.13.1/lib/rspec/support.rb:110:in `block in Support' 1823s # /usr/share/rubygems-integration/all/gems/rspec-support-3.13.1/lib/rspec/support.rb:119:in `notify_failure' 1823s # /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/expectations/fail_with.rb:35:in `fail_with' 1823s # /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/expectations/handler.rb:40:in `handle_failure' 1823s # /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/expectations/handler.rb:56:in `block in handle_matcher' 1823s # /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/expectations/handler.rb:27:in `with_matcher' 1823s # /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/expectations/handler.rb:48:in `handle_matcher' 1823s # /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/expectations/expectation_target.rb:65:in `to' 1823s # /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/expectations/expectation_target.rb:101:in `to' 1823s # ./spec/concurrent/executor/timer_set_spec.rb:115:in `block in Concurrent' 1823s # org/jruby/RubyRange.java:589:in `each' 1823s # ./spec/concurrent/executor/timer_set_spec.rb:113:in `block in Concurrent' 1823s # org/jruby/RubyBasicObject.java:2620:in `instance_exec' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:263:in `block in run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:511:in `block in with_around_and_singleton_context_hooks' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:468:in `block in with_around_example_hooks' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:486:in `block in run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:624:in `run_around_example_hooks_for' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:486:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:468:in `with_around_example_hooks' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:511:in `with_around_and_singleton_context_hooks' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:259:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:646:in `block in run_examples' 1823s # org/jruby/RubyArray.java:2803:in `map' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:651:in `run_examples' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:607:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `block in run' 1823s # org/jruby/RubyArray.java:2803:in `map' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:121:in `block in run_specs' 1823s # org/jruby/RubyArray.java:2803:in `map' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:121:in `block in run_specs' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/configuration.rb:2091:in `with_suite_hooks' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:116:in `block in run_specs' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/reporter.rb:74:in `report' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:115:in `run_specs' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:89:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:71:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:45:in `invoke' 1823s # /usr/bin/rspec:4:in `
' 1823s 1823s 17) Concurrent::MVar spurious wake ups #put returns TIMEOUT on timeout on a full MVar 1823s Failure/Error: expect(result).to be_nil 1823s 1823s expected: nil 1823s got: # 1823s # /usr/share/rubygems-integration/all/gems/rspec-support-3.13.1/lib/rspec/support.rb:110:in `block in Support' 1823s # /usr/share/rubygems-integration/all/gems/rspec-support-3.13.1/lib/rspec/support.rb:119:in `notify_failure' 1823s # /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/expectations/fail_with.rb:35:in `fail_with' 1823s # /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/expectations/handler.rb:40:in `handle_failure' 1823s # /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/expectations/handler.rb:56:in `block in handle_matcher' 1823s # /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/expectations/handler.rb:27:in `with_matcher' 1823s # /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/expectations/handler.rb:48:in `handle_matcher' 1823s # /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/expectations/expectation_target.rb:65:in `to' 1823s # /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/expectations/expectation_target.rb:101:in `to' 1823s # ./spec/concurrent/mvar_spec.rb:398:in `block in Concurrent' 1823s # org/jruby/RubyBasicObject.java:2620:in `instance_exec' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:263:in `block in run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:511:in `block in with_around_and_singleton_context_hooks' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:468:in `block in with_around_example_hooks' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:486:in `block in run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:624:in `run_around_example_hooks_for' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:486:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:468:in `with_around_example_hooks' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:511:in `with_around_and_singleton_context_hooks' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:259:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:646:in `block in run_examples' 1823s # org/jruby/RubyArray.java:2803:in `map' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:651:in `run_examples' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:607:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `block in run' 1823s # org/jruby/RubyArray.java:2803:in `map' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `block in run' 1823s # org/jruby/RubyArray.java:2803:in `map' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:121:in `block in run_specs' 1823s # org/jruby/RubyArray.java:2803:in `map' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:145:in `block in run_specs' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/configuration.rb:2091:in `with_suite_hooks' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:116:in `block in run_specs' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/reporter.rb:74:in `report' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:115:in `run_specs' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:89:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:71:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:45:in `invoke' 1823s # /usr/bin/rspec:4:in `
' 1823s 1823s 18) Concurrent::Promises Future result supports setting timeout 1823s Failure/Error: expect(future.send(method_with_timeout, 0.01)).to eq timeout_value 1823s 1823s expected: nil 1823s got: [true, false, nil] 1823s 1823s (compared using ==) 1823s # /usr/share/rubygems-integration/all/gems/rspec-support-3.13.1/lib/rspec/support.rb:110:in `block in Support' 1823s # /usr/share/rubygems-integration/all/gems/rspec-support-3.13.1/lib/rspec/support.rb:119:in `notify_failure' 1823s # /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/expectations/fail_with.rb:35:in `fail_with' 1823s # /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/expectations/handler.rb:38:in `handle_failure' 1823s # /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/expectations/handler.rb:56:in `block in handle_matcher' 1823s # /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/expectations/handler.rb:27:in `with_matcher' 1823s # /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/expectations/handler.rb:48:in `handle_matcher' 1823s # /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/expectations/expectation_target.rb:65:in `to' 1823s # /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/expectations/expectation_target.rb:101:in `to' 1823s # ./spec/concurrent/promises_spec.rb:374:in `block in
' 1823s # org/jruby/RubyBasicObject.java:2620:in `instance_exec' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:263:in `block in run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:511:in `block in with_around_and_singleton_context_hooks' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:468:in `block in with_around_example_hooks' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:486:in `block in run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:624:in `run_around_example_hooks_for' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:486:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:468:in `with_around_example_hooks' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:511:in `with_around_and_singleton_context_hooks' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:259:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:646:in `block in run_examples' 1823s # org/jruby/RubyArray.java:2803:in `map' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:651:in `run_examples' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:607:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `block in run' 1823s # org/jruby/RubyArray.java:2803:in `map' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:121:in `block in run_specs' 1823s # org/jruby/RubyArray.java:2803:in `map' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:145:in `block in run_specs' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/configuration.rb:2091:in `with_suite_hooks' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:116:in `block in run_specs' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/reporter.rb:74:in `report' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:115:in `run_specs' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:89:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:71:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:45:in `invoke' 1823s # /usr/bin/rspec:4:in `
' 1823s 1823s 19) Concurrent Throttle acquiring 1823s Failure/Error: expect(throttle.available_capacity).to eq 0 1823s 1823s expected: 0 1823s got: 1 1823s 1823s (compared using ==) 1823s # /usr/share/rubygems-integration/all/gems/rspec-support-3.13.1/lib/rspec/support.rb:110:in `block in Support' 1823s # /usr/share/rubygems-integration/all/gems/rspec-support-3.13.1/lib/rspec/support.rb:119:in `notify_failure' 1823s # /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/expectations/fail_with.rb:35:in `fail_with' 1823s # /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/expectations/handler.rb:38:in `handle_failure' 1823s # /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/expectations/handler.rb:56:in `block in handle_matcher' 1823s # /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/expectations/handler.rb:27:in `with_matcher' 1823s # /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/expectations/handler.rb:48:in `handle_matcher' 1823s # /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/expectations/expectation_target.rb:65:in `to' 1823s # /usr/share/rubygems-integration/all/gems/rspec-expectations-3.13.0/lib/rspec/expectations/expectation_target.rb:101:in `to' 1823s # ./spec/concurrent/throttle_spec.rb:39:in `block in
' 1823s # org/jruby/RubyBasicObject.java:2620:in `instance_exec' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:263:in `block in run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:511:in `block in with_around_and_singleton_context_hooks' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:468:in `block in with_around_example_hooks' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:486:in `block in run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:624:in `run_around_example_hooks_for' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/hooks.rb:486:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:468:in `with_around_example_hooks' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:511:in `with_around_and_singleton_context_hooks' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example.rb:259:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:646:in `block in run_examples' 1823s # org/jruby/RubyArray.java:2803:in `map' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:651:in `run_examples' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:607:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `block in run' 1823s # org/jruby/RubyArray.java:2803:in `map' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/example_group.rb:608:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:121:in `block in run_specs' 1823s # org/jruby/RubyArray.java:2803:in `map' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:145:in `block in run_specs' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/configuration.rb:2091:in `with_suite_hooks' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:116:in `block in run_specs' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/reporter.rb:74:in `report' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:115:in `run_specs' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:89:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:71:in `run' 1823s # /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib/rspec/core/runner.rb:45:in `invoke' 1823s # /usr/bin/rspec:4:in `
' 1824s 1824s Finished in 11 minutes 36 seconds (files took 50.31 seconds to load) 1824s 3009 examples, 19 failures, 17 pending 1824s 1824s Failed examples: 1824s 1824s rspec ./spec/concurrent/exchanger_spec.rb[1:1:1:2:1] # Concurrent::RubyExchanger behaves like exchanger #exchange behaves like exchanger method with finite timeout blocks until timeout 1824s rspec ./spec/concurrent/exchanger_spec.rb[1:1:2:2:1] # Concurrent::RubyExchanger behaves like exchanger #exchange! behaves like exchanger method with finite timeout blocks until timeout 1824s rspec ./spec/concurrent/exchanger_spec.rb[2:1:1:2:1] # Concurrent::JavaExchanger behaves like exchanger #exchange behaves like exchanger method with finite timeout blocks until timeout 1824s rspec ./spec/concurrent/executor/cached_thread_pool_spec.rb[1:1:1:3:1] # Concurrent::CachedThreadPool it should behave like thread_pool it should behave like executor_service auto terminate does not stop shutdown 1824s rspec ./spec/concurrent/executor/fixed_thread_pool_spec.rb[1:1:1:3:1] # Concurrent::FixedThreadPool it should behave like thread_pool it should behave like executor_service auto terminate does not stop shutdown 1824s rspec ./spec/concurrent/executor/immediate_executor_spec.rb[1:1:3:1] # Concurrent::ImmediateExecutor it should behave like executor_service auto terminate does not stop shutdown 1824s rspec ./spec/concurrent/executor/indirect_immediate_executor_spec.rb[1:1:3:1] # Concurrent::IndirectImmediateExecutor it should behave like executor_service auto terminate does not stop shutdown 1824s rspec ./spec/concurrent/executor/java_single_thread_executor_spec.rb[1:1:3:1] # Concurrent::JavaSingleThreadExecutor it should behave like executor_service auto terminate does not stop shutdown 1824s rspec ./spec/concurrent/executor/java_thread_pool_executor_spec.rb[1:1:1:3:1] # Concurrent::JavaThreadPoolExecutor it should behave like thread_pool it should behave like executor_service auto terminate does not stop shutdown 1824s rspec ./spec/concurrent/executor/java_thread_pool_executor_spec.rb[1:2:5:2] # Concurrent::JavaThreadPoolExecutor it should behave like thread_pool_executor #queue_length returns zero when there are no enqueued tasks 1824s rspec ./spec/concurrent/executor/ruby_single_thread_executor_spec.rb[1:1:3:1] # Concurrent::RubySingleThreadExecutor it should behave like executor_service auto terminate does not stop shutdown 1824s rspec ./spec/concurrent/executor/ruby_thread_pool_executor_spec.rb[1:1:1:3:1] # Concurrent::RubyThreadPoolExecutor it should behave like thread_pool it should behave like executor_service auto terminate does not stop shutdown 1824s rspec ./spec/concurrent/executor/serialized_execution_spec.rb[1:1:3:1] # Concurrent::SerializedExecutionDelegator it should behave like executor_service auto terminate does not stop shutdown 1824s rspec ./spec/concurrent/executor/simple_executor_service_spec.rb[1:1:3:1] # Concurrent::SimpleExecutorService it should behave like executor_service auto terminate does not stop shutdown 1824s rspec ./spec/concurrent/executor/timer_set_spec.rb:60 # Concurrent::TimerSet execution executes a given task when given an interval in seconds, even if longer tasks have been scheduled 1824s rspec ./spec/concurrent/executor/timer_set_spec.rb:100 # Concurrent::TimerSet execution executes tasks with different times in schedule time 1824s rspec ./spec/concurrent/mvar_spec.rb:391 # Concurrent::MVar spurious wake ups #put returns TIMEOUT on timeout on a full MVar 1824s rspec ./spec/concurrent/promises_spec.rb[1:12:7] # Concurrent::Promises Future result supports setting timeout 1824s rspec ./spec/concurrent/throttle_spec.rb:6 # Concurrent Throttle acquiring 1824s 1829s autopkgtest [07:55:27]: test jruby: -----------------------] 1830s jruby FLAKY non-zero exit status 1 1830s autopkgtest [07:55:28]: test jruby: - - - - - - - - - - results - - - - - - - - - - 1832s autopkgtest [07:55:30]: @@@@@@@@@@@@@@@@@@@@ summary 1832s ruby FAIL non-zero exit status 1 1832s jruby FLAKY non-zero exit status 1