diff --git a/spec/foreman/engine_spec.rb b/spec/foreman/engine_spec.rb index e44f8fd..0e3916f 100644 --- a/spec/foreman/engine_spec.rb +++ b/spec/foreman/engine_spec.rb @@ -83,4 +83,25 @@ describe "Foreman::Engine", :fakefs do engine.start end end + + describe "utf8" do + before(:each) do + File.open("Procfile", "w") do |file| + file.puts "utf8: #{resource_path("bin/utf8")}" + end + end + + it "should spawn" do + stub(subject).watch_for_output + stub(subject).watch_for_termination + subject.start + sleep 1 + mock(subject).info(/started with pid \d+/, "utf8.1", anything) + mock(subject).info("\xff\x03\n", "utf8.1", anything) + subject.send(:poll_readers) + subject.send(:poll_readers) + subject.send(:poll_readers) + subject.send(:poll_readers) + end + end end diff --git a/spec/resources/bin/utf8 b/spec/resources/bin/utf8 new file mode 100755 index 0000000..18e158c --- /dev/null +++ b/spec/resources/bin/utf8 @@ -0,0 +1,2 @@ +#!/usr/bin/env ruby +puts "\xff\x03"