spatten-bookkeeper 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (62) hide show
  1. data/init.rb +1 -0
  2. data/lib/bookkeeper.rb +8 -0
  3. data/lib/bookkeeper/account.rb +95 -0
  4. data/lib/bookkeeper/account/asset.rb +3 -0
  5. data/lib/bookkeeper/account/expense.rb +3 -0
  6. data/lib/bookkeeper/account/liability.rb +3 -0
  7. data/lib/bookkeeper/account/revenue.rb +3 -0
  8. data/lib/bookkeeper/asset_type.rb +3 -0
  9. data/lib/bookkeeper/asset_type/cad.rb +2 -0
  10. data/lib/bookkeeper/asset_type/usd.rb +2 -0
  11. data/lib/bookkeeper/batch.rb +62 -0
  12. data/lib/bookkeeper/journal.rb +29 -0
  13. data/lib/bookkeeper/journal/bill.rb +32 -0
  14. data/lib/bookkeeper/journal/deposit.rb +7 -0
  15. data/lib/bookkeeper/journal/disbursement.rb +7 -0
  16. data/lib/bookkeeper/journal/invoice.rb +4 -0
  17. data/lib/bookkeeper/journal/transfer.rb +7 -0
  18. data/lib/bookkeeper/paypal_transaction.rb +12 -0
  19. data/lib/bookkeeper/paypal_transaction/masspay_subpayment.rb +17 -0
  20. data/lib/bookkeeper/paypal_transaction/single.rb +14 -0
  21. data/lib/bookkeeper/posting.rb +32 -0
  22. data/lib/immutable-attribute-plugin/MIT-LICENSE +20 -0
  23. data/lib/immutable-attribute-plugin/README +35 -0
  24. data/lib/immutable-attribute-plugin/Rakefile +22 -0
  25. data/lib/immutable-attribute-plugin/init.rb +4 -0
  26. data/lib/immutable-attribute-plugin/install.rb +1 -0
  27. data/lib/immutable-attribute-plugin/lib/ensures_immutability_of.rb +43 -0
  28. data/lib/immutable-attribute-plugin/tasks/ensures_immutability_of_tasks.rake +4 -0
  29. data/lib/immutable-attribute-plugin/test/fixtures/accounts.yml +6 -0
  30. data/lib/immutable-attribute-plugin/test/fixtures/infos.yml +6 -0
  31. data/lib/immutable-attribute-plugin/test/rails_root/README +211 -0
  32. data/lib/immutable-attribute-plugin/test/rails_root/Rakefile +10 -0
  33. data/lib/immutable-attribute-plugin/test/rails_root/app/controllers/application.rb +7 -0
  34. data/lib/immutable-attribute-plugin/test/rails_root/app/helpers/application_helper.rb +3 -0
  35. data/lib/immutable-attribute-plugin/test/rails_root/app/models/account.rb +6 -0
  36. data/lib/immutable-attribute-plugin/test/rails_root/app/models/info.rb +3 -0
  37. data/lib/immutable-attribute-plugin/test/rails_root/config/boot.rb +39 -0
  38. data/lib/immutable-attribute-plugin/test/rails_root/config/database.yml +18 -0
  39. data/lib/immutable-attribute-plugin/test/rails_root/config/environment.rb +11 -0
  40. data/lib/immutable-attribute-plugin/test/rails_root/config/environments/development.rb +21 -0
  41. data/lib/immutable-attribute-plugin/test/rails_root/config/environments/mysql.rb +0 -0
  42. data/lib/immutable-attribute-plugin/test/rails_root/config/environments/postgresql.rb +0 -0
  43. data/lib/immutable-attribute-plugin/test/rails_root/config/environments/production.rb +18 -0
  44. data/lib/immutable-attribute-plugin/test/rails_root/config/environments/sqlite.rb +0 -0
  45. data/lib/immutable-attribute-plugin/test/rails_root/config/environments/sqlite3.rb +0 -0
  46. data/lib/immutable-attribute-plugin/test/rails_root/config/environments/test.rb +19 -0
  47. data/lib/immutable-attribute-plugin/test/rails_root/config/routes.rb +23 -0
  48. data/lib/immutable-attribute-plugin/test/rails_root/db/migrate/001_create_accounts.rb +12 -0
  49. data/lib/immutable-attribute-plugin/test/rails_root/db/migrate/002_create_infos.rb +13 -0
  50. data/lib/immutable-attribute-plugin/test/rails_root/script/console +3 -0
  51. data/lib/immutable-attribute-plugin/test/rails_root/script/runner +3 -0
  52. data/lib/immutable-attribute-plugin/test/rails_root/test/test_helper.rb +28 -0
  53. data/lib/immutable-attribute-plugin/test/rails_root/vendor/plugins/phone_validation/init.rb +2 -0
  54. data/lib/immutable-attribute-plugin/test/test_helper.rb +26 -0
  55. data/lib/immutable-attribute-plugin/test/unit/plugin_test.rb +137 -0
  56. data/lib/immutable-attribute-plugin/uninstall.rb +1 -0
  57. data/rails/init.rb +1 -0
  58. data/rails_generators/USAGE +3 -0
  59. data/rails_generators/bookkeeper_generator.rb +17 -0
  60. data/rails_generators/templates/fixtures.yml +1 -0
  61. data/rails_generators/templates/migration.rb +66 -0
  62. metadata +140 -0
@@ -0,0 +1,18 @@
1
+ # Settings specified here will take precedence over those in config/environment.rb
2
+
3
+ # The production environment is meant for finished, "live" apps.
4
+ # Code is not reloaded between requests
5
+ config.cache_classes = true
6
+
7
+ # Use a different logger for distributed setups
8
+ # config.logger = SyslogLogger.new
9
+
10
+ # Full error reports are disabled and caching is turned on
11
+ config.action_controller.consider_all_requests_local = false
12
+ config.action_controller.perform_caching = true
13
+
14
+ # Enable serving of images, stylesheets, and javascripts from an asset server
15
+ # config.action_controller.asset_host = "http://assets.example.com"
16
+
17
+ # Disable delivery errors, bad email addresses will be ignored
18
+ # config.action_mailer.raise_delivery_errors = false
@@ -0,0 +1,19 @@
1
+ # Settings specified here will take precedence over those in config/environment.rb
2
+
3
+ # The test environment is used exclusively to run your application's
4
+ # test suite. You never need to work with it otherwise. Remember that
5
+ # your test database is "scratch space" for the test suite and is wiped
6
+ # and recreated between test runs. Don't rely on the data there!
7
+ config.cache_classes = true
8
+
9
+ # Log error messages when you accidentally call methods on nil.
10
+ config.whiny_nils = true
11
+
12
+ # Show full error reports and disable caching
13
+ config.action_controller.consider_all_requests_local = true
14
+ config.action_controller.perform_caching = false
15
+
16
+ # Tell ActionMailer not to deliver emails to the real world.
17
+ # The :test delivery method accumulates sent emails in the
18
+ # ActionMailer::Base.deliveries array.
19
+ config.action_mailer.delivery_method = :test
@@ -0,0 +1,23 @@
1
+ ActionController::Routing::Routes.draw do |map|
2
+ # The priority is based upon order of creation: first created -> highest priority.
3
+
4
+ # Sample of regular route:
5
+ # map.connect 'products/:id', :controller => 'catalog', :action => 'view'
6
+ # Keep in mind you can assign values other than :controller and :action
7
+
8
+ # Sample of named route:
9
+ # map.purchase 'products/:id/purchase', :controller => 'catalog', :action => 'purchase'
10
+ # This route can be invoked with purchase_url(:id => product.id)
11
+
12
+ # You can have the root of your site routed by hooking up ''
13
+ # -- just remember to delete public/index.html.
14
+ # map.connect '', :controller => "welcome"
15
+
16
+ # Allow downloading Web Service WSDL as a file with an extension
17
+ # instead of a file named 'wsdl'
18
+ map.connect ':controller/service.wsdl', :action => 'wsdl'
19
+
20
+ # Install the default route as the lowest priority.
21
+ map.connect ':controller/:action/:id.:format'
22
+ map.connect ':controller/:action/:id'
23
+ end
@@ -0,0 +1,12 @@
1
+ class CreateAccounts < ActiveRecord::Migration
2
+ def self.up
3
+ create_table :accounts do |t|
4
+ t.column :username, :string
5
+ t.column :email, :string
6
+ end
7
+ end
8
+
9
+ def self.down
10
+ drop_table :accounts
11
+ end
12
+ end
@@ -0,0 +1,13 @@
1
+ class CreateInfos < ActiveRecord::Migration
2
+ def self.up
3
+ create_table :infos do |t|
4
+ t.column :account_id, :integer
5
+ t.column :text, :text
6
+ end
7
+ end
8
+
9
+ def self.down
10
+ drop_table :accounts
11
+ end
12
+ end
13
+
@@ -0,0 +1,3 @@
1
+ #!/usr/bin/env ruby
2
+ require File.dirname(__FILE__) + '/../config/boot'
3
+ require 'commands/console'
@@ -0,0 +1,3 @@
1
+ #!/usr/bin/env ruby
2
+ require File.dirname(__FILE__) + '/../config/boot'
3
+ require 'commands/runner'
@@ -0,0 +1,28 @@
1
+ ENV["RAILS_ENV"] = "test"
2
+ require File.expand_path(File.dirname(__FILE__) + "/../config/environment")
3
+ require 'test_help'
4
+
5
+ class Test::Unit::TestCase
6
+ # Transactional fixtures accelerate your tests by wrapping each test method
7
+ # in a transaction that's rolled back on completion. This ensures that the
8
+ # test database remains unchanged so your fixtures don't have to be reloaded
9
+ # between every test method. Fewer database queries means faster tests.
10
+ #
11
+ # Read Mike Clark's excellent walkthrough at
12
+ # http://clarkware.com/cgi/blosxom/2005/10/24#Rails10FastTesting
13
+ #
14
+ # Every Active Record database supports transactions except MyISAM tables
15
+ # in MySQL. Turn off transactional fixtures in this case; however, if you
16
+ # don't care one way or the other, switching from MyISAM to InnoDB tables
17
+ # is recommended.
18
+ self.use_transactional_fixtures = true
19
+
20
+ # Instantiated fixtures are slow, but give you @david where otherwise you
21
+ # would need people(:david). If you don't want to migrate your existing
22
+ # test cases which use the @david style and don't mind the speed hit (each
23
+ # instantiated fixtures translates to a database query per test method),
24
+ # then set this back to true.
25
+ self.use_instantiated_fixtures = false
26
+
27
+ # Add more helper methods to be used by all tests here...
28
+ end
@@ -0,0 +1,2 @@
1
+ init_path = "#{RAILS_ROOT}/../../init.rb"
2
+ silence_warnings { eval(IO.read(init_path), binding, init_path) }
@@ -0,0 +1,26 @@
1
+ ENV['RAILS_ENV'] ||= 'sqlite3'
2
+ require File.dirname(__FILE__) + '/rails_root/config/environment.rb'
3
+
4
+ # Load the testing framework
5
+ require 'test_help'
6
+ silence_warnings { RAILS_ENV = ENV['RAILS_ENV'] }
7
+
8
+ # Run the migrations
9
+ ActiveRecord::Migrator.migrate("#{RAILS_ROOT}/db/migrate")
10
+
11
+ # Setup the fixtures path
12
+ Test::Unit::TestCase.fixture_path = File.dirname(__FILE__) + "/fixtures/"
13
+ $LOAD_PATH.unshift(Test::Unit::TestCase.fixture_path)
14
+
15
+ class Test::Unit::TestCase #:nodoc:
16
+ def create_fixtures(*table_names)
17
+ if block_given?
18
+ Fixtures.create_fixtures(Test::Unit::TestCase.fixture_path, table_names) { yield }
19
+ else
20
+ Fixtures.create_fixtures(Test::Unit::TestCase.fixture_path, table_names)
21
+ end
22
+ end
23
+
24
+ self.use_transactional_fixtures = true
25
+ self.use_instantiated_fixtures = false
26
+ end
@@ -0,0 +1,137 @@
1
+ require 'test/unit'
2
+ require File.dirname(__FILE__) + '/../test_helper'
3
+
4
+ class ProtectedInfo < Info
5
+ ensures_immutability_of :account
6
+ end
7
+
8
+ class ImmutableAccount < Account
9
+ ensures_immutability_of :all
10
+ end
11
+
12
+ class EnsuresImmutabilityOfTest < Test::Unit::TestCase
13
+ fixtures :accounts
14
+ fixtures :infos
15
+
16
+ def test_association_assignment_if_nil
17
+ account = accounts(:nil_account)
18
+ assert_nothing_thrown do
19
+ account.info = infos(:foo)
20
+ end
21
+ end
22
+
23
+ def test_error_on_association_assignment
24
+ account = accounts(:wmoxam)
25
+ account.info = infos(:foo)
26
+
27
+ assert_raise ActiveRecord::ImmutableAttributeError do
28
+ account.info = infos(:bar)
29
+ end
30
+ end
31
+
32
+ def test_error_on_association_update
33
+ account = accounts(:wmoxam)
34
+ assert account.info.nil?
35
+ account.info = infos(:foo)
36
+
37
+ assert_raise ActiveRecord::ImmutableAttributeError do
38
+ account.update_attributes(:info => infos(:bar))
39
+ end
40
+ end
41
+
42
+ def test_error_on_belong_assignment
43
+ zee_info = ProtectedInfo.create :text => "zee"
44
+
45
+ assert_nothing_raised do
46
+ zee_info.account = accounts(:wmoxam)
47
+ end
48
+
49
+ assert_raise ActiveRecord::ImmutableAttributeError do
50
+ zee_info.account = accounts(:nil_account)
51
+ end
52
+ end
53
+
54
+ def test_belong_id_readonly
55
+ zee_info = ProtectedInfo.create :text => "zee"
56
+
57
+ wmoxam_account = accounts(:wmoxam)
58
+ assert_nothing_raised do
59
+ zee_info.account = wmoxam_account
60
+ end
61
+
62
+ nil_account = accounts(:nil_account)
63
+
64
+ zee_info.account_id = nil_account.id
65
+ assert_not_equal zee_info.account_id, wmoxam_account.id, "Failed to forcefully set the id."
66
+ zee_info.save!
67
+ assert_equal zee_info.account_id, wmoxam_account.id, "The reload did not reset the id to correct id."
68
+ end
69
+
70
+ def test_protected_has_many_assignment
71
+ account = accounts(:nil_account)
72
+ assert account.infos.empty?, "Account infos should be empty"
73
+ account.infos = [infos(:bar)]
74
+ assert_raise ActiveRecord::ImmutableAttributeError do
75
+ account.infos = [infos(:foo)]
76
+ end
77
+ end
78
+
79
+ def test_set_on_creation
80
+ account = nil
81
+ assert_nothing_thrown do
82
+ account = Account.create(:username => 'jgreen')
83
+ end
84
+ assert account.valid?
85
+ assert account.username == 'jgreen'
86
+ end
87
+
88
+ def test_set_same
89
+ account = accounts(:wmoxam)
90
+ assert_nothing_thrown do
91
+ account.username = 'wmoxam'
92
+ end
93
+ end
94
+
95
+ def test_assignment_if_nil
96
+ account = accounts(:nil_account)
97
+ assert_nothing_thrown do
98
+ account.username = 'jgreen'
99
+ end
100
+ assert account.save
101
+ end
102
+
103
+ def test_overrides_all_setters_when_configured_with_all_symbol
104
+ account = ImmutableAccount.create({
105
+ :username => 'johndoe',
106
+ :email => 'john.doe@example.org',
107
+ :info => infos(:foo),
108
+ :infos => [infos(:bar)]
109
+ })
110
+ assert_raise ActiveRecord::ImmutableAttributeError do
111
+ account.username = 'janedoe'
112
+ end
113
+ assert_raise ActiveRecord::ImmutableAttributeError do
114
+ account.email = 'jane.doe@example.org'
115
+ end
116
+ assert_raise ActiveRecord::ImmutableAttributeError do
117
+ account.info = infos(:bar)
118
+ end
119
+ assert_raise ActiveRecord::ImmutableAttributeError do
120
+ account.infos = [infos(:foo)]
121
+ end
122
+ end
123
+
124
+ def test_error_on_assignment
125
+ account = accounts(:wmoxam)
126
+ assert_raise ActiveRecord::ImmutableAttributeError do
127
+ account.username = 'jgreen'
128
+ end
129
+ end
130
+
131
+ def test_error_on_update
132
+ account = accounts(:wmoxam)
133
+ assert_raise ActiveRecord::ImmutableAttributeError do
134
+ account.update_attributes(:username => 'jgreen')
135
+ end
136
+ end
137
+ end
@@ -0,0 +1 @@
1
+ # Uninstall hook code here
data/rails/init.rb ADDED
@@ -0,0 +1 @@
1
+ require 'bookkeeper'
@@ -0,0 +1,3 @@
1
+ script/generate bookkeeper
2
+
3
+ This will install the CreateBookkeeperTables migration in db/migrate
@@ -0,0 +1,17 @@
1
+ class BookkeeperGenerator < Rails::Generator::Base
2
+
3
+ def manifest
4
+
5
+ recorded_session = record do |m|
6
+
7
+ # Create a blank fixtures file for each model
8
+ %w(accounts asset_types batches journals paypal_transactions postings).each do |table_name|
9
+ m.template 'fixtures.yml', File.join('test/fixtures', "#{table_name}.yml")
10
+ end
11
+
12
+ # Generate the migration
13
+ m.migration_template 'migration.rb', 'db/migrate', :migration_file_name => "create_bookkeeper_tables"
14
+ end
15
+ end
16
+
17
+ end
@@ -0,0 +1 @@
1
+ # Add your fixtures here
@@ -0,0 +1,66 @@
1
+ class CreateBookkeeperTables < ActiveRecord::Migration
2
+
3
+ def self.up
4
+ create_table :accounts do |t|
5
+ t.integer :parent_id
6
+ t.string :type
7
+ t.string :name
8
+ t.string :account_number
9
+ t.references :accountable, :polymorphic => true
10
+ t.timestamps
11
+ end
12
+
13
+ Account::Asset.create!(:name => 'Accounts Receivable')
14
+ Account::Liability.create!(:name => 'Accounts Payable')
15
+
16
+ create_table :asset_types do |t|
17
+ t.string :name
18
+ t.string :symbol
19
+ t.string :type
20
+ end
21
+
22
+ AssetType::CAD.create!(:name => 'Canadian Dollar', :symbol => '$')
23
+ AssetType::USD.create!(:name => 'US Dollar', :symbol => '$')
24
+
25
+ create_table :batches do |t|
26
+ t.timestamps
27
+ end
28
+
29
+ create_table :journals do |t|
30
+ t.string :type
31
+ t.references :transactable, :polymorphic => true
32
+ t.references :payable, :polymorphic => true
33
+ t.references :creditor, :polymorphic => true
34
+ t.references :debtor, :polymorphic => true
35
+ t.references :batch
36
+ t.timestamps
37
+ end
38
+
39
+ create_table :paypal_transactions do |t|
40
+ t.string :type
41
+ t.text :notification
42
+ t.string :transaction_id
43
+ t.timestamps
44
+ end
45
+
46
+ create_table :postings do |t|
47
+ t.integer :journal_id
48
+ t.references :asset_type
49
+ t.integer :account_id
50
+ t.string :accounting_period
51
+ t.decimal :amount, :precision => 14, :scale => 2, :null => false
52
+ t.timestamps
53
+ end
54
+
55
+ end
56
+
57
+ def self.down
58
+ drop_table :accounts
59
+ drop_table :asset_types
60
+ drop_table :batches
61
+ drop_table :journals
62
+ drop_table :paypal_transactions
63
+ drop_table :postings
64
+ end
65
+
66
+ end
metadata ADDED
@@ -0,0 +1,140 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: spatten-bookkeeper
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.2.0
5
+ platform: ruby
6
+ authors:
7
+ - Steven Luscher
8
+ - Scott Patten
9
+ autorequire:
10
+ bindir: bin
11
+ cert_chain: []
12
+
13
+ date: 2008-10-27 00:00:00 -07:00
14
+ default_executable:
15
+ dependencies:
16
+ - !ruby/object:Gem::Dependency
17
+ name: money
18
+ version_requirement:
19
+ version_requirements: !ruby/object:Gem::Requirement
20
+ requirements:
21
+ - - ">="
22
+ - !ruby/object:Gem::Version
23
+ version: "0"
24
+ version:
25
+ - !ruby/object:Gem::Dependency
26
+ name: aunderwo-acts_as_tree
27
+ version_requirement:
28
+ version_requirements: !ruby/object:Gem::Requirement
29
+ requirements:
30
+ - - ">="
31
+ - !ruby/object:Gem::Version
32
+ version: "0"
33
+ version:
34
+ - !ruby/object:Gem::Dependency
35
+ name: ryanb-acts-as-list
36
+ version_requirement:
37
+ version_requirements: !ruby/object:Gem::Requirement
38
+ requirements:
39
+ - - ">="
40
+ - !ruby/object:Gem::Version
41
+ version: "0"
42
+ version:
43
+ description: This alpha release of Bookkeeper is intended for community feedback; please be advised that it will undergo significant changes between now and its 1.0 release.
44
+ email: sluscher@stevenluscherdesign.com
45
+ executables: []
46
+
47
+ extensions: []
48
+
49
+ extra_rdoc_files: []
50
+
51
+ files:
52
+ - init.rb
53
+ - lib/bookkeeper/account/asset.rb
54
+ - lib/bookkeeper/account/expense.rb
55
+ - lib/bookkeeper/account/liability.rb
56
+ - lib/bookkeeper/account/revenue.rb
57
+ - lib/bookkeeper/account.rb
58
+ - lib/bookkeeper/asset_type/cad.rb
59
+ - lib/bookkeeper/asset_type/usd.rb
60
+ - lib/bookkeeper/asset_type.rb
61
+ - lib/bookkeeper/batch.rb
62
+ - lib/bookkeeper/journal/bill.rb
63
+ - lib/bookkeeper/journal/deposit.rb
64
+ - lib/bookkeeper/journal/disbursement.rb
65
+ - lib/bookkeeper/journal/invoice.rb
66
+ - lib/bookkeeper/journal/transfer.rb
67
+ - lib/bookkeeper/journal.rb
68
+ - lib/bookkeeper/paypal_transaction/masspay_subpayment.rb
69
+ - lib/bookkeeper/paypal_transaction/single.rb
70
+ - lib/bookkeeper/paypal_transaction.rb
71
+ - lib/bookkeeper/posting.rb
72
+ - lib/bookkeeper.rb
73
+ - lib/immutable-attribute-plugin/init.rb
74
+ - lib/immutable-attribute-plugin/install.rb
75
+ - lib/immutable-attribute-plugin/lib/ensures_immutability_of.rb
76
+ - lib/immutable-attribute-plugin/MIT-LICENSE
77
+ - lib/immutable-attribute-plugin/Rakefile
78
+ - lib/immutable-attribute-plugin/README
79
+ - lib/immutable-attribute-plugin/tasks/ensures_immutability_of_tasks.rake
80
+ - lib/immutable-attribute-plugin/test/fixtures/accounts.yml
81
+ - lib/immutable-attribute-plugin/test/fixtures/infos.yml
82
+ - lib/immutable-attribute-plugin/test/rails_root/app/controllers/application.rb
83
+ - lib/immutable-attribute-plugin/test/rails_root/app/helpers/application_helper.rb
84
+ - lib/immutable-attribute-plugin/test/rails_root/app/models/account.rb
85
+ - lib/immutable-attribute-plugin/test/rails_root/app/models/info.rb
86
+ - lib/immutable-attribute-plugin/test/rails_root/config/boot.rb
87
+ - lib/immutable-attribute-plugin/test/rails_root/config/database.yml
88
+ - lib/immutable-attribute-plugin/test/rails_root/config/environment.rb
89
+ - lib/immutable-attribute-plugin/test/rails_root/config/environments/development.rb
90
+ - lib/immutable-attribute-plugin/test/rails_root/config/environments/mysql.rb
91
+ - lib/immutable-attribute-plugin/test/rails_root/config/environments/postgresql.rb
92
+ - lib/immutable-attribute-plugin/test/rails_root/config/environments/production.rb
93
+ - lib/immutable-attribute-plugin/test/rails_root/config/environments/sqlite.rb
94
+ - lib/immutable-attribute-plugin/test/rails_root/config/environments/sqlite3.rb
95
+ - lib/immutable-attribute-plugin/test/rails_root/config/environments/test.rb
96
+ - lib/immutable-attribute-plugin/test/rails_root/config/routes.rb
97
+ - lib/immutable-attribute-plugin/test/rails_root/db/migrate/001_create_accounts.rb
98
+ - lib/immutable-attribute-plugin/test/rails_root/db/migrate/002_create_infos.rb
99
+ - lib/immutable-attribute-plugin/test/rails_root/Rakefile
100
+ - lib/immutable-attribute-plugin/test/rails_root/README
101
+ - lib/immutable-attribute-plugin/test/rails_root/script/console
102
+ - lib/immutable-attribute-plugin/test/rails_root/script/runner
103
+ - lib/immutable-attribute-plugin/test/rails_root/test/test_helper.rb
104
+ - lib/immutable-attribute-plugin/test/rails_root/vendor/plugins/phone_validation/init.rb
105
+ - lib/immutable-attribute-plugin/test/test_helper.rb
106
+ - lib/immutable-attribute-plugin/test/unit/plugin_test.rb
107
+ - lib/immutable-attribute-plugin/uninstall.rb
108
+ - rails/init.rb
109
+ - rails_generators/bookkeeper_generator.rb
110
+ - rails_generators/templates/migration.rb
111
+ - rails_generators/templates/fixtures.yml
112
+ - rails_generators/USAGE
113
+ has_rdoc: false
114
+ homepage: http://github.com/steveluscher/bookkeeper
115
+ post_install_message:
116
+ rdoc_options: []
117
+
118
+ require_paths:
119
+ - lib
120
+ required_ruby_version: !ruby/object:Gem::Requirement
121
+ requirements:
122
+ - - ">="
123
+ - !ruby/object:Gem::Version
124
+ version: "0"
125
+ version:
126
+ required_rubygems_version: !ruby/object:Gem::Requirement
127
+ requirements:
128
+ - - ">="
129
+ - !ruby/object:Gem::Version
130
+ version: "0"
131
+ version:
132
+ requirements: []
133
+
134
+ rubyforge_project:
135
+ rubygems_version: 1.2.0
136
+ signing_key:
137
+ specification_version: 2
138
+ summary: A double-entry accounting system for Rails.
139
+ test_files: []
140
+