Sha256: c6501b1a8cf9e9cfed2493f603b8951e87f7e22a60643280b702a1b96b8d22fb

Contents?: true

Size: 1.29 KB

Versions: 4

Compression:

Stored size: 1.29 KB

Contents

Testing SystemU do

##
#
  testing 'that simple usage works' do
    status, stdout, stderr = assert{ systemu :bin/:ls }
    assert{ status == 0 }
    assert{ stdout['lib'] }
    assert{ stderr.strip.empty? }
  end

  testing 'program with stdin' do
    stdin = '42'
    status, stdout, stderr = assert{ systemu :bin/:cat, :stdin => stdin }
    assert{ status == 0 }
    assert{ stdout == stdin } 
  end

end





BEGIN {

# silly hax to build commands we can shell out to on any platform.  since
# tests might run on windoze we assume only that 'ruby' is available and build
# other command-line programs from it.
#
  module Kernel
  private
    def bin(which, options = {}, &block)
      case which.to_s
        when 'ls'
          %| ruby -e'puts Dir.glob("*").sort' |

        when 'cat'
          %| ruby -e'STDOUT.write(ARGF.read)' |

        when 'find'
          %| ruby -e'puts Dir.glob("**/**").sort' |
      end
    end
  end

# just let's us write:   :bin/:ls
#
  class Symbol
    def / other, options = {}, &block
      eval "#{ self }(:#{ other }, options, &block)"
    end
  end

  testdir = File.dirname(File.expand_path(__FILE__))
  rootdir = File.dirname(testdir)
  libdir = File.join(rootdir, 'lib')
  require File.join(libdir, 'systemu')
  require File.join(testdir, 'testing')


  Dir.chdir(rootdir)
}

Version data entries

4 entries across 4 versions & 2 rubygems

Version Path
fragrant-0.0.5 vendor/bundle/ruby/1.9.1/gems/systemu-2.5.2/test/systemu_test.rb
systemu-2.5.2 test/systemu_test.rb
systemu-2.5.1 test/systemu_test.rb
systemu-2.5.0 test/systemu_test.rb