add logs for failed mutations (#2078)

This commit is contained in:
Karolina Rakoczy 2022-06-06 10:47:39 +02:00 committed by GitHub
parent 8d361293c5
commit 6c7f6fc016
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
17 changed files with 58 additions and 50 deletions

View file

@ -120,9 +120,9 @@ filterTests({ definedTags: ["all", "refactored"] }, () => {
.then(() => { .then(() => {
addPayment(checkout.id); addPayment(checkout.id);
}) })
.then(({ paymentErrors }) => { .then(({ errors }) => {
expect( expect(
paymentErrors, errors,
"Should be not possible to add payment without shipping" "Should be not possible to add payment without shipping"
).to.have.lengthOf(1); ).to.have.lengthOf(1);
updateShippingInCheckout(checkout.token, shippingMethod.name); updateShippingInCheckout(checkout.token, shippingMethod.name);

View file

@ -1,6 +1,8 @@
/// <reference types="cypress"/> /// <reference types="cypress"/>
/// <reference types="../../support"/> /// <reference types="../../support"/>
import faker from "faker";
import { PRODUCT_DETAILS } from "../../elements/catalog/products/product-details"; import { PRODUCT_DETAILS } from "../../elements/catalog/products/product-details";
import { BUTTON_SELECTORS } from "../../elements/shared/button-selectors"; import { BUTTON_SELECTORS } from "../../elements/shared/button-selectors";
import { SHARED_ELEMENTS } from "../../elements/shared/sharedElements"; import { SHARED_ELEMENTS } from "../../elements/shared/sharedElements";
@ -24,7 +26,7 @@ import {
filterTests({ definedTags: ["all"], version: "3.1.0" }, () => { filterTests({ definedTags: ["all"], version: "3.1.0" }, () => {
describe("Creating variants in preorder", () => { describe("Creating variants in preorder", () => {
const startsWith = "CreatePreOrder"; const name = `CreatePreOrder${faker.datatype.number()}`;
const attributeValues = ["value1", "value2", "value3"]; const attributeValues = ["value1", "value2", "value3"];
const threshold = 100; const threshold = 100;
const futureDate = new Date().setDate(new Date().getDate() + 14); const futureDate = new Date().setDate(new Date().getDate() + 14);
@ -38,19 +40,17 @@ filterTests({ definedTags: ["all"], version: "3.1.0" }, () => {
before(() => { before(() => {
cy.clearSessionData().loginUserViaRequest(); cy.clearSessionData().loginUserViaRequest();
createProductWithShipping({ name: startsWith, attributeValues }).then( createProductWithShipping({ name, attributeValues }).then(resp => {
resp => { checkoutData = {
checkoutData = { address: resp.address,
address: resp.address, channelSlug: resp.defaultChannel.slug,
channelSlug: resp.defaultChannel.slug, email: "example@example.com",
email: "example@example.com", shippingMethodName: resp.shippingMethod.name
shippingMethodName: resp.shippingMethod.name };
}; defaultChannel = resp.defaultChannel;
defaultChannel = resp.defaultChannel; product = resp.product;
product = resp.product; variantsList = resp.variantsList;
variantsList = resp.variantsList; });
}
);
}); });
beforeEach(() => { beforeEach(() => {

View file

@ -59,7 +59,7 @@ export function getAttributes(first, search) {
export function deleteAttribute(attributeId) { export function deleteAttribute(attributeId) {
const mutation = `mutation{ const mutation = `mutation{
attributeDelete(id:"${attributeId}"){ attributeDelete(id:"${attributeId}"){
attributeErrors{ errors{
field field
message message
} }

View file

@ -7,7 +7,7 @@ export function createCategory({ name, slug = name, parent }) {
const parentLine = getValueWithDefault(parent, `parent:"${parent}"`); const parentLine = getValueWithDefault(parent, `parent:"${parent}"`);
const mutation = `mutation{ const mutation = `mutation{
categoryCreate(input:{name:"${name}", slug: "${slug}"} ${parentLine}){ categoryCreate(input:{name:"${name}", slug: "${slug}"} ${parentLine}){
productErrors{ errors{
field field
message message
} }
@ -78,7 +78,7 @@ export function getCategories(first, search) {
export function deleteCategory(categoryId) { export function deleteCategory(categoryId) {
const mutation = `mutation{ const mutation = `mutation{
categoryDelete(id:"${categoryId}"){ categoryDelete(id:"${categoryId}"){
productErrors{ errors{
field field
message message
} }

View file

@ -50,7 +50,7 @@ export function deleteChannel(channelId, targetChannelId) {
channel{ channel{
name name
} }
channelErrors{ errors{
message message
} }
} }

View file

@ -126,7 +126,7 @@ export function addPayment({ checkoutId, gateway, token, amount }) {
${amountLine} ${amountLine}
returnUrl: "https://qa.storefront.staging.saleor.cloud/checkout/payment-confirm" returnUrl: "https://qa.storefront.staging.saleor.cloud/checkout/payment-confirm"
}){ }){
paymentErrors{ errors{
field field
message message
} }

View file

@ -4,7 +4,7 @@ export function createCollection(name, slug = name) {
name:"${name}", name:"${name}",
slug:"${name}" slug:"${name}"
}){ }){
collectionErrors{ errors{
field field
message message
} }
@ -46,7 +46,7 @@ export function deleteCollection(collectionId) {
collection{ collection{
id id
} }
collectionErrors{ errors{
field field
message message
} }

View file

@ -23,7 +23,7 @@ export function createCustomer(email, customerName, address, isActive = false) {
id id
email email
} }
accountErrors{ errors{
code code
message message
} }
@ -48,7 +48,7 @@ export function deleteCustomersStartsWith(startsWith) {
export function deleteCustomer(customerId) { export function deleteCustomer(customerId) {
const mutation = `mutation{ const mutation = `mutation{
customerDelete(id:"${customerId}"){ customerDelete(id:"${customerId}"){
accountErrors{ errors{
code code
message message
} }

View file

@ -29,7 +29,7 @@ export function getSales(first, searchQuery) {
export function deleteSale(saleId) { export function deleteSale(saleId) {
const mutation = `mutation{ const mutation = `mutation{
saleDelete(id:"${saleId}"){ saleDelete(id:"${saleId}"){
discountErrors{ errors{
field field
message message
} }

View file

@ -21,7 +21,7 @@ export function getVouchers(first, startsWith) {
export function deleteVouchers(voucherId) { export function deleteVouchers(voucherId) {
const mutation = `mutation deleteVouchers{ const mutation = `mutation deleteVouchers{
voucherDelete(id:"${voucherId}"){ voucherDelete(id:"${voucherId}"){
discountErrors{ errors{
field field
message message
} }

View file

@ -3,7 +3,7 @@ import { getDefaultAddress, getValueWithDefault } from "./utils/Utils";
export function markOrderAsPaid(orderId) { export function markOrderAsPaid(orderId) {
const mutation = `mutation{ const mutation = `mutation{
orderMarkAsPaid(id:"${orderId}"){ orderMarkAsPaid(id:"${orderId}"){
orderErrors{ errors{
message message
} }
} }
@ -31,7 +31,7 @@ export function addProductToOrder(orderId, variantId, quantity = 1) {
quantity:${quantity} quantity:${quantity}
variantId: "${variantId}" variantId: "${variantId}"
}){ }){
orderErrors{ errors{
message message
} }
} }

View file

@ -33,7 +33,7 @@ export function getFirstProducts(first, search) {
export function updateProduct(productId, input) { export function updateProduct(productId, input) {
const mutation = `mutation { const mutation = `mutation {
productUpdate(id:"${productId}", input:${stringify(input)} ){ productUpdate(id:"${productId}", input:${stringify(input)} ){
productErrors{ errors{
field field
message message
} }
@ -85,7 +85,7 @@ export function updateChannelPriceInVariant(variantId, channelId) {
price: 10 price: 10
costPrice: 10 costPrice: 10
}){ }){
productChannelListingErrors{ errors{
message message
} }
} }
@ -133,7 +133,7 @@ export function createProduct({
id id
name name
} }
productErrors{ errors{
field field
message message
} }
@ -218,7 +218,7 @@ export function createVariant({
export function deleteProduct(productId) { export function deleteProduct(productId) {
const mutation = `mutation{ const mutation = `mutation{
productDelete(id: "${productId}"){ productDelete(id: "${productId}"){
productErrors{ errors{
field field
message message
} }

View file

@ -66,7 +66,7 @@ export function getProductTypes(first, search) {
export function deleteProductType(productTypeId) { export function deleteProductType(productTypeId) {
const mutation = `mutation{ const mutation = `mutation{
productTypeDelete(id:"${productTypeId}"){ productTypeDelete(id:"${productTypeId}"){
productErrors{ errors{
field field
message message
} }

View file

@ -68,7 +68,7 @@ export function addChannelToShippingZone(shippingZoneId, channelId) {
shippingZoneUpdate(id:"${shippingZoneId}", input:{ shippingZoneUpdate(id:"${shippingZoneId}", input:{
addChannels:["${channelId}"] addChannels:["${channelId}"]
}){ }){
shippingErrors{ errors{
field field
message message
} }
@ -106,7 +106,7 @@ export function addChannelToShippingMethod(
export function deleteShippingZone(shippingZoneId) { export function deleteShippingZone(shippingZoneId) {
const mutation = `mutation{ const mutation = `mutation{
shippingZoneDelete(id:"${shippingZoneId}"){ shippingZoneDelete(id:"${shippingZoneId}"){
shippingErrors{ errors{
message message
} }
} }

View file

@ -12,7 +12,7 @@ export function createWarehouse({ name, shippingZone, address, slug = name }) {
${shippingZoneLine} ${shippingZoneLine}
${getDefaultAddress(address, "address", false)} ${getDefaultAddress(address, "address", false)}
}){ }){
warehouseErrors{ errors{
field field
message message
} }
@ -48,7 +48,7 @@ export function getWarehouses(first, search) {
export function deleteWarehouse(warehouseId) { export function deleteWarehouse(warehouseId) {
const mutation = `mutation{ const mutation = `mutation{
deleteWarehouse(id:"${warehouseId}"){ deleteWarehouse(id:"${warehouseId}"){
warehouseErrors{ errors{
field field
message message
} }

View file

@ -23,7 +23,7 @@ Cypress.Commands.add(
token token
csrfToken csrfToken
refreshToken refreshToken
errors: accountErrors { errors: errors {
code code
field field
message message

View file

@ -46,17 +46,25 @@ Cypress.Commands.add("addAliasToGraphRequest", operationName => {
Cypress.Commands.add( Cypress.Commands.add(
"sendRequestWithQuery", "sendRequestWithQuery",
(query, authorization = "auth", variables = "") => (query, authorization = "auth", variables = "") =>
cy.request({ cy
body: { .request({
variables, body: {
query variables,
}, query
headers: { },
Authorization: `JWT ${window.sessionStorage.getItem(authorization)}` headers: {
}, Authorization: `JWT ${window.sessionStorage.getItem(authorization)}`
method: "POST", },
url: urlList.apiUri method: "POST",
}) url: urlList.apiUri,
log: true
})
.then(response => {
const respInSting = JSON.stringify(response.body);
if (respInSting.includes(`"errors":[{`)) {
cy.log(query).log(JSON.stringify(response.body));
}
})
); );
Cypress.on( Cypress.on(
"uncaught:exception", "uncaught:exception",