From 4453374f4e9ae51ea4d9dec4c4407e420e61b72f Mon Sep 17 00:00:00 2001 From: manuel Date: Sun, 22 May 2011 17:29:58 +0200 Subject: some stuff.. --- bank-eiffel/account.e | 14 +++++++------- bank-eiffel/tests/test_account.e | 5 ++++- 2 files changed, 11 insertions(+), 8 deletions(-) (limited to 'bank-eiffel') diff --git a/bank-eiffel/account.e b/bank-eiffel/account.e index 154a1fa..3ef7a8b 100644 --- a/bank-eiffel/account.e +++ b/bank-eiffel/account.e @@ -51,8 +51,9 @@ feature {NONE} -- Initialization feature -- Basic operations - deposit (an_amount: like transfer_minamount) + deposit (an_amount: like transfer_minamount; an_authorized_signer: PERSON) require + an_authorized_signer_authorized: authorized_signers.has (an_authorized_signer) an_amount_positive: an_amount > 0.0 transfer_minamount_ok: an_amount >= transfer_minamount do @@ -62,8 +63,9 @@ feature -- Basic operations deposited: balance = old balance + an_amount end - withdraw (an_amount: like transfer_minamount) + withdraw (an_amount: like transfer_minamount; an_authorized_signer: PERSON) require + an_authorized_signer_authorized: authorized_signers.has (an_authorized_signer) an_amount_positive: an_amount > 0.0 transfer_minamount_ok: an_amount >= transfer_minamount do @@ -74,14 +76,12 @@ feature -- Basic operations creditline_ok: balance >= creditline end - transfer(an_amount: like transfer_minamount; an_account: like Current) + transfer(an_amount: like transfer_minamount; an_authorized_signer: PERSON; an_account: like Current; another_authorized_signer: PERSON;) require - an_amount_positive: an_amount > 0.0 - transfer_minamount_ok: an_amount >= transfer_minamount an_account_attached: an_account /= Void do - withdraw (an_amount) - an_account.deposit (an_amount) + withdraw (an_amount, an_authorized_signer) + an_account.deposit (an_amount, another_authorized_signer) end add_authorized_signer (an_authorized_signer: PERSON) diff --git a/bank-eiffel/tests/test_account.e b/bank-eiffel/tests/test_account.e index 7f16cc7..a460023 100644 --- a/bank-eiffel/tests/test_account.e +++ b/bank-eiffel/tests/test_account.e @@ -18,10 +18,13 @@ feature -- Test routines CREATE_EDIT_ACCOUNT local person1: PERSON + person2: PERSON account: ACCOUNT do - create person1.make ("SOME_SURNAME", "SOME_FIRSTNAME") + create person1.make ("SOME_SURNAME_1", "SOME_FIRSTNAME_1") + create person2.make ("SOME_SURNAME_2", "SOME_FIRSTNAME_2") create account.make (person1) + account.add_authorized_signer (person2) --assert ("not_implemented", False) end -- cgit v1.2.3