/** * Checks that the total returns properly */ function test_get_total_basic() { $order = new APP_Draft_Order(); // By default, order's totals should be 0 $this->assertEquals(0, $order->get_total()); // Total should reflect added items prices $order->add_item('payment-test', 5, $order->get_id()); $this->assertCount(1, $order->get_items()); $this->assertEquals(5, $order->get_total()); // Adding another item should increase the price $order->add_item('payment-test', 5, $order->get_id()); $this->assertCount(2, $order->get_items()); $this->assertEquals(10, $order->get_total()); // Adding another item type should increase the price $order->add_item('payment-test1', 5, $order->get_id()); $this->assertCount(3, $order->get_items()); $this->assertEquals(15, $order->get_total()); // Adding a float value as a price should correctly calculate the total with cents $order->add_item('payment-test1', 5.99, $order->get_id()); $this->assertCount(4, $order->get_items()); $this->assertEquals(20.99, $order->get_total()); }