Sha256: fdc5964c2993ec40c9d28be2a1b98cc3c234b3b3ec4eb734613d3cc7578aff93

Contents?: true

Size: 1.03 KB

Versions: 6

Compression:

Stored size: 1.03 KB

Contents

#!/usr/bin/env rspec

require 'spec_helper'
require 'mcollective/unix_daemon'

module MCollective
  describe UnixDaemon do
    describe "#daemonize_runner" do
      it "should not run on the windows platform" do
        Util.expects("windows?").returns(true)
        expect { UnixDaemon.daemonize_runner }.to raise_error("The Unix Daemonizer can not be used on the Windows Platform")
      end

      it "should write the pid file if requested" do
        f = mock
        f.expects(:write).with(Process.pid)

        File.expects(:open).with("/nonexisting", "w").yields(f)

        r = mock
        r.expects(:run)

        Runner.expects(:new).returns(r)
        UnixDaemon.expects(:daemonize).yields

        UnixDaemon.daemonize_runner("/nonexisting")
      end

      it "should not write a pid file unless requested" do
        r = mock
        r.expects(:run)

        UnixDaemon.expects(:daemonize).yields
        Runner.expects(:new).returns(r)
        File.expects(:open).never

        UnixDaemon.daemonize_runner(nil)
      end
    end
  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
mcollective-client-2.2.3 spec/unit/unix_daemon_spec.rb
mcollective-client-2.2.2 spec/unit/unix_daemon_spec.rb
mcollective-client-2.2.1 spec/unit/unix_daemon_spec.rb
mcollective-client-2.2.0 spec/unit/unix_daemon_spec.rb
mcollective-client-2.0.0 spec/unit/unix_daemon_spec.rb
mcollective-client-1.3.3 spec/unit/unix_daemon.rb