~nchohan/+junk/mytools

« back to all changes in this revision

Viewing changes to test/test_helper.rb

  • Committer: root
  • Date: 2010-11-03 07:43:57 UTC
  • Revision ID: root@appscale-image0-20101103074357-xea7ja3sor3x93oc
init

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
require 'rubygems'
 
2
require 'flexmock/test_unit'
 
3
require 'redgreen'
 
4
require 'shoulda'
 
5
 
 
6
$:.unshift File.join(File.dirname(__FILE__), "..", "lib")
 
7
require 'common_functions'
 
8
require 'yaml'
 
9
 
 
10
# Add fixture functionality a la Rails
 
11
class Test::Unit::TestCase
 
12
  @@fixtures = { }
 
13
  class InvalidFixtureName < Exception; end
 
14
 
 
15
  def self.fixtures list
 
16
    [list].flatten.each do |fixture|
 
17
      self.class_eval do
 
18
        # add a method name for this fixture type
 
19
        define_method(fixture) do |item|
 
20
          # load and cache the YAML
 
21
          @@fixtures[fixture] ||= YAML.load_file("test/fixtures/#{fixture.to_s}.yaml")
 
22
          raise InvalidFixtureName if !@@fixtures[fixture].include?(item.to_s)
 
23
          @@fixtures[fixture][item.to_s]
 
24
        end
 
25
      end
 
26
    end
 
27
  end
 
28
end
 
29
 
 
30
# Add an assert to check that something is false
 
31
module Test::Unit::Assertions
 
32
  def assert_false(object, message="")
 
33
    assert_equal(false, object, message)
 
34
  end
 
35
end