assertFalse( defined( 'WC_TESTING_DEFINE_FUNCTION' ) ); // Check if defined. wc_maybe_define_constant( 'WC_TESTING_DEFINE_FUNCTION', true ); $this->assertTrue( defined( 'WC_TESTING_DEFINE_FUNCTION' ) ); // Check value. wc_maybe_define_constant( 'WC_TESTING_DEFINE_FUNCTION', false ); $this->assertTrue( WC_TESTING_DEFINE_FUNCTION ); } /** * Tests wc_create_order() and wc_update_order() currency handling. * * @since 3.2.0 */ public function test_wc_create_update_order_currency() { $old_currency = get_woocommerce_currency(); $new_currency = 'BGN'; update_option( 'woocommerce_currency', $new_currency ); // New order should be created using shop currency. $order = wc_create_order( array( 'status' => 'pending', 'customer_id' => 1, ) ); $this->assertEquals( $new_currency, $order->get_currency() ); update_option( 'woocommerce_currency', $old_currency ); // Currency should not change when order is updated. $order = wc_update_order( array( 'customer_id' => 2, 'order_id' => $order->get_id(), ) ); $this->assertEquals( $new_currency, $order->get_currency() ); } }