Skip to content

Commit c3040e6

Browse files
committed
GraphQl-309: [Checkout] Checkout Agreements
1 parent 6a8edac commit c3040e6

File tree

3 files changed

+24
-15
lines changed

3 files changed

+24
-15
lines changed

app/code/Magento/CheckoutAgreementsGraphQl/Model/Resolver/CheckoutAgreements.php

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,8 @@
77

88
namespace Magento\CheckoutAgreementsGraphQl\Model\Resolver;
99

10+
use Magento\CheckoutAgreements\Model\AgreementModeOptions;
11+
use Magento\CheckoutAgreements\Model\ResourceModel\Agreement\Collection;
1012
use Magento\Framework\GraphQl\Config\Element\Field;
1113
use Magento\Framework\GraphQl\Query\ResolverInterface;
1214
use Magento\Framework\GraphQl\Schema\Type\ResolveInfo;
@@ -65,9 +67,10 @@ public function resolve(
6567
return [];
6668
}
6769

70+
/** @var Collection $agreementsCollection */
6871
$agreementsCollection = $this->agreementCollectionFactory->create();
6972
$agreementsCollection->addStoreFilter($this->storeManager->getStore()->getId());
70-
$agreementsCollection->addFieldToFilter('is_active', 1);
73+
$agreementsCollection->addFieldToFilter(AgreementInterface::IS_ACTIVE, 1);
7174

7275
$checkoutAgreementData = [];
7376
/** @var AgreementInterface $checkoutAgreement */
@@ -79,7 +82,8 @@ public function resolve(
7982
AgreementInterface::CONTENT_HEIGHT => $checkoutAgreement->getContentHeight(),
8083
AgreementInterface::CHECKBOX_TEXT => $checkoutAgreement->getCheckboxText(),
8184
AgreementInterface::IS_HTML => $checkoutAgreement->getIsHtml(),
82-
AgreementInterface::MODE => $checkoutAgreement->getMode(),
85+
AgreementInterface::MODE =>
86+
AgreementModeOptions::MODE_AUTO === $checkoutAgreement->getMode() ? 'AUTO' : 'MANUAL',
8387
];
8488
}
8589
return $checkoutAgreementData;

app/code/Magento/CheckoutAgreementsGraphQl/etc/schema.graphqls

Lines changed: 11 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -6,11 +6,16 @@ type Query {
66
}
77

88
type CheckoutAgreement @doc(description: "Defines all Checkout Agreement information") {
9-
agreement_id: Int @doc(description: "Checkout Agreement identifier")
10-
name: String @doc(description: "Checkout Agreement name")
11-
content: String @doc(description: "Checkout Agreement content")
9+
agreement_id: Int! @doc(description: "Checkout Agreement identifier")
10+
name: String! @doc(description: "Checkout Agreement name")
11+
content: String! @doc(description: "Checkout Agreement content")
1212
content_height: String @doc(description: "Checkout Agreement content height")
13-
checkbox_text: String @doc(description: "Checkout Agreement checkbox tex")
14-
is_html: Boolean @doc(description: "Is Checkout Agreement content in HTML format")
15-
mode: Int @doc(description: "Is Checkout Agreement content in HTML format")
13+
checkbox_text: String! @doc(description: "Checkout Agreement checkbox text")
14+
is_html: Boolean! @doc(description: "Is Checkout Agreement content in HTML format")
15+
mode: CheckoutAgreementMode!
16+
}
17+
18+
enum CheckoutAgreementMode {
19+
AUTO
20+
MANUAL
1621
}

dev/tests/api-functional/testsuite/Magento/GraphQl/CheckoutAgreements/GetCheckoutAgreementsTest.php

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -68,8 +68,8 @@ public function testGetActiveAgreement()
6868
self::assertEquals('Checkout agreement content: <b>HTML</b>', $agreements[0]['content']);
6969
self::assertEquals('200px', $agreements[0]['content_height']);
7070
self::assertEquals('Checkout agreement checkbox text.', $agreements[0]['checkbox_text']);
71-
self::assertEquals(true, $agreements[0]['is_html']);
72-
self::assertEquals(0, $agreements[0]['mode']);
71+
self::assertTrue($agreements[0]['is_html']);
72+
self::assertEquals('AUTO', $agreements[0]['mode']);
7373
}
7474

7575
/**
@@ -95,8 +95,8 @@ public function testGetActiveAgreementOnSecondStore()
9595
self::assertEquals('Checkout agreement content: <b>HTML</b>', $agreements[0]['content']);
9696
self::assertEquals('200px', $agreements[0]['content_height']);
9797
self::assertEquals('Checkout agreement checkbox text.', $agreements[0]['checkbox_text']);
98-
self::assertEquals(true, $agreements[0]['is_html']);
99-
self::assertEquals(0, $agreements[0]['mode']);
98+
self::assertTrue($agreements[0]['is_html']);
99+
self::assertEquals('AUTO', $agreements[0]['mode']);
100100
}
101101

102102
/**
@@ -116,7 +116,7 @@ public function testGetActiveAgreementFromSecondStoreOnDefaultStore()
116116

117117
self::assertArrayHasKey('checkoutAgreements', $response);
118118
$agreements = $response['checkoutAgreements'];
119-
self::assertCount(0, $agreements);
119+
self::assertEmpty($agreements);
120120
}
121121

122122
public function testGetAgreementNotSet()
@@ -127,7 +127,7 @@ public function testGetAgreementNotSet()
127127

128128
self::assertArrayHasKey('checkoutAgreements', $response);
129129
$agreements = $response['checkoutAgreements'];
130-
self::assertCount(0, $agreements);
130+
self::assertEmpty($agreements);
131131
}
132132

133133
/**
@@ -143,7 +143,7 @@ public function testDisabledAgreements()
143143

144144
self::assertArrayHasKey('checkoutAgreements', $response);
145145
$agreements = $response['checkoutAgreements'];
146-
self::assertCount(0, $agreements);
146+
self::assertEmpty($agreements);
147147
}
148148

149149
/**

0 commit comments

Comments
 (0)