spec/rubydns/injected_supervisor_spec.rb in rubydns-1.0.3 vs spec/rubydns/injected_supervisor_spec.rb in rubydns-2.0.0.pre.rc1
- old
+ new
@@ -19,11 +19,11 @@
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
# THE SOFTWARE.
require 'rubydns'
-require 'rubydns/extensions/string'
+require 'async/dns/extensions/string'
module RubyDNS::InjectedSupervisorSpec
class TestServer < RubyDNS::RuleBasedServer
def test_message
'Testing...'
@@ -31,17 +31,16 @@
end
SERVER_PORTS = [[:udp, '127.0.0.1', 5520]]
IN = Resolv::DNS::Resource::IN
- describe "RubyDNS Injected Supervisor" do
- before(:all) do
- Celluloid.shutdown
- Celluloid.boot
-
+ describe "RubyDNS::run_server(server_class: ...)" do
+ include_context "reactor"
+
+ let(:server) do
# Start the RubyDNS server
- RubyDNS::run_server(listen: SERVER_PORTS, server_class: TestServer, asynchronous: true) do
+ RubyDNS::run_server(listen: SERVER_PORTS, server_class: TestServer) do
match("test_message", IN::TXT) do |transaction|
transaction.respond!(*test_message.chunked)
end
# Default DNS handler
@@ -50,12 +49,16 @@
end
end
end
it "should use the injected class" do
+ task = server
+
resolver = RubyDNS::Resolver.new(SERVER_PORTS)
response = resolver.query("test_message", IN::TXT)
text = response.answer.first
expect(text[2].strings.join).to be == 'Testing...'
+
+ task.stop
end
end
end