This file is indexed.

/usr/share/backgroundrb/test/server/test_master_proxy.rb is in libbackgroundrb-ruby1.8 1.1-1.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
require File.join(File.dirname(__FILE__) + "/..","bdrb_test_helper")
require "mocha"

context "Master proxy for reloadable workers" do
  ENV["RAILS_ENV"] = "production"

  setup do
    BDRB_CONFIG.set({:schedules=>
                      {
                        :foo_worker => { :barbar => {:trigger_args=>"*/5 * * * * *", :data =>"Hello World" }},
                        :bar_worker => { :do_job => {:trigger_args=>"*/5 * * * * *", :data =>"Hello World" }}
                      },
                      :backgroundrb=> {:log => "foreground", :debug_log => false, :environment => "production", :port => 11006, :ip => "localhost"}
                    })

    Packet::Reactor.stubs(:run)
    @master_proxy = BackgrounDRb::MasterProxy.new
  end

  specify "should load schedule of workers which are reloadable" do
    @master_proxy.reloadable_workers.should.not == []
    @master_proxy.reloadable_workers.should.include(BarWorker)
    @master_proxy.reloadable_workers.should.include(FooWorker)
    @master_proxy.worker_triggers.should.not.be {}
    assert @master_proxy.worker_triggers.keys.include?(:bar_worker)
    assert @master_proxy.worker_triggers[:bar_worker].keys.include?(:do_job)
    @master_proxy.worker_triggers[:bar_worker][:do_job].should.not.be { }
  end

  specify "load schedule should load schedule of worker specified" do
    sleep(5)
    sheep = mock()
    sheep.expects(:send_request).at_most(4)
    live_workers = Hash.new(sheep)
    crap_reactor = mock()
    crap_reactor.expects(:start_worker).at_most(2)
    crap_reactor.expects(:live_workers).at_most(4).returns(live_workers)
    @master_proxy.reactor = crap_reactor
    @master_proxy.reload_workers
  end

  specify "should not run worker methods which are not ready to run" do
    sleep(1)
    sheep = mock()
    sheep.expects(:send_request).at_most(4)
    live_workers = Hash.new(sheep)
    crap_reactor = mock()
    crap_reactor.expects(:start_worker).at_most(2)
    crap_reactor.expects(:live_workers).at_most(4).returns(live_workers)
    @master_proxy.reactor = crap_reactor
    @master_proxy.reload_workers
  end
end