Initial Commit

This commit is contained in:
David Stone
2024-11-30 18:24:12 -07:00
commit e8f7955c1c
5432 changed files with 1397750 additions and 0 deletions

151
inc/functions/mock.php Normal file
View File

@ -0,0 +1,151 @@
<?php
/**
* Model Mocking Functions
*
* @package WP_Ultimo\Functions
* @since 2.0.0
*/
// Exit if accessed directly
defined('ABSPATH') || exit;
/**
* Returns a mock site object.
*
* @since 2.0.0
* @param string|int $seed Number used to return different site names and urls.
* @return \WP_Ultimo\Models\Site
*/
function wu_mock_site($seed = false) {
$atts = apply_filters('wu_mock_site', array(
'title' => __('Example Site', 'wp-ultimo'),
'description' => __('This is an example of a site description.', 'wp-ultimo'),
'domain' => __('examplesite.dev', 'wp-ultimo'),
'path' => '/',
));
if ($seed) {
$atts['title'] .= " {$seed}";
$atts['domain'] = str_replace('.dev', "{$seed}.dev", (string) $atts['domain']);
} // end if;
return new \WP_Ultimo\Models\Site($atts);
} // end wu_mock_site;
/**
* Returns a mock membership object.
*
* @since 2.0.0
* @return \WP_Ultimo\Models\Membership
*/
function wu_mock_membership() {
return new \WP_Ultimo\Models\Membership(array(
'billing_address' => new \WP_Ultimo\Objects\Billing_Address(array(
'company_name' => 'Company Co.',
'billing_email' => 'company@co.dev',
)),
));
} // end wu_mock_membership;
/**
* Returns a mock product object.
*
* @since 2.0.0
* @return \WP_Ultimo\Models\Product
*/
function wu_mock_product() {
$product = new \WP_Ultimo\Models\Product(array(
'name' => __('Test Product', 'wp-ultimo'),
));
$product->_mocked = true;
return $product;
} // end wu_mock_product;
/**
* Returns a mock customer object.
*
* @since 2.0.0
* @return \WP_Ultimo\Models\Customer
*/
function wu_mock_customer() {
$customer = new \WP_Ultimo\Models\Customer(array(
'billing_address' => new \WP_Ultimo\Objects\Billing_Address(array(
'company_name' => 'Company Co.',
'billing_email' => 'company@co.dev',
)),
));
$customer->_user = (object) array(
'data' => (object) array(
'ID' => '1',
'user_login' => 'mockeduser',
'user_pass' => 'passwordhash',
'user_nicename' => 'mockeduser',
'user_email' => 'mockeduser@dev.dev',
'user_url' => 'https://url.com',
'user_registered' => '2020-12-31 12:00:00',
'user_activation_key' => '',
'user_status' => '0',
'display_name' => 'John McMocked',
'spam' => '0',
'deleted' => '0',
),
);
return $customer;
} // end wu_mock_customer;
/**
* Returns a mock payment object.
*
* @since 2.0.0
* @return \WP_Ultimo\Models\Payment
*/
function wu_mock_payment() {
$payment = new \WP_Ultimo\Models\Payment();
$line_item = new \WP_Ultimo\Checkout\Line_Item(array(
'product' => wu_mock_product(),
));
$payment->set_line_items(array(
$line_item,
));
return $payment;
} // end wu_mock_payment;
/**
* Returns a mock domain object.
*
* @since 2.0.0
* @return \WP_Ultimo\Models\Payment
*/
function wu_mock_domain() {
$domain = new \WP_Ultimo\Models\Domain(array(
'blog_id' => 1,
'domain' => 'example.com',
'active' => true,
'primary_domain' => true,
'secure' => true,
'stage' => 'checking-dns',
));
return $domain;
} // end wu_mock_domain;