Sha256: fc8a4ed3cbe5e3843de9770160fbd875632f0e0cfe32d816261d02a317c2ea25

Contents?: true

Size: 1.49 KB

Versions: 4

Compression:

Stored size: 1.49 KB

Contents

ENV["TEST"] = 'true'
require 'rubygems'
require 'minitest/autorun'
$:.unshift File.expand_path("../../lib")
require 'gitdocs'
require 'fakeweb'
require 'mocha'

FakeWeb.allow_net_connect = false

## Kernel Extensions
require 'stringio'

class MiniTest::Spec
  def with_clones(count = 3)
    FileUtils.rm_rf("/tmp/gitdocs")
    master_path = "/tmp/gitdocs/master"
    FileUtils.mkdir_p("/tmp/gitdocs/master")
    ShellTools.capture { `git init /tmp/gitdocs/master --bare` }
    sub_paths = count.times.map do |c|
      ShellTools.capture { `cd /tmp/gitdocs && git clone file://#{master_path} #{c}` }
      conf_path = "/tmp/gitdocs/config/#{c}"
      FileUtils.mkdir_p(conf_path)
      ["/tmp/gitdocs/#{c}", conf_path]
    end
    pids = sub_paths.map do |(path, conf_path)|
      fork do
      unless ENV['DEBUG']
        STDOUT.reopen(File.open("/dev/null", 'w'))
        STDERR.reopen(File.open("/dev/null", 'w'))
      end
      begin
        puts "RUNNING!"
        Gitdocs.run(conf_path) do |conf|
          conf.global.update_attributes(:load_browser_on_startup => false)
          conf.add_path(path, :polling_interval => 0.1, :notification => false)
        end
      rescue
        puts "RATHER BAD ~~~~~"
        puts $!.message
        puts $!.backtrace.join("\n  ")
        end
      end
    end
    begin
      sleep 1
      yield sub_paths.map{|sp| sp.first}
    ensure
      pids.each { |pid| Process.kill("INT", pid) rescue nil }
    end
  ensure
    FileUtils.rm_rf("/tmp/gitdocs") unless ENV['DEBUG']
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
gitdocs-0.3.6 test/test_helper.rb
gitdocs-0.3.5 test/test_helper.rb
gitdocs-0.3.4 test/test_helper.rb
gitdocs-0.3.3 test/test_helper.rb