Commit 45020470 authored by Łukasz Nowak's avatar Łukasz Nowak

Use invoice to represent negative balance.

parent 63648e83
...@@ -234,6 +234,18 @@ class TestVifibSlapComputerPartitionLock(TestVifibSlapWebServiceMixin): ...@@ -234,6 +234,18 @@ class TestVifibSlapComputerPartitionLock(TestVifibSlapWebServiceMixin):
def stepStartInvoice(self, sequence, **kw): def stepStartInvoice(self, sequence, **kw):
sequence['invoice'].start() sequence['invoice'].start()
def stepCheckWebUserBalanceHighAmount(self, sequence, **kw):
person = self.portal.ERP5Site_getAuthenticatedMemberPersonValue(sequence[
'web_user'])
self.assertEqual(-10000.0,
self.portal.portal_simulation.getInventoryAssetPrice(
node_category='account_type/asset/receivable',
simulation_state=['started', 'stopped', 'delivered'],
section_uid=self.portal.restrictedTraverse(
'organisation_module/vifib_internet').getUid(),
mirror_section_uid=person.getUid())
)
def stepCheckWebUserBalanceSmallAmount(self, sequence, **kw): def stepCheckWebUserBalanceSmallAmount(self, sequence, **kw):
person = self.portal.ERP5Site_getAuthenticatedMemberPersonValue(sequence[ person = self.portal.ERP5Site_getAuthenticatedMemberPersonValue(sequence[
'web_user']) 'web_user'])
...@@ -352,31 +364,26 @@ class TestVifibSlapComputerPartitionLock(TestVifibSlapWebServiceMixin): ...@@ -352,31 +364,26 @@ class TestVifibSlapComputerPartitionLock(TestVifibSlapWebServiceMixin):
sequence_list.addSequenceString(sequence_string) sequence_list.addSequenceString(sequence_string)
sequence_list.play(self) sequence_list.play(self)
def stepCreateHighBalanceNotPaidPayment(self, sequence, **kw): def stepCreateHighBalanceInvoiceWebUser(self, sequence, **kw):
person = self.portal.ERP5Site_getAuthenticatedMemberPersonValue(sequence[ person = self.portal.ERP5Site_getAuthenticatedMemberPersonValue(sequence[
'web_user']) 'web_user'])
payment_transaction = self.portal.accounting_module.newContent( invoice = self.portal.accounting_module.newContent(
portal_type='Sale Invoice Transaction',
start_date=DateTime(),
resource='currency_module/EUR',
source_section='organisation_module/vifib_internet', source_section='organisation_module/vifib_internet',
source='organisation_module/vifib_internet',
destination_section=person.getRelativeUrl(), destination_section=person.getRelativeUrl(),
resource='currency_module/EUR', destination=person.getRelativeUrl(),
portal_type="Payment Transaction", specialise='sale_trade_condition_module/vifib_trade_condition'
start_date=DateTime(),
# XXX More info needed
)
payment_transaction.newContent(
portal_type="Accounting Transaction Line",
quantity=10000,
source='account_module/receivable',
) )
payment_transaction.newContent( invoice.newContent(
portal_type="Accounting Transaction Line", portal_type='Invoice Line',
quantity=-10000, resource=self.portal.portal_preferences.getPreferredRegistrationResource(),
source='account_module/sales', quantity=1,
price=10000
) )
payment_transaction.confirm() sequence['invoice'] = invoice
payment_transaction.start()
# XXX More info needed
payment_transaction.checkConsistency()
def test_automated_person_high_not_paid_locking(self): def test_automated_person_high_not_paid_locking(self):
"""Test that a person is automatically locked by an alarm if payment has """Test that a person is automatically locked by an alarm if payment has
...@@ -393,16 +400,7 @@ class TestVifibSlapComputerPartitionLock(TestVifibSlapWebServiceMixin): ...@@ -393,16 +400,7 @@ class TestVifibSlapComputerPartitionLock(TestVifibSlapWebServiceMixin):
CheckPersonUnlockedState \ CheckPersonUnlockedState \
Tic \ Tic \
Logout \ Logout \
\ ' + self.lock_user_string() + '\
LoginERP5TypeTestCase \
CreateHighBalanceNotPaidPayment \
Tic \
Logout \
\
TriggerLockPersonAlarm \
Tic \
Logout \
\
LoginWebUser \ LoginWebUser \
CheckPersonLockedState \ CheckPersonLockedState \
Tic \ Tic \
...@@ -529,13 +527,8 @@ class TestVifibSlapComputerPartitionLock(TestVifibSlapWebServiceMixin): ...@@ -529,13 +527,8 @@ class TestVifibSlapComputerPartitionLock(TestVifibSlapWebServiceMixin):
Tic \ Tic \
Logout \ Logout \
' + \ ' + \
self.create_new_user_instance_sequence_string + '\ self.create_new_user_instance_sequence_string + \
LoginERP5TypeTestCase \ self.lock_user_string() + '\
CreateHighBalanceNotPaidPayment \
Tic \
\
TriggerLockPersonAlarm \
Tic \
CheckInstanceLocked \ CheckInstanceLocked \
\ \
DeliverPayment \ DeliverPayment \
...@@ -592,9 +585,14 @@ class TestVifibSlapComputerPartitionLock(TestVifibSlapWebServiceMixin): ...@@ -592,9 +585,14 @@ class TestVifibSlapComputerPartitionLock(TestVifibSlapWebServiceMixin):
def lock_user_string(self): def lock_user_string(self):
return '\ return '\
LoginERP5TypeTestCase \ LoginERP5TypeTestCase \
CreateHighBalanceNotPaidPayment \ CreateHighBalanceInvoiceWebUser \
Tic \ Tic \
\ PlanInvoice \
Tic \
ConfirmInvoice \
StartInvoice \
Tic \
CheckWebUserBalanceHighAmount \
TriggerLockPersonAlarm \ TriggerLockPersonAlarm \
Tic \ Tic \
Logout \ Logout \
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment