File tree Expand file tree Collapse file tree 3 files changed +70
-0
lines changed
app/code/Magento/NewsletterGraphQl/etc
dev/tests/api-functional/testsuite/Magento/GraphQl/Newsletter Expand file tree Collapse file tree 3 files changed +70
-0
lines changed Original file line number Diff line number Diff line change 1818 </argument >
1919 </arguments >
2020 </type >
21+ <type name =" Magento\StoreGraphQl\Model\Resolver\Store\StoreConfigDataProvider" >
22+ <arguments >
23+ <argument name =" extendedConfigData" xsi : type =" array" >
24+ <item name =" newsletter_enabled" xsi : type =" string" >newsletter/general/active</item >
25+ </argument >
26+ </arguments >
27+ </type >
2128</config >
Original file line number Diff line number Diff line change @@ -15,3 +15,7 @@ enum SubscriptionStatusesEnum @doc(description: "Indicates the status of the req
1515 UNSUBSCRIBED
1616 UNCONFIRMED
1717}
18+
19+ type StoreConfig {
20+ newsletter_enabled : Boolean ! @doc (description : " Indicates whether newsletters are enabled." )
21+ }
Original file line number Diff line number Diff line change 1+ <?php
2+ /**
3+ * Copyright © Magento, Inc. All rights reserved.
4+ * See COPYING.txt for license details.
5+ */
6+ declare (strict_types=1 );
7+
8+ namespace Magento \GraphQl \Newsletter ;
9+
10+ use Magento \TestFramework \Fixture \Config ;
11+ use Magento \TestFramework \TestCase \GraphQlAbstract ;
12+
13+ /**
14+ * Test newsletter enabled query
15+ */
16+ class NewsletterIsEnabledTest extends GraphQlAbstract
17+ {
18+ private const QUERY = <<<QRY
19+ {
20+ storeConfig {
21+ newsletter_enabled
22+ }
23+ }
24+ QRY ;
25+
26+ #[
27+ Config('newsletter/general/active ' , 1 ),
28+ ]
29+ public function testNewsletterIsEnabled ()
30+ {
31+ $ this ->assertEquals (
32+ [
33+ 'storeConfig ' => [
34+ 'newsletter_enabled ' => true
35+ ]
36+ ],
37+ $ this ->graphQlQuery (
38+ self ::QUERY
39+ )
40+ );
41+ }
42+
43+ #[
44+ Config('newsletter/general/active ' , 0 ),
45+ ]
46+ public function testNewsletterIsDisabled ()
47+ {
48+ $ this ->assertEquals (
49+ [
50+ 'storeConfig ' => [
51+ 'newsletter_enabled ' => false
52+ ]
53+ ],
54+ $ this ->graphQlQuery (
55+ self ::QUERY
56+ )
57+ );
58+ }
59+ }
You can’t perform that action at this time.
0 commit comments