@@ -108,10 +108,10 @@ jobs:
108108 echo "=== System Commands ==="
109109 echo "Version:"
110110 bin/magento mageforge:system:version
111-
111+
112112 echo "System Check:"
113113 bin/magento mageforge:system:check
114-
114+
115115 echo "Theme List:"
116116 bin/magento mageforge:theme:list
117117
@@ -121,10 +121,10 @@ jobs:
121121 echo "=== Hyva Compatibility Check ==="
122122 echo "Show all modules:"
123123 bin/magento mageforge:hyva:compatibility:check --show-all
124-
124+
125125 echo "Third party only:"
126126 bin/magento m:h:c:c --third-party-only
127-
127+
128128 echo "Detailed output:"
129129 bin/magento m:h:c:c --show-all --detailed
130130
@@ -134,7 +134,7 @@ jobs:
134134 echo "=== Theme Cleaner Tests ==="
135135 echo "Clean with dry-run:"
136136 bin/magento mageforge:theme:clean --all --dry-run
137-
137+
138138 echo "Test aliases:"
139139 bin/magento m:t:c --help
140140 bin/magento frontend:clean --help
@@ -145,10 +145,10 @@ jobs:
145145 echo "=== Theme Name Suggestions ==="
146146 echo "BuildCommand with invalid name (expect suggestions):"
147147 bin/magento mageforge:theme:build Magent/lum || echo "Expected failure - suggestions shown"
148-
148+
149149 echo "WatchCommand with invalid name:"
150150 bin/magento mageforge:theme:watch Magent/lum --help || echo "Expected failure - suggestions shown"
151-
151+
152152 echo "CleanCommand with invalid name:"
153153 bin/magento mageforge:theme:clean Magent/lum --dry-run || echo "Expected failure - suggestions shown"
154154
@@ -163,7 +163,7 @@ jobs:
163163 run : |
164164 echo "=== npm Sync Validation ==="
165165 THEME_PATH="app/design/frontend/Magento/blank"
166-
166+
167167 cat > ${THEME_PATH}/package.json << 'EOF'
168168 {
169169 "name": "magento-blank-theme",
@@ -173,19 +173,19 @@ jobs:
173173 }
174174 }
175175 EOF
176-
176+
177177 echo "Install packages:"
178178 cd ${THEME_PATH}
179179 npm install
180-
180+
181181 echo "Verify sync (should pass):"
182182 if npm ls --depth=0 > /dev/null 2>&1; then
183183 echo "✓ Packages in sync"
184184 else
185185 echo "✗ Sync check failed unexpectedly"
186186 exit 1
187187 fi
188-
188+
189189 echo "Add new dependency without installing:"
190190 cat > package.json << 'EOF'
191191 {
@@ -197,34 +197,34 @@ jobs:
197197 }
198198 }
199199 EOF
200-
200+
201201 npm install --package-lock-only
202-
202+
203203 echo "Verify out-of-sync detection (should fail):"
204204 if npm ls --depth=0 > /dev/null 2>&1; then
205205 echo "✗ Should detect out-of-sync state"
206206 exit 1
207207 else
208208 echo "✓ Out-of-sync detected correctly"
209209 fi
210-
210+
211211 echo "Fix with npm ci:"
212212 npm ci
213-
213+
214214 if npm ls --depth=0 > /dev/null 2>&1; then
215215 echo "✓ npm ci synchronized packages"
216216 else
217217 echo "✗ npm ci failed"
218218 exit 1
219219 fi
220-
220+
221221 cd ../../../../../../
222222
223223 - name : Test Theme Builder Detection
224224 working-directory : magento2
225225 run : |
226226 echo "=== Theme Builder Detection ==="
227-
227+
228228 # Test MagentoStandard detection (Magento/blank has theme.xml, no tailwind)
229229 echo "Testing MagentoStandard detection with Magento/blank:"
230230 if [ -f "app/design/frontend/Magento/blank/theme.xml" ]; then
@@ -233,60 +233,60 @@ jobs:
233233 echo "✗ theme.xml missing"
234234 exit 1
235235 fi
236-
236+
237237 if [ ! -d "app/design/frontend/Magento/blank/web/tailwind" ]; then
238238 echo "✓ No tailwind directory (correct for MagentoStandard)"
239239 else
240240 echo "✗ Unexpected tailwind directory"
241241 exit 1
242242 fi
243-
243+
244244 # Create test TailwindCSS theme structure
245245 echo "Creating test TailwindCSS theme:"
246246 TAILWIND_THEME="app/design/frontend/Test/Tailwind"
247247 mkdir -p ${TAILWIND_THEME}/web/tailwind
248-
248+
249249 cat > ${TAILWIND_THEME}/theme.xml << 'EOF'
250250 <?xml version="1.0"?>
251251 <theme xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:Config/etc/theme.xsd">
252252 <title>Test Tailwind Theme</title>
253253 <parent>Magento/blank</parent>
254254 </theme>
255255 EOF
256-
256+
257257 cat > ${TAILWIND_THEME}/web/tailwind/tailwind.config.js << 'EOF'
258258 module.exports = {
259259 content: ['./app/**/*.phtml'],
260260 theme: { extend: {} }
261261 }
262262 EOF
263-
263+
264264 if [ -f "${TAILWIND_THEME}/web/tailwind/tailwind.config.js" ]; then
265265 echo "✓ TailwindCSS theme structure created"
266266 else
267267 echo "✗ Failed to create TailwindCSS theme"
268268 exit 1
269269 fi
270-
270+
271271 # Create test Hyva theme structure
272272 echo "Creating test Hyva theme:"
273273 HYVA_THEME="app/design/frontend/Test/Hyva"
274274 mkdir -p ${HYVA_THEME}/etc ${HYVA_THEME}/web/tailwind
275-
275+
276276 cat > ${HYVA_THEME}/theme.xml << 'EOF'
277277 <?xml version="1.0"?>
278278 <theme xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:Config/etc/theme.xsd">
279279 <title>Test Hyva Theme</title>
280280 <parent>Magento/blank</parent>
281281 </theme>
282282 EOF
283-
283+
284284 cat > ${HYVA_THEME}/etc/hyva-themes.json << 'EOF'
285285 {
286286 "extensions": {}
287287 }
288288 EOF
289-
289+
290290 if [ -f "${HYVA_THEME}/etc/hyva-themes.json" ]; then
291291 echo "✓ Hyva theme structure created"
292292 else
@@ -298,55 +298,55 @@ jobs:
298298 working-directory : magento2
299299 run : |
300300 echo "=== StaticContentCleaner Tests ==="
301-
301+
302302 # Set developer mode
303303 bin/magento deploy:mode:set developer
304-
304+
305305 echo "Creating test static files:"
306306 STATIC_DIR="pub/static/frontend/Magento/blank/en_US"
307307 mkdir -p ${STATIC_DIR}/css
308308 touch ${STATIC_DIR}/css/test.css
309-
309+
310310 if [ -f "${STATIC_DIR}/css/test.css" ]; then
311311 echo "✓ Test static file created"
312312 else
313313 echo "✗ Failed to create test static file"
314314 exit 1
315315 fi
316-
316+
317317 echo "Build should auto-clean static content in developer mode"
318318 # Note: Actual cleaning happens during build command execution
319319
320320 - name : Test Symlink Cleaner
321321 working-directory : magento2
322322 run : |
323323 echo "=== SymlinkCleaner Tests ==="
324-
324+
325325 THEME_CSS="app/design/frontend/Magento/blank/web/css"
326326 mkdir -p ${THEME_CSS}
327-
327+
328328 echo "Creating test symlink:"
329329 ln -s /tmp/test-target ${THEME_CSS}/test-symlink.css
330-
330+
331331 if [ -L "${THEME_CSS}/test-symlink.css" ]; then
332332 echo "✓ Test symlink created"
333333 else
334334 echo "✗ Failed to create test symlink"
335335 exit 1
336336 fi
337-
337+
338338 echo "Build should auto-remove symlinks in developer mode"
339339 # Note: Actual cleaning happens during build command execution
340340
341341 - name : Test Actual Theme Build
342342 working-directory : magento2
343343 run : |
344344 echo "=== Actual Theme Build Tests ==="
345-
345+
346346 echo "Building Magento/blank theme:"
347347 # Note: This may fail if dependencies are missing, but we test the command works
348348 bin/magento mageforge:theme:build Magento/blank --verbose || echo "Build attempted (may need additional setup)"
349-
349+
350350 echo "Test build aliases:"
351351 bin/magento m:t:b --help
352352 bin/magento frontend:build --help
0 commit comments