Module: Testjour::Bonjour
- Included in:
- CLI::List, CLI::Run, CLI::SlaveStart, CLI::Warm
- Defined in:
- lib/testjour/bonjour.rb
Defined Under Namespace
Classes: Server
Instance Method Summary collapse
Instance Method Details
#bonjour_serve(port) ⇒ Object
81 82 83 84 85 86 87 88 89 90 |
# File 'lib/testjour/bonjour.rb', line 81 def bonjour_serve(port) name = ENV['USER'] tr = DNSSD::TextRecord.new tr['description'] = "#{name}'s testjour server" DNSSD.register(name, SERVICE, "local", port, tr.encode) do |reply| Testjour.logger.info "Broadcasting: Ready to run tests under name '#{name}' on port #{port}..." end end |
#bonjour_servers ⇒ Object
59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 |
# File 'lib/testjour/bonjour.rb', line 59 def bonjour_servers return @bonjour_servers if !@bonjour_servers.nil? @bonjour_servers = [] service = DNSSD.browse(SERVICE) do |reply| DNSSD.resolve(reply.name, reply.type, reply.domain) do |rr| found_bonjour_server(Server.from_dnssd(reply, rr)) end end sleep 3 service.stop return @bonjour_servers end |
#found_bonjour_server(server) ⇒ Object
75 76 77 78 79 |
# File 'lib/testjour/bonjour.rb', line 75 def found_bonjour_server(server) unless @bonjour_servers.any? { |h| h == server } @bonjour_servers << server end end |