| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465 |
- /* tslint:disable:no-non-null-assertion */
- import { ID } from '@vendure/common/lib/shared-types';
- import { PaymentMethodHandler } from '@vendure/core';
- import { SimpleGraphQLClient } from '@vendure/testing';
- import {
- AddPaymentToOrder,
- GetShippingMethods,
- SetShippingAddress,
- SetShippingMethod,
- TransitionToState,
- } from '../graphql/generated-e2e-shop-types';
- import {
- ADD_PAYMENT,
- GET_ELIGIBLE_SHIPPING_METHODS,
- SET_SHIPPING_ADDRESS,
- SET_SHIPPING_METHOD,
- TRANSITION_TO_STATE,
- } from '../graphql/shop-definitions';
- export async function proceedToArrangingPayment(shopClient: SimpleGraphQLClient): Promise<ID> {
- await shopClient.query<SetShippingAddress.Mutation, SetShippingAddress.Variables>(SET_SHIPPING_ADDRESS, {
- input: {
- fullName: 'name',
- streetLine1: '12 the street',
- city: 'foo',
- postalCode: '123456',
- countryCode: 'US',
- },
- });
- const { eligibleShippingMethods } = await shopClient.query<GetShippingMethods.Query>(
- GET_ELIGIBLE_SHIPPING_METHODS,
- );
- await shopClient.query<SetShippingMethod.Mutation, SetShippingMethod.Variables>(SET_SHIPPING_METHOD, {
- id: eligibleShippingMethods[1].id,
- });
- const { transitionOrderToState } = await shopClient.query<
- TransitionToState.Mutation,
- TransitionToState.Variables
- >(TRANSITION_TO_STATE, { state: 'ArrangingPayment' });
- return transitionOrderToState!.id;
- }
- export async function addPaymentToOrder(
- shopClient: SimpleGraphQLClient,
- handler: PaymentMethodHandler,
- ): Promise<NonNullable<AddPaymentToOrder.Mutation['addPaymentToOrder']>> {
- const result = await shopClient.query<AddPaymentToOrder.Mutation, AddPaymentToOrder.Variables>(
- ADD_PAYMENT,
- {
- input: {
- method: handler.code,
- metadata: {
- baz: 'quux',
- },
- },
- },
- );
- const order = result.addPaymentToOrder!;
- return order as any;
- }
|