static void Main(string[] args) { Console.WriteLine("Do something usual\n"); ATMMachine atmMachine = new ATMMachine(); atmMachine.InsertCard(); atmMachine.InsertPin(1234); atmMachine.RequestCash(10000); atmMachine.EjectCard(); Console.WriteLine("\n\n\nDo something unusual\n"); atmMachine.RequestCash(10000); atmMachine.InsertPin(1234); atmMachine.RequestCash(10000); atmMachine.EjectCard(); Console.Write("\n\n\n"); int ch; ButtonMachine button = null; do { if (button == null) { button = new ButtonMachine(); } else { button.Push(); } Console.WriteLine("Push \"Enter\""); ch = Console.ReadKey().KeyChar; } while (ch == 13); }
public static void Main(string[] args) { ATMMachine atm = new ATMMachine(); IList<BankNote> list = atm.GetAmount(235); Console.WriteLine("The notes handed out by the ATM machine are:"); BankNote.PrintList(list); Console.WriteLine(""); }
public static void RunState() { ATMMachine atm = new ATMMachine(); atm.insertCard(); atm.ejectCard(); atm.insertCard(); atm.insertPin(1234); atm.requestCash(2000); atm.insertCard(); atm.insertPin(1234); }
// Use this for initialization void OnEnable() { Debug.Log("------------------"); Debug.Log("PROXY DESIGN PATTERN"); GetATMData realATMMachine = new ATMMachine(); GetATMData atmProxy = new ATMProxy(); Debug.Log("Current State: " + atmProxy.GetCurrentState()); Debug.Log("Current Cash in Machine: " + atmProxy.GetCashInMachine()); //atmProxy.setCashInMachine << not possible because not defined in the interface }
static void Main(string[] args) { ATMMachine atmMachine = new ATMMachine(); atmMachine.InsertCard(); atmMachine.EjectCard(); atmMachine.InsertCard(); atmMachine.insertPin(1234); atmMachine.RquestCash(2000); atmMachine.InsertCard(); atmMachine.insertPin(1234); }
public static void Main() { var atm = new ATMMachine(); atm.InsertCard(); atm.EjectCard(); atm.InsertCard(); atm.InsertCard(); atm.InsertPin(1234); atm.RequestCash(150); atm.EjectCard(); atm.InsertCard(); atm.InsertPin(1234); }
public static void Main_() { ATMMachine atmMachine = new ATMMachine(); atmMachine.insertCard(); atmMachine.ejectCard(); atmMachine.insertCard(); atmMachine.insertPin(1234); atmMachine.requestCash(2000); atmMachine.insertCard(); atmMachine.insertPin(1234); }
void Start() { ATMMachine atmMachine = new ATMMachine(); atmMachine.insertCard(); atmMachine.ejectCard(); atmMachine.insertCard(); atmMachine.insertPin(1234); atmMachine.requestCash(2000); atmMachine.insertCard(); atmMachine.insertPin(1234); }
public void Test_bank_card() { Server server = new Server.Builder().SetCardNumberDB("9856 4587 5656 2325") .SetOwnerNameDB("John Smith") .SetMoneyDB(100000) .SetPinDB("6981") .Build(); ATMMachine machine = new ATMMachine(server); Card cardA = new Card { CardNumber = "9856 4587 5656 2325", OnwerName = "John Smith" }; Card cardB = new Card { CardNumber = "9476 4587 1666 2345", OnwerName = "John Smith" }; Card cardC = new Card { CardNumber = "9856 4587 5656 2325", OnwerName = "Mary Smith" }; { machine.InsertDebitCard(card: cardA); Assert.That(machine.EnterPin("6981"), Is.EqualTo(true)); Assert.That(machine.WithdrawMoney(5000), Is.EqualTo(true)); Assert.That(machine.WithdrawMoney(200000), Is.EqualTo(false)); Assert.Throws <InvalidOperationException>(() => machine.InsertDebitCard(card: cardA), "Card already in machine, can not insert more than 1 card."); machine.EjectDebitCard(); Assert.Throws <InvalidOperationException>(() => machine.EnterPin("15354"), "Card not found, can not enter pin."); Assert.Throws <InvalidOperationException>(() => machine.EjectDebitCard(), "Card not found, can not eject card."); } { Assert.Throws <ArgumentException>(() => machine.InsertDebitCard(card: cardB), "Card with this number does not exist in DB."); } { Assert.Throws <ArgumentException>(() => machine.InsertDebitCard(card: cardC), "Card with this name does not exist in DB."); } }
static void Main(string[] args) { //ATM machine being used directly. ATMMachine atmMachine = new ATMMachine(); Console.WriteLine("Using Machine directly"); Console.WriteLine(atmMachine.getATMState()); Console.WriteLine(atmMachine.GetCashInMachine()); atmMachine.SetCashInATMMachine(50000); Console.WriteLine(atmMachine.GetCashInMachine()); atmMachine.StartMaintainace(); atmMachine.StartWorking(); //ATM machine being used as a secure proxy to just get the cash present in machine and check the state. IATMData machine = new ATMProxy(); Console.WriteLine("Using Proxy"); machine.getATMState(); machine.GetCashInMachine(); }
public void InsertCard(ATMMachine aTMMachine) { //aTMMachine.ChangeState(new HasCard()); Console.WriteLine("\tCard is already inserted."); }
public void EjectCard(ATMMachine aTMMachine) { aTMMachine.ChangeState(new NoCard()); Console.WriteLine("\tCard is ejected."); }
public int GetATMCash() { ATMMachine atmMachine = new ATMMachine(); return(atmMachine.GetATMCash()); }
public int GetATMStatus() { ATMMachine atmMachine = new ATMMachine(); return(atmMachine.GetATMStatus()); }
public HasPin(ATMMachine newATMMachine) { atmMachine = newATMMachine; }
public HasCard(ATMMachine newATMMachine) { atmMachine = newATMMachine; }
public int GetCashInMachine() { ATMMachine atm = new ATMMachine(); return(atm.GetCashInMachine()); }
public NoCard(ATMMachine newATMMachine) { this.atmMachine = newATMMachine; }
public void InsertPin(ATMMachine aTMMachine) { aTMMachine.ChangeState(new HasPin()); Console.WriteLine("\tPin is inserted."); }
public ATMState GetCurrentState() { ATMMachine atm = new ATMMachine(); return(atm.GetCurrentState()); }
public NoCash(ATMMachine newATMMachine) { atmMachine = newATMMachine; }
public void RequestCash(ATMMachine aTMMachine) { //aTMMachine.ChangeState(new HasCard()); Console.WriteLine("\tPin must be inserted first!"); }
public void InsertPin(ATMMachine aTMMachine) { //aTMMachine.ChangeState(new NoCard()); Console.WriteLine("\tPin is already inserted."); }
public void InsertPin(ATMMachine aTMMachine) { //aTMMachine.ChangeState(new Has()); Console.WriteLine("\tNo card to be inserted."); }
public void EjectCard(ATMMachine aTMMachine) { //aTMMachine.ChangeState(new NoCard()); Console.WriteLine("\tNo card to be ejected."); }
public void RequestCash(ATMMachine aTMMachine) { Console.WriteLine("\tCash is withdrawn."); }
public void RequestCash(ATMMachine aTMMachine) { //aTMMachine.ChangeState(new HasCard()); Console.WriteLine("\tNo cash to be withdrawn."); }