Added some exemplars for object daddy to generate test data.

git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@3340 e93f8b46-1217-0410-a6f0-8f06a7374b81
This commit is contained in:
Eric Davis 2010-01-27 18:29:03 +00:00
parent d1c90d9abf
commit 9044305b93
18 changed files with 222 additions and 0 deletions

View File

@ -0,0 +1,9 @@
class AuthSource < ActiveRecord::Base
generator_for :name, :method => :next_name
def self.next_name
@last_name ||= 'Auth0'
@last_name.succ!
@last_name
end
end

View File

@ -0,0 +1,21 @@
class Board < ActiveRecord::Base
generator_for :name, :method => :next_name
generator_for :description, :method => :next_description
generator_for :project, :method => :generate_project
def self.next_name
@last_name ||= 'A Forum'
@last_name.succ!
@last_name
end
def self.next_description
@last_description ||= 'Some description here'
@last_description.succ!
@last_description
end
def self.generate_project
Project.generate!
end
end

View File

@ -0,0 +1,15 @@
class Change < ActiveRecord::Base
generator_for :action => 'A'
generator_for :path, :method => :next_path
generator_for :changeset, :method => :generate_changeset
def self.next_path
@last_path ||= 'test/dir/aaa0001'
@last_path.succ!
@last_path
end
def self.generate_changeset
Changeset.generate!
end
end

View File

@ -0,0 +1,15 @@
class Changeset < ActiveRecord::Base
generator_for :revision, :method => :next_revision
generator_for :committed_on => Date.today
generator_for :repository, :method => :generate_repository
def self.next_revision
@last_revision ||= '1'
@last_revision.succ!
@last_revision
end
def self.generate_repository
Repository::Subversion.generate!
end
end

View File

@ -0,0 +1,9 @@
class Document < ActiveRecord::Base
generator_for :title, :method => :next_title
def self.next_title
@last_title ||= 'Document001'
@last_title.succ!
@last_title
end
end

View File

@ -0,0 +1,10 @@
class EnabledModule < ActiveRecord::Base
generator_for :name, :method => :next_name
def self.next_name
@last_name ||= 'module_001'
@last_name.succ!
@last_name
end
end

View File

@ -0,0 +1,9 @@
class IssueCategory < ActiveRecord::Base
generator_for :name, :method => :next_name
def self.next_name
@last_name ||= 'Category 0001'
@last_name.succ!
@last_name
end
end

View File

@ -0,0 +1,12 @@
class MemberRole < ActiveRecord::Base
generator_for :member, :method => :generate_member
generator_for :role, :method => :generate_role
def self.generate_role
Role.generate!
end
def self.generate_member
Member.generate!
end
end

View File

@ -0,0 +1,21 @@
class Message < ActiveRecord::Base
generator_for :subject, :method => :next_subject
generator_for :content, :method => :next_content
generator_for :board, :method => :generate_board
def self.next_subject
@last_subject ||= 'A Message'
@last_subject.succ!
@last_subject
end
def self.next_content
@last_content ||= 'Some content here'
@last_content.succ!
@last_content
end
def self.generate_board
Board.generate!
end
end

View File

@ -0,0 +1,16 @@
class News < ActiveRecord::Base
generator_for :title, :method => :next_title
generator_for :description, :method => :next_description
def self.next_title
@last_title ||= 'A New Item'
@last_title.succ!
@last_title
end
def self.next_description
@last_description ||= 'Some content here'
@last_description.succ!
@last_description
end
end

View File

@ -0,0 +1,11 @@
class Repository < ActiveRecord::Base
generator_for :type => 'Subversion'
generator_for :url, :method => :next_url
def self.next_url
@last_url ||= 'file:///test/svn'
@last_url.succ!
@last_url
end
end

View File

@ -0,0 +1,11 @@
class Repository::Subversion < Repository
generator_for :type, :method => 'Subversion'
generator_for :url, :method => :next_url
def self.next_url
@last_url ||= 'file:///test/svn'
@last_url.succ!
@last_url
end
end

View File

@ -1,5 +1,10 @@
class TimeEntry < ActiveRecord::Base
generator_for(:spent_on) { Date.today }
generator_for(:hours) { (rand * 10).round(2) } # 0.01 to 9.99
generator_for :user, :method => :generate_user
def self.generate_user
User.generate_with_protected!
end
end

View File

@ -0,0 +1,7 @@
class Watcher < ActiveRecord::Base
generator_for :user, :method => :generate_user
def self.generate_user
User.generate_with_protected!
end
end

View File

@ -0,0 +1,8 @@
class WikiContent < ActiveRecord::Base
generator_for :text => 'Some content'
generator_for :page, :method => :generate_page
def self.generate_page
WikiPage.generate!
end
end

View File

@ -0,0 +1,8 @@
class Wiki < ActiveRecord::Base
generator_for :start_page => 'Start'
generator_for :project, :method => :generate_project
def self.generate_project
Project.generate!
end
end

View File

@ -0,0 +1,14 @@
class WikiPage < ActiveRecord::Base
generator_for :title, :method => :next_title
generator_for :wiki, :method => :generate_wiki
def self.next_title
@last_title ||= 'AWikiPage'
@last_title.succ!
@last_title
end
def self.generate_wiki
Wiki.generate!
end
end

View File

@ -0,0 +1,21 @@
class WikiRedirect < ActiveRecord::Base
generator_for :title, :method => :next_title
generator_for :redirects_to, :method => :next_redirects_to
generator_for :wiki, :method => :generate_wiki
def self.next_title
@last_title ||= 'AWikiPage'
@last_title.succ!
@last_title
end
def self.next_redirects_to
@last_redirect ||= '/a/path/000001'
@last_redirect.succ!
@last_redirect
end
def self.generate_wiki
Wiki.generate!
end
end