Created
January 24, 2011 19:44
-
-
Save knewter/793811 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
diff --git a/config/environments/cucumber.rb b/config/environments/cucumber.rb | |
index d559e10..5cfd256 100644 | |
--- a/config/environments/cucumber.rb | |
+++ b/config/environments/cucumber.rb | |
@@ -28,7 +28,7 @@ config.gem 'rspec', :lib => false, :version => '>=1.3.0' unless File. | |
config.gem 'rspec-rails', :lib => false, :version => '>=1.3.2' unless File.directory?(File.join(Rails.root, 'vendor/plugins/rspec-rails')) | |
config.gem 'pickle' | |
config.gem 'delorean' | |
-config.gem 'faker' | |
+config.gem 'ffaker' | |
require "ezcrypto" | |
SALT = '203458b^*29sjSdf;]-@2476{' | |
diff --git a/config/environments/development.rb b/config/environments/development.rb | |
index 6e440a1..77dd14a 100644 | |
--- a/config/environments/development.rb | |
+++ b/config/environments/development.rb | |
@@ -34,5 +34,5 @@ config.gem 'database_cleaner', :lib => false, :version => '>=0.5.0' unless File. | |
config.gem 'capybara', :lib => false, :version => '>=0.3.5' unless File.directory?(File.join(Rails.root, 'vendor/plugins/capybara')) | |
config.gem 'rspec', :lib => false, :version => '>=1.3.0' unless File.directory?(File.join(Rails.root, 'vendor/plugins/rspec')) | |
config.gem 'rspec-rails', :lib => false, :version => '>=1.3.2' unless File.directory?(File.join(Rails.root, 'vendor/plugins/rspec-rails')) | |
-config.gem 'faker' | |
+config.gem 'ffaker' | |
config.gem 'system_timer' | |
diff --git a/config/environments/test.rb b/config/environments/test.rb | |
index f0f31b5..dfd4326 100644 | |
--- a/config/environments/test.rb | |
+++ b/config/environments/test.rb | |
@@ -30,7 +30,7 @@ config.gem "rspec", :lib => false, :version => ">= 1.2.9" | |
config.gem "rspec-rails", :lib => false, :version => ">= 1.2.9" | |
config.gem "remarkable_rails", :lib => false, :version => ">= 3.1.10" | |
config.gem "fast_context" | |
-config.gem 'faker' | |
+config.gem 'ffaker' | |
require "ezcrypto" | |
SALT = '203458b^*29sjSdf;]-@2476{' | |
diff --git a/lib/reports/tax_settlement.rb b/lib/reports/tax_settlement.rb | |
index ce548ae..f7e83d4 100644 | |
--- a/lib/reports/tax_settlement.rb | |
+++ b/lib/reports/tax_settlement.rb | |
@@ -56,6 +56,7 @@ module Reports | |
structure[loan_type.name + " $"] += BigDecimal(record["pbl_amount"]) | |
structure[loan_type.name + " Paid"] += BigDecimal(record["pbl_paid"]) | |
structure[loan_type.name + " Bal"] += BigDecimal(record["pbl_bal"]) | |
+ structure["Lender"] = record["lender"] | |
summary_data["Total " + loan_type.name + " $"] += BigDecimal(record["pbl_amount"]) | |
summary_data["Total " + loan_type.name + " Paid"] += BigDecimal(record["pbl_paid"]) | |
summary_data["Total " + loan_type.name + " Bal"] += BigDecimal(record["pbl_bal"]) | |
diff --git a/spec/lib/reports/tax_settlement_spec.rb b/spec/lib/reports/tax_settlement_spec.rb | |
index b0e4df2..ba7f2ab 100644 | |
--- a/spec/lib/reports/tax_settlement_spec.rb | |
+++ b/spec/lib/reports/tax_settlement_spec.rb | |
@@ -4,25 +4,30 @@ describe Reports::TaxSettlement do | |
before(:each) do | |
@person = Factory(:person) | |
@card_account = Factory(:card_account, :person => @person) | |
- @txn = Factory(:tax_solution_transaction, :card_account => @card_account) | |
+ @agent = Factory(:agent) | |
+ @region = Factory(:region, :agent => @agent) | |
+ @district = Factory(:district, :region => @region) | |
+ @store = Factory(:store, :agent => @agent, :district => @district) | |
+ @txn = Factory(:tax_solution_transaction, :card_account => @card_account, :store => @store, :agent => @agent) | |
@txn.update_attributes(:created_at => 1.days.ago) | |
+ @tsirf = Factory(:tax_solution_irs_return_file) | |
end | |
context "in lender mode" do | |
context "when some loans exist" do | |
before(:each) do | |
@payable = Factory(:loan_tax_solution_payable, :tax_solution_transaction => @txn, :amount => 1000, :created_at => 1.days.ago) | |
- @payable.make_payment @payable.amount | |
+ @payable.make_payment @payable.amount, @tsirf.id | |
@payable.tax_solution_payments.last.update_attribute(:created_at, Time.zone.now.at_beginning_of_day) | |
@payable.update_attributes(:paid_off_at => 1.days.ago, :created_at => 1.days.ago ) | |
end | |
context "given an agent/lender" do | |
it "should return csv related to that lender" do | |
- @report =Reports::TaxSettlement.new :mode => "lender" | |
+ @report = Reports::TaxSettlement.new :mode => "lender" | |
@report.csv.split("\n")[0].should =~ /^Date,Lender,Agent,Region,District,Store,Name,SSN,(.+) Loan \$,(.+) Loan Paid,(.+) Loan Bal$/ | |
- @report.csv.split("\n")[1].should =~ %r{#{@txn.created_at.to_s(:american_with_time)},#{@txn.tax_solution_lender.to_s},#{@txn.agent.to_s},#{@txn.store.district.region.to_s},#{@txn.store.district.to_s},#{@txn.store.to_s},\"#{@person.to_s}\",#{@person.send(:decrypt_ssn)},#{@payable.amount.to_s},#{@payable.amount.to_s},#{@payable.remaining_balance.to_s}$} | |
- @report.csv.split("\n")[2].should =~ /"\"\",#{@payable.amount.to_s},\"\",\"\",\"\",\"\",\"\",\"\",#{@payable.amount.to_s},#{@payable.amount.to_s}$/ | |
+ @report.csv.split("\n")[1].should =~ %r{#{@txn.created_at.to_s(:db)},#{@txn.tax_solution_lender.name},#{@txn.agent.code},#{@txn.store.district.region.to_s},#{@txn.store.district.to_s},#{@txn.store.name},#{@person.first_and_last_name},#{@person.send(:decrypt_ssn)},#{@card_account.send(:decrypt_direct_deposit_account_number)},#{@payable.amount.to_s},#{@payable.amount.to_s},#{@payable.remaining_balance.to_s}$} | |
+ @report.csv.split("\n")[2].should =~ /\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",#{@payable.amount.to_s},#{@payable.amount.to_s},#{@payable.remaining_balance.to_s}$/ | |
end | |
end | |
end | |
@@ -33,16 +38,16 @@ describe Reports::TaxSettlement do | |
before(:each) do | |
@obligation = RegionTaxSolutionFeeType.create! :name => "blah", :agent => @txn.store.agent, :priority => 1 | |
@fee = Factory(:fee_tax_solution_payable, :tax_solution_transaction => @txn, :amount => 10, :created_at => 1.days.ago, :obligation => @obligation) | |
- @fee.make_payment @fee.amount | |
+ @fee.make_payment @fee.amount, @tsirf.id | |
@fee.tax_solution_payments.last.update_attribute(:created_at, Time.zone.now.at_beginning_of_day) | |
@fee.update_attribute(:paid_off_at, 1.days.ago) | |
end | |
context "given an agent or region" do | |
it "should return csv related to that region" do | |
- @report = Reports::TaxSettlement.new :mode => "region" | |
+ @report = Reports::TaxSettlement.new :mode => "region", :agent => @txn.store.agent | |
@report.csv.split("\n")[0].should =~ /^Date,Agent,Region,District,Store,Name,SSN,DDA,blah Paid,Subtotals$/ | |
- @report.csv.split("\n")[1].should =~ %r{#{@txn.created_at.to_s(:american_with_time)},#{@txn.agent.to_s},#{@txn.store.district.region.to_s},#{@txn.store.district.to_s},#{@txn.store.to_s},\"#{@person.to_s}\",#{@person.send(:decrypt_ssn)},#{@card_account.send(:decrypt_direct_deposit_account_number)},#{@fee.amount.to_s},#{@fee.amount.to_s}$} | |
+ @report.csv.split("\n")[1].should =~ %r{#{@txn.created_at.to_s(:db)},#{@txn.agent.code},#{@txn.store.district.region.to_s},#{@txn.store.district.to_s},#{@txn.store.name},#{@person.first_and_last_name},#{@person.send(:decrypt_ssn)},#{@card_account.send(:decrypt_direct_deposit_account_number)},#{@fee.amount.to_s},#{@fee.amount.to_s}$} | |
end | |
end | |
end | |
@@ -52,16 +57,16 @@ describe Reports::TaxSettlement do | |
before(:each) do | |
@obligation = AgentTaxSolutionFeeType.create! :name => "agent1", :agent => @txn.store.agent, :priority => 1 | |
@fee = Factory(:fee_tax_solution_payable, :tax_solution_transaction => @txn, :amount => 10, :created_at => 1.days.ago, :obligation => @obligation) | |
- @fee.make_payment @fee.amount | |
+ @fee.make_payment @fee.amount, @tsirf.id | |
@fee.tax_solution_payments.last.update_attribute(:created_at, Time.zone.now.at_beginning_of_day) | |
@fee.update_attribute(:paid_off_at, 1.days.ago) | |
end | |
context "when some agent fees exist" do | |
context "given an agent" do | |
it "should return csv related to that agent" do | |
- @report = Reports::TaxSettlement.new :mode => "agent" | |
+ @report = Reports::TaxSettlement.new :mode => "agent", :agent => @txn.store.agent | |
@report.csv.split("\n")[0].should =~ /^Date,Agent,Region,District,Store,Name,SSN,DDA,agent1 Paid,Subtotals/ | |
- @report.csv.split("\n")[1].should =~ %r{#{@txn.created_at.to_s(:american_with_time)},#{@txn.agent.to_s},#{@txn.store.district.region.to_s},#{@txn.store.district.to_s},#{@txn.store.to_s},\"#{@person.to_s}\",#{@person.send(:decrypt_ssn)},#{@card_account.send(:decrypt_direct_deposit_account_number)},#{@fee.amount.to_s},#{@fee.amount.to_s}$} | |
+ @report.csv.split("\n")[1].should =~ %r{#{@txn.created_at.to_s(:db)},#{@txn.agent.code},#{@txn.store.district.region.to_s},#{@txn.store.district.to_s},#{@txn.store.name},#{@person.first_and_last_name},#{@person.send(:decrypt_ssn)},#{@card_account.send(:decrypt_direct_deposit_account_number)},#{@fee.amount.to_s},#{@fee.amount.to_s}$} | |
end | |
end | |
end |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment