Mercurial > hg > soundsoftware-site
annotate test/object_daddy_helpers.rb @ 872:9d7526c3a78a feature_124
Close obsolete branch feature_124
author | Chris Cannam |
---|---|
date | Sat, 02 Apr 2011 11:56:49 +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 |