Skip to content

Commit 1353a27

Browse files
committed
Update logging configuration and ignore log files
Configure ActiveRecord logger in env.rb based on environment variable, enable with `DATABASE_LOG=1`. Add cucumber logs to the ignored list in .gitignore. - Update `DATABASE_LOG` handling in `features/support/env.rb` - Add `log/*` to `.gitignore` - Modify `transfer` method in `lib/acts_as_account/journal.rb` to safely reference objects.
1 parent a201596 commit 1353a27

File tree

5 files changed

+8
-4
lines changed

5 files changed

+8
-4
lines changed

.gitignore

+1
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
.DS_Store
44
.byebug_history
55
.rvmrc
6+
/log/*
67
Gemfile.lock
78
coverage
89
pkg

Rakefile

+1-1
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ GemHadar do
1717

1818
test_dir 'tests'
1919
ignore '.*.sw[pon]', 'pkg', 'Gemfile.lock', 'coverage', '.rvmrc',
20-
'.AppleDouble', 'tags', '.byebug_history', '.DS_Store'
20+
'.AppleDouble', 'tags', '.byebug_history', '.DS_Store', '/log/*'
2121
readme 'README.md'
2222
title "#{name.camelize} -- More Math in Ruby"
2323
licenses << 'Apache-2.0'

acts_as_account.gemspec

+2-2
Original file line numberDiff line numberDiff line change
@@ -8,11 +8,11 @@ Gem::Specification.new do |s|
88
s.required_rubygems_version = Gem::Requirement.new(">= 0".freeze) if s.respond_to? :required_rubygems_version=
99
s.require_paths = ["lib".freeze]
1010
s.authors = ["Thies C. Arntzen, Norman Timmler, Matthias Frick, Phillip Oertel".freeze]
11-
s.date = "2024-10-29"
11+
s.date = "2024-11-01"
1212
s.description = "acts_as_account implements double entry accounting for Rails models. Your\nmodels get accounts and you can do consistent transactions between them.\nSince the documentation is sparse, see the transfer.feature for usage\nexamples.\n".freeze
1313
s.email = "[email protected]".freeze
1414
s.extra_rdoc_files = ["README.md".freeze, "lib/acts_as_account.rb".freeze, "lib/acts_as_account/account.rb".freeze, "lib/acts_as_account/active_record_extensions.rb".freeze, "lib/acts_as_account/configuration.rb".freeze, "lib/acts_as_account/global_account.rb".freeze, "lib/acts_as_account/journal.rb".freeze, "lib/acts_as_account/manually_created_account.rb".freeze, "lib/acts_as_account/posting.rb".freeze, "lib/acts_as_account/rails.rb".freeze, "lib/acts_as_account/transfer.rb".freeze, "lib/acts_as_account/version.rb".freeze]
15-
s.files = [".github/workflows/lint.yml".freeze, ".github/workflows/tests.yml".freeze, ".gitignore".freeze, ".rubocop.yml".freeze, "CHANGELOG.md".freeze, "Gemfile".freeze, "LICENSE".freeze, "README.md".freeze, "Rakefile".freeze, "VERSION".freeze, "acts_as_account.gemspec".freeze, "acts_as_account.sqlite".freeze, "cucumber.yml".freeze, "features/account/account_creation.feature".freeze, "features/db/database.yml".freeze, "features/db/schema.rb".freeze, "features/step_definitions/account_steps.rb".freeze, "features/support/abstract_user.rb".freeze, "features/support/cheque.rb".freeze, "features/support/env.rb".freeze, "features/support/inheriting_user.rb".freeze, "features/support/user.rb".freeze, "features/transfer/journal_creation.feature".freeze, "features/transfer/transfer.feature".freeze, "init.rb".freeze, "lib/acts_as_account.rb".freeze, "lib/acts_as_account/account.rb".freeze, "lib/acts_as_account/active_record_extensions.rb".freeze, "lib/acts_as_account/configuration.rb".freeze, "lib/acts_as_account/global_account.rb".freeze, "lib/acts_as_account/journal.rb".freeze, "lib/acts_as_account/manually_created_account.rb".freeze, "lib/acts_as_account/posting.rb".freeze, "lib/acts_as_account/rails.rb".freeze, "lib/acts_as_account/transfer.rb".freeze, "lib/acts_as_account/version.rb".freeze]
15+
s.files = [".github/workflows/lint.yml".freeze, ".github/workflows/tests.yml".freeze, ".gitignore".freeze, ".rubocop.yml".freeze, "CHANGELOG.md".freeze, "Gemfile".freeze, "LICENSE".freeze, "README.md".freeze, "Rakefile".freeze, "VERSION".freeze, "acts_as_account.gemspec".freeze, "acts_as_account.sqlite".freeze, "cucumber.yml".freeze, "docker-compose.yml".freeze, "features/account/account_creation.feature".freeze, "features/db/database.yml".freeze, "features/db/schema.rb".freeze, "features/step_definitions/account_steps.rb".freeze, "features/support/abstract_user.rb".freeze, "features/support/cheque.rb".freeze, "features/support/db.rb".freeze, "features/support/env.rb".freeze, "features/support/inheriting_user.rb".freeze, "features/support/user.rb".freeze, "features/transfer/journal_creation.feature".freeze, "features/transfer/transfer.feature".freeze, "init.rb".freeze, "lib/acts_as_account.rb".freeze, "lib/acts_as_account/account.rb".freeze, "lib/acts_as_account/active_record_extensions.rb".freeze, "lib/acts_as_account/configuration.rb".freeze, "lib/acts_as_account/global_account.rb".freeze, "lib/acts_as_account/journal.rb".freeze, "lib/acts_as_account/manually_created_account.rb".freeze, "lib/acts_as_account/posting.rb".freeze, "lib/acts_as_account/rails.rb".freeze, "lib/acts_as_account/transfer.rb".freeze, "lib/acts_as_account/version.rb".freeze, "log/.keep".freeze]
1616
s.homepage = "https://github.com/betterplace/acts_as_account".freeze
1717
s.licenses = ["Apache-2.0".freeze]
1818
s.rdoc_options = ["--title".freeze, "ActsAsAccount -- More Math in Ruby".freeze, "--main".freeze, "README.md".freeze]

features/support/env.rb

+3
Original file line numberDiff line numberDiff line change
@@ -28,4 +28,7 @@
2828
# Default values:
2929
# config.persist_attributes_on_account = true
3030
end
31+
if ENV['DATABASE_LOG'].to_i == 1 && ActiveRecord::Base.logger.nil?
32+
ActiveRecord::Base.logger = Logger.new(File.open("log/cucumber.log", 'a'))
33+
end
3134
end

lib/acts_as_account/journal.rb

+1-1
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ def transfer(amount, from_account, to_account, reference = nil, valuta = Time.no
3737
"amount: #{amount}",
3838
"from: #{from_account.id}",
3939
"to: #{to_account.id}",
40-
"reference: #{reference.class.name}(#{reference.id})",
40+
"reference: #{reference.class.name}(#{reference&.id})",
4141
"valuta: #{valuta}",
4242
].join(' ')
4343
)

0 commit comments

Comments
 (0)