Skip to content

Commit 9eadf14

Browse files
committed
test: Add tests for attributes.addClass() functionality in Drupal context
1 parent c56024d commit 9eadf14

File tree

3 files changed

+38
-10
lines changed

3 files changed

+38
-10
lines changed

package-lock.json

Lines changed: 4 additions & 4 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{
22
"type": "module",
33
"name": "prettier-plugin-tailwindcss-drupal",
4-
"version": "1.0.0",
4+
"version": "1.0.1",
55
"description": "A Prettier plugin for sorting Tailwind CSS classes with Drupal syntax support.",
66
"license": "MIT",
77
"main": "dist/index.mjs",
@@ -12,10 +12,10 @@
1212
],
1313
"repository": {
1414
"type": "git",
15-
"url": "https://github.com/bronisMateusz/prettier-plugin-tailwindcss"
15+
"url": "https://github.com/bronisMateusz/prettier-plugin-tailwindcss-drupal"
1616
},
1717
"bugs": {
18-
"url": "https://github.com/bronisMateusz/prettier-plugin-tailwindcss/issues"
18+
"url": "https://github.com/bronisMateusz/prettier-plugin-tailwindcss-drupal/issues"
1919
},
2020
"scripts": {
2121
"_pre": "rimraf dist && cpy 'node_modules/tailwindcss/lib/css/*' dist/css",
@@ -155,4 +155,4 @@
155155
"jest": {
156156
"testTimeout": 15000
157157
}
158-
}
158+
}

tests/plugins.test.ts

Lines changed: 30 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -134,6 +134,7 @@ let tests: PluginTest[] = [
134134
plugins: ['@zackad/prettier-plugin-twig'],
135135
options: {
136136
twigAlwaysBreakObjects: false,
137+
tailwindFunctions: ['addClass'],
137138
},
138139
tests: {
139140
twig: [
@@ -162,6 +163,33 @@ let tests: PluginTest[] = [
162163
`<div class="{{ ' flex ' + ' underline ' + ' block ' }}"></div>`,
163164
`<div class="{{ 'flex ' + ' underline' + ' block' }}"></div>`,
164165
],
166+
167+
// Drupal attributes.addClass() tests
168+
[
169+
`<div {{ attributes.addClass("sm:p-0 p-0") }}></div>`,
170+
`<div {{ attributes.addClass('p-0 sm:p-0') }}></div>`,
171+
],
172+
[
173+
`{{ attributes.addClass("sm:p-0 p-0") }}`,
174+
`{{ attributes.addClass('p-0 sm:p-0') }}`,
175+
],
176+
[
177+
`{% set className = "p-0 sm:p-0" %}
178+
{{ attributes.addClass(className) }}`,
179+
`{% set className = 'p-0 sm:p-0' %}
180+
{{ attributes.addClass(className) }}`,
181+
],
182+
[
183+
`{{ attributes.addClass("sm:p-0 " ~ variant ~ " p-0") }}`,
184+
`{{ attributes.addClass('sm:p-0' ~ variant ~ 'p-0') }}`,
185+
],
186+
[
187+
`{{ attributes
188+
.addClass("sm:p-0 p-0")
189+
.addClass("flex block")
190+
.addClass("underline") }}`,
191+
`{{ attributes.addClass('p-0 sm:p-0').addClass('block flex').addClass('underline') }}`,
192+
],
165193
],
166194
},
167195
},
@@ -207,7 +235,7 @@ let tests: PluginTest[] = [
207235
import './three'
208236
import '@one/file'
209237
import '@two/file'
210-
export default function Foo() { return <div className="sm:p-0 p-4"></div> }
238+
export default function Foo() { return <div className="p-4 sm:p-0"></div> }
211239
`,
212240
`import '@one/file'\nimport '@two/file'\n\nimport './three'\n\nexport default function Foo() {\n return <div className="p-4 sm:p-0"></div>\n}`,
213241
],
@@ -219,7 +247,7 @@ let tests: PluginTest[] = [
219247
tests: {
220248
babel: [
221249
[
222-
`/**\n * @param { string } param0 description\n */\n export default function Foo(param0) { return <div className="sm:p-0 p-4"></div> }`,
250+
`/**\n * @param { string } param0 description\n */\n export default function Foo(param0) { return <div className="p-4 sm:p-0"></div> }`,
223251
`/** @param {string} param0 Description */\nexport default function Foo(param0) {\n return <div className="p-4 sm:p-0"></div>\n}`,
224252
],
225253
],

0 commit comments

Comments
 (0)