Files
Miravia Connector Bot 752600f337 Fix image upload structure for Miravia API compliance
🔧 Bug Fixes:
- Fixed product image structure to match Miravia API requirements
- Updated MiraviaProduct.php getData() method to wrap images in {"Image": [...]} format
- Updated MiraviaCombination.php getData() method to wrap SKU images properly
- Resolved error "[4224] The Main image of the product is required"

📋 Changes:
- Modified getData() methods to transform flat image arrays to nested structure
- Product images: images[] → Images: {"Image": [...]}
- SKU images: images[] → Images: {"Image": [...]}
- Maintains backward compatibility for empty image arrays

🎯 Impact:
- Product uploads will now pass Miravia's image validation
- Both product-level and SKU-level images properly formatted
- Complies with official Miravia API documentation structure

🤖 Generated with Claude Code (https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-07-21 11:34:59 +02:00

49 lines
1.1 KiB
PHP

<?php
/**
* Created by Sweeper PhpStorm.
* Author: Sweeper <wili.lixiang@gmail.com>
* DateTime: 2024/3/15 15:33
*/
namespace Sweeper\PlatformMiddleware\Test;
use PHPUnit\Framework\TestCase;
use function Sweeper\PlatformMiddleware\package_path;
use function Sweeper\PlatformMiddleware\vendor_path;
class TestPath extends TestCase
{
public function testRootPath(): void
{
$expected = dirname(__DIR__);
$actual = dirname(vendor_path());
dump('===== testRootPath =====', $expected, $actual);
$this->assertEquals($expected, $actual);
}
public function testVendorPath(): void
{
$expected = dirname(__DIR__) . '/vendor';
$actual = vendor_path();
dump('===== testVendorPath =====', $expected, $actual);
$this->assertEquals($expected, $actual);
}
public function testPackagePath(): void
{
$package = 'sweeper/platform-middleware';
$expected = dirname(__DIR__);
$actual = package_path($package);
dump('===== testPackagePath =====', $expected, $actual);
$this->assertEquals($expected, $actual);
}
}