You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This is what the out-of-box make test experience look like. --tag=~etcd is not something you can apply to make test. I would like to see the etcd specs skipped by default (with a note that they will be run if etcd is in $PATH).
1dba75f1a2f1:/app (fix-ipv4-mapped-ipv6-addresses)# make test
crystal spec --order random --verbose -Dpreview_mt -Dexecution_context
Randomized with seed: 11559
LavinMQ::AMQP::Stream
consume from timestamp offset across segment boundary
can be purged
Expiration
segments should be removed if max-length set
segments should be removed if max-age set
does not start the expire fiber when the last consumer leaves
removes segments on publish if max-age policy is set
segments should be removed if max-length-bytes set
should not lose messages on restart when max-age is set
meta files should be removed when segment is removed
removes segments when max-length-bytes policy is applied
removes segments when max-length policy is applied
ignores delivery-limit policy on streams
removes segments when max-age policy is applied
x-stream-offset negative integer
continues with new messages after delivering the last N messages
delivers the last N messages
clamps Int64::MIN to the oldest available message
waits for new messages from the next offset when the stream is empty
x-stream-offset=-1 delivers only the latest message
clamps to oldest available when stream has fewer messages than requested
delivers remaining messages when older segments have been dropped
Restarting stream
should restart a closed stream
loads when trailing segment has only the 4-byte schema header
should resume consuming from the correct position after a restart
doesn't support basic_get can start consume from last segment even if queue is empty can requeue msgs per consumer drops a publish when the store is closed concurrently Automatic consumer offset tracking appends consumer tag file store_consumer_offset raises ClosedError after the store is closed does not track offset if c-tag is auto-generated compacts consumer tag file on restart does not track offset if x-stream-offset is set compacts consumer tag file when full reads offsets from file on init acking after the queue is deleted does not tear down the connection should not use saved offset if x-stream-automatic-offset-tracking is false should use saved offset if x-stream-offset & x-stream-automatic-offset-tracking is set expands consumer offset file when needed cleanup_consumer_offsets removes outdated offset drop_overflow does not raise after the store has been deleted negative x-stream-offset does not override tracked offset on reconnect runs cleanup when removing segment resumes from last offset on reconnect should not use saved offset if x-stream-offset is set Consume multiple consumers get new messages immediately as they arrive consumer gets new messages as they arrive should be able to consume multiple times should get same nr of messages as published should get message with offset 2 reproduces bug: second consumer doesn't get immediate delivery
LavinMQ::HTTP::ParametersController
PUT /api/operator-policies/vhost/name
should handle invalid definition types
GET /api/parameters/component/vhost/name
should return parameter
GET /api/parameters/component
should return all parameters for a component
GET /api/policies/vhost/name
should return policy
GET /api/global-parameters
should allow policymaker to list global parameters
should refuse management users from listing global parameters
should return all global parameters
DELETE /api/global-parameters/name
should refuse management users from deleting a global parameter
should delete parameter
PUT /api/parameters/shovel/vhost/name
should reject shovel without destination
should skip validation for external URIs
should reject shovel when user lacks config permission on source queue
should reject shovel when user lacks config permission on source exchange
should reject shovel when user lacks read permission on source exchange
should allow shovel with source exchange and routing key without source queue
should reject shovel when user lacks write permission on destination exchange
should validate shovel config with valid config
should skip validation for URIs with explicit user
should allow shovel with user having sufficient permissions
should reject shovel when user lacks read permission on source queue
should reject shovel without source queue or exchange
should reject shovel when user lacks config permission on destination exchange
should reject shovel when user lacks config permission on destination queue
GET /api/parameters/component/vhost
should return all parameters for a component on vhost
PUT /api/parameters/component/vhost/name
should handle request with empty body
should handle unexpected input
should update parameters for a component on vhost
should create parameters for a component on vhost
should handle invalid JSON
PUT /api/policies/vhost/name
should handle unexpected input
should update policy
should handle invalid definition types
should handle invalid JSON
should handle request with empty body
should create policy
GET /api/global-parameters/name
should refuse management users from getting a global parameter
should return parameter
should allow policymaker to get a global parameter
PUT /api/operator-policies/vhost/name
should handle invalid definition types
GET /api/policies
should return all policies
DELETE /api/policies/vhost/name
should delete policy
PUT /api/global-parameters/name
should handle request with empty body
should refuse management users from creating a global parameter
should handle invalid JSON
should update global parameter
should create global parameter
should handle unexpected input
GET /api/parameters
should return all vhost scoped parameters for policymaker
should refuse monitoring and management
DELETE /api/parameters/component/vhost/name
should delete parameter for a component on vhost
GET /api/policies/vhost
should return policies for vhost
LavinMQ::MQTT
permissions
should block subscribe when user has read-only permissions
should block subscribe when user has write-only permissions
should block publish when user has no write permissions
should block will messages when user lacks write permissions
should block subscribe when user has no read permissions
should allow operations when user has full permissions
LavinMQ::VHost
Stats
should count get_no_ack
should not delete stats when connection is closed
should update queue data
should count connections open / closed once
should count deliver and deliver_no_ack
LavinMQ::HTTP::BindingsController
GET /api/bindings/vhost/e/source/e/destination
should return bindings
GET /api/bindings
should return all bindings
DELETE /api/bindings/vhost/e/exchange/q/queue/props
should delete binding
GET /api/bindings/vhost/e/source/e/destination/props
should return binding
POST /api/bindings/vhost/e/exchange/q/queue
should create binding
should return forbidden for the default exchange
should inform about required fields
should return bad request for invalid routing key on consistent hash exchange
should return 404 if exchange does not exist
GET /api/bindings/vhost
should return all bindings for a vhost
DELETE /api/bindings/vhost/e/source/e/destination/props
should delete binding
POST /api/bindings/vhost/e/source/e/destination
should create binding
should return forbidden for the default exchange
GET /api/bindings/vhost/e/exchange/q/queue/props
should return binding
GET /api/bindings/vhost/e/exchange/q/queue
should return 404 if exchange does not exist
should return bindings
LavinMQ::HTTP::StaticController
GET /img/favicon.png
GET /robots.txt
LavinMQ::Clustering::Client
removes empty queue dir from follower when queue is deletedUnhandled exception: etcd binary not found in PATH, required by etcd-tagged specs. Install etcd or exclude these specs with --tag=~etcd (Exception)
from /usr/share/crystal/src/spec/methods.cr:254 in'ensure_etcd_in_path!'
from spec/support/etcd_helper.cr:10:3 in'->'
from /usr/share/crystal/src/spec/context.cr:73:26 in'run_around_each_hook'
from /usr/share/crystal/src/spec/context.cr:68:7 in'internal_run_around_each_hooks'
from /usr/share/crystal/src/spec/context.cr:388:11 in'->'
from /usr/share/crystal/src/spec/example/procsy.cr:16:15 in'run'
from spec/spec_helper.cr:321:5 in'->'
from /usr/share/crystal/src/spec/context.cr:73:26 in'run_around_each_hook'
from /usr/share/crystal/src/spec/context.cr:80:13 in'->'
from /usr/share/crystal/src/spec/example/procsy.cr:16:15 in'run'
from spec/spec_helper.cr:282:7 in'->'
from /usr/share/crystal/src/fiber.cr:170:11 in'run'
from /usr/share/crystal/src/fiber.cr:105:3 in'->'
from ???
Aborted!
Finished in 10.33 seconds
130 examples, 0 failures, 0 errors, 0 pending
Randomized with seed: 11559
Error running at_exit handler: Exiting with code 1
make: *** [Makefile:118: test] Error 1
reacted with thumbs up emoji reacted with thumbs down emoji reacted with laugh emoji reacted with hooray emoji reacted with confused emoji reacted with heart emoji reacted with rocket emoji reacted with eyes emoji
Uh oh!
There was an error while loading. Please reload this page.
This is what the out-of-box
make testexperience look like.--tag=~etcdis not something you can apply tomake test. I would like to see the etcd specs skipped by default (with a note that they will be run ifetcdis in$PATH).All reactions