RSpec doesn’t have any built-in features for what you’re asking for, but it’s easy enough to write it yourself:
require 'timeout' module WaitHelpers def wait_until(timeout) timeout_time = Time.now + timeout loop do sleep 0.1 return if yield raise Timeout::Error if Time.now > timeout_time end end def wait_until_port_available(container) wait_until(10) do container.port.available? # or whatever the logic to check port availability is end endend RSpec.configure do |rspec| rspec.include WaitHelpersend RSpec.describe "A docker container" do before do @container = Docker::Container.create @container.start wait_until_port_available(@container) endend HTH, Myron On Fri, Apr 6, 2018 at 5:44 AM, Samuel Mutel <samuel.mu...@gmail.com> wrote: > Hello, > > I am currently using rspec and docker api to test docker container > (@container = Docker::Container.create & @container.start). > I would like to know if it is possible to wait a condition (port available > for example) to continue the test suite? > I saw this module rspec-wait ... > > Thanks. > > -- > You received this message because you are subscribed to the Google Groups > "rspec" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to rspec+unsubscr...@googlegroups.com. > To post to this group, send email to rspec@googlegroups.com. > To view this discussion on the web visit https://groups.google.com/d/ > msgid/rspec/1ff39192-ef6a-4dd1-830c-c120d61faafd%40googlegroups.com > <https://groups.google.com/d/msgid/rspec/1ff39192-ef6a-4dd1-830c-c120d61faafd%40googlegroups.com?utm_medium=email&utm_source=footer> > . > For more options, visit https://groups.google.com/d/optout. > -- You received this message because you are subscribed to the Google Groups "rspec" group. To unsubscribe from this group and stop receiving emails from it, send an email to rspec+unsubscr...@googlegroups.com. To post to this group, send email to rspec@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/rspec/CADUxQmufRPiOaG3shc00BePoC29q5iJ45pkDvP6ypbgKj%3DcFbQ%40mail.gmail.com. For more options, visit https://groups.google.com/d/optout.