Browse Source

Moved object daddy helpers to their own module.

git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@2938 e93f8b46-1217-0410-a6f0-8f06a7374b81
tags/0.9.0
Eric Davis 14 years ago
parent
commit
b887cef7af
2 changed files with 35 additions and 30 deletions
  1. 33
    0
      test/object_daddy_helpers.rb
  2. 2
    30
      test/test_helper.rb

+ 33
- 0
test/object_daddy_helpers.rb View File

@@ -0,0 +1,33 @@
module ObjectDaddyHelpers
# TODO: The gem or official version of ObjectDaddy doesn't set
# protected attributes so they need to be wrapped.
def User.generate_with_protected!(attributes={})
user = User.spawn(attributes) do |user|
user.login = User.next_login
attributes.each do |attr,v|
user.send("#{attr}=", v)
end
end
user.save!
user
end

# Generate the default Query
def Query.generate_default!(attributes={})
query = Query.spawn(attributes)
query.name ||= '_'
query.save!
query
end

# Generate an issue for a project, using it's trackers
def Issue.generate_for_project!(project, attributes={})
issue = Issue.spawn(attributes) do |issue|
issue.project = project
end
issue.tracker = project.trackers.first unless project.trackers.empty?
issue.save!
issue
end

end

+ 2
- 30
test/test_helper.rb View File

@@ -21,36 +21,8 @@ require 'test_help'
require File.expand_path(File.dirname(__FILE__) + '/helper_testcase')
require File.join(RAILS_ROOT,'test', 'mocks', 'open_id_authentication_mock.rb')

# TODO: The gem or official version of ObjectDaddy doesn't set
# protected attributes so they need to be wrapped.
def User.generate_with_protected!(attributes={})
user = User.spawn(attributes) do |user|
user.login = User.next_login
attributes.each do |attr,v|
user.send("#{attr}=", v)
end
end
user.save!
user
end

# Generate the default Query
def Query.generate_default!(attributes={})
query = Query.spawn(attributes)
query.name ||= '_'
query.save!
query
end

# Generate an issue for a project, using it's trackers
def Issue.generate_for_project!(project, attributes={})
issue = Issue.spawn(attributes) do |issue|
issue.project = project
end
issue.tracker = project.trackers.first unless project.trackers.empty?
issue.save!
issue
end
require File.expand_path(File.dirname(__FILE__) + '/object_daddy_helpers')
include ObjectDaddyHelpers

class ActiveSupport::TestCase
# Transactional fixtures accelerate your tests by wrapping each test method

Loading…
Cancel
Save