annotate test/object_daddy_helpers.rb @ 864:2465362d1b56 bug_145

Close obsolete branch bug_145
author Chris Cannam
date Wed, 11 May 2011 11:57:41 +0100
parents 40f7cfd4df19
children
rev   line source
Chris@0 1 module ObjectDaddyHelpers
Chris@0 2 # TODO: Remove these three once everyone has ported their code to use the
Chris@0 3 # new object_daddy version with protected attribute support
Chris@0 4 def User.generate_with_protected(attributes={})
Chris@0 5 User.generate(attributes)
Chris@0 6 end
Chris@0 7
Chris@0 8 def User.generate_with_protected!(attributes={})
Chris@0 9 User.generate!(attributes)
Chris@0 10 end
Chris@0 11
Chris@0 12 def User.spawn_with_protected(attributes={})
Chris@0 13 User.spawn(attributes)
Chris@0 14 end
Chris@0 15
chris@22 16 def User.add_to_project(user, project, roles)
chris@22 17 roles = [roles] unless roles.is_a?(Array)
chris@22 18 Member.generate!(:principal => user, :project => project, :roles => roles)
chris@22 19 end
chris@22 20
Chris@0 21 # Generate the default Query
Chris@0 22 def Query.generate_default!(attributes={})
Chris@0 23 query = Query.spawn(attributes)
Chris@0 24 query.name ||= '_'
Chris@0 25 query.save!
Chris@0 26 query
Chris@0 27 end
Chris@0 28
Chris@0 29 # Generate an issue for a project, using it's trackers
Chris@0 30 def Issue.generate_for_project!(project, attributes={})
Chris@0 31 issue = Issue.spawn(attributes) do |issue|
Chris@0 32 issue.project = project
chris@22 33 issue.tracker = project.trackers.first unless project.trackers.empty?
chris@22 34 yield issue if block_given?
Chris@0 35 end
Chris@0 36 issue.save!
Chris@0 37 issue
Chris@0 38 end
Chris@0 39
Chris@0 40 end