From bda8316e1b0bafc7a91f4c9985dca2399b042ab9 Mon Sep 17 00:00:00 2001 From: belliash Date: Sat, 6 Apr 2019 16:02:20 +0200 Subject: [PATCH] Add interface tests (OOP). --- tests/interface_test.aer | 42 ++++++++++++++++++++++++++++++++++++++++ tests/interface_test.exp | 4 ++++ 2 files changed, 46 insertions(+) create mode 100644 tests/interface_test.aer create mode 100644 tests/interface_test.exp diff --git a/tests/interface_test.aer b/tests/interface_test.aer new file mode 100644 index 0000000..c899ea7 --- /dev/null +++ b/tests/interface_test.aer @@ -0,0 +1,42 @@ +interface iVehicle { + + public void drive(); + public void stop(); + +} + +class Car implements iVehicle { + + public void drive() { + print("Driving...\n"); + } + + public void stop() { + print("Stopping...\n"); + } + +} + +class MyCar extends Car { + + public void drive() { + print("Driving my car...\n"); + } + +} + +class Program { + + public void driveCar(iVehicle $vehicle) { + $vehicle->drive(); + $vehicle->stop(); + } + + public void main() { + object $car = new Car(); + object $mycar = new MyCar(); + $this->driveCar($car); + $this->driveCar($mycar); + } + +} diff --git a/tests/interface_test.exp b/tests/interface_test.exp new file mode 100644 index 0000000..b026219 --- /dev/null +++ b/tests/interface_test.exp @@ -0,0 +1,4 @@ +Driving... +Stopping... +Driving my car... +Stopping...