Skip to content

Commit d8da7c9

Browse files
committed
Merge branch '2.4-develop' of https://github.com/magento-commerce/magento2ce into PR-02142023
2 parents 0c4529e + 12098be commit d8da7c9

File tree

3 files changed

+70
-0
lines changed

3 files changed

+70
-0
lines changed

app/code/Magento/NewsletterGraphQl/etc/graphql/di.xml

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,4 +18,11 @@
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>

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

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff 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+
}
Lines changed: 59 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,59 @@
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+
}

0 commit comments

Comments
 (0)