Skip to content

Commit

Permalink
chore: New feature stubbed out
Browse files Browse the repository at this point in the history
  • Loading branch information
kidunot89 committed Nov 7, 2024
1 parent 32f8ba2 commit bc4992f
Show file tree
Hide file tree
Showing 5 changed files with 151 additions and 0 deletions.
2 changes: 2 additions & 0 deletions includes/class-type-registry.php
Original file line number Diff line number Diff line change
Expand Up @@ -177,6 +177,8 @@ public function init() {
Mutation\Order_Update::register_mutation();
Mutation\Order_Delete::register_mutation();
Mutation\Order_Delete_Items::register_mutation();
Mutation\Refund_Create::register_mutation();
Mutation\Refund_Delete::register_mutation();

Check failure on line 181 in includes/class-type-registry.php

View workflow job for this annotation

GitHub Actions / Testing WooGraphQL code quality w/ PHPStan

Call to static method register_mutation() on an unknown class WPGraphQL\WooCommerce\Mutation\Refund_Delete.
Mutation\Checkout::register_mutation();
Mutation\Review_Write::register_mutation();
Mutation\Review_Update::register_mutation();
Expand Down
2 changes: 2 additions & 0 deletions includes/class-wp-graphql-woocommerce.php
Original file line number Diff line number Diff line change
Expand Up @@ -338,6 +338,8 @@ private function includes() {
require $include_directory_path . 'mutation/class-order-delete-items.php';
require $include_directory_path . 'mutation/class-order-delete.php';
require $include_directory_path . 'mutation/class-order-update.php';
require $include_directory_path . 'mutation/class-refund-create.php';
require $include_directory_path . 'mutation/class-refund-delete.php';
require $include_directory_path . 'mutation/class-review-write.php';
require $include_directory_path . 'mutation/class-review-delete-restore.php';
require $include_directory_path . 'mutation/class-review-update.php';
Expand Down
68 changes: 68 additions & 0 deletions includes/mutation/class-refund-create.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,68 @@
<?php
/**
* Mutation - createRefund
*
* Registers mutation for creating a refund on an order.
*
* @package WPGraphQL\WooCommerce\Mutation
* @since TDB
*/

namespace WPGraphQL\WooCommerce\Mutation;

use GraphQL\Error\UserError;
use GraphQL\Type\Definition\ResolveInfo;
use WC_Order_Factory;
use WPGraphQL\AppContext;
use WPGraphQL\WooCommerce\Data\Mutation\Order_Mutation;
use WPGraphQL\WooCommerce\Model\Order;

/**
* Class Refund_Create
*/
class Refund_Create {
/**
* Registers mutation
*
* @return void
*/
public static function register_mutation() {
register_graphql_mutation(
'createRefund',
[
'inputFields' => self::get_input_fields(),
'outputFields' => self::get_output_fields(),
'mutateAndGetPayload' => self::mutate_and_get_payload(),
]
);
}

/**
* Defines the mutation input field configuration
*
* @return array
*/
public static function get_input_fields() {
return [];
}

/**
* Defines the mutation output field configuration
*
* @return array
*/
public static function get_output_fields() {
return [];
}

/**
* Defines the mutation data modification closure.
*
* @return callable
*/
public static function mutate_and_get_payload() {
return static function ( $input, AppContext $context, ResolveInfo $info ) {
return [ 'id' => 0 ];
};
}
}
68 changes: 68 additions & 0 deletions includes/mutation/class-refund-delete-php
Original file line number Diff line number Diff line change
@@ -0,0 +1,68 @@
<?php
/**
* Mutation - deleteRefund
*
* Registers mutation for delete a refund on an order.
*
* @package WPGraphQL\WooCommerce\Mutation
* @since TDB
*/

namespace WPGraphQL\WooCommerce\Mutation;

use GraphQL\Error\UserError;
use GraphQL\Type\Definition\ResolveInfo;
use WC_Order_Factory;
use WPGraphQL\AppContext;
use WPGraphQL\WooCommerce\Data\Mutation\Order_Mutation;
use WPGraphQL\WooCommerce\Model\Order;

/**
* Class Refund_Delete
*/
class Refund_Delete {
/**
* Registers mutation
*
* @return void
*/
public static function register_mutation() {
register_graphql_mutation(
'deleteRefund',
[
'inputFields' => self::get_input_fields(),
'outputFields' => self::get_output_fields(),
'mutateAndGetPayload' => self::mutate_and_get_payload(),
]
);
}

/**
* Defines the mutation input field configuration
*
* @return array
*/
public static function get_input_fields() {
return [];
}

/**
* Defines the mutation output field configuration
*
* @return array
*/
public static function get_output_fields() {
return [];
}

/**
* Defines the mutation data modification closure.
*
* @return callable
*/
public static function mutate_and_get_payload() {
return static function ( $input, AppContext $context, ResolveInfo $info ) {
return [ 'id' => 0 ];
};
}
}
11 changes: 11 additions & 0 deletions tests/wpunit/RefundMutationsTest.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
<?php

class RefundMutationsTest extends \Tests\WPGraphQL\WooCommerce\TestCase\WooGraphQLTestCase {
public function testCreateRefundMutation() {
$this->markTestIncomplete();
}

public function testDeleteRefundMutation() {
$this->markTestIncomplete();
}
}

0 comments on commit bc4992f

Please sign in to comment.