ImageFormFactoryTest   A
last analyzed

Complexity

Total Complexity 3

Size/Duplication

Total Lines 43
Duplicated Lines 0 %

Importance

Changes 2
Bugs 0 Features 0
Metric Value
eloc 18
c 2
b 0
f 0
dl 0
loc 43
rs 10
wmc 3

3 Methods

Rating   Name   Duplication   Size   Complexity  
A tearDown() 0 4 1
A testInsertImageSize() 0 10 1
A setUp() 0 12 1
1
<?php
2
3
namespace SilverStripe\AssetAdmin\Tests\Forms;
4
5
use SilverStripe\AssetAdmin\Controller\AssetAdmin;
6
use SilverStripe\AssetAdmin\Forms\AssetFormFactory;
7
use SilverStripe\AssetAdmin\Forms\ImageFormFactory;
8
use SilverStripe\AssetAdmin\Forms\UploadField;
9
use SilverStripe\AssetAdmin\Tests\Forms\FileFormBuilderTest\FileOwner;
10
use SilverStripe\Assets\File;
11
use SilverStripe\Assets\Image;
12
use Silverstripe\Assets\Dev\TestAssetStore;
13
use SilverStripe\Core\Injector\Injector;
14
use SilverStripe\Dev\SapphireTest;
15
use SilverStripe\Forms\FieldList;
16
use SilverStripe\Forms\Form;
17
use SilverStripe\Forms\FormFactory;
18
use SilverStripe\ORM\ArrayList;
19
20
/**
21
 * @skipUpgrade
22
 */
23
class ImageFormFactoryTest extends SapphireTest
24
{
25
    /** @var Image */
26
    private $img;
27
28
    protected $usesDatabase = true;
29
30
    protected function setUp() : void
31
    {
32
        parent::setUp();
33
34
        // Set backend and base url
35
        TestAssetStore::activate('ImageFormFactoryTest');
36
37
        $img = Image::create();
38
        $img->setFromLocalFile(__DIR__ . '/fixtures/largeimage.png', 'files/largeimage.png');
39
        $img->write();
40
41
        $this->img = $img;
42
    }
43
44
    protected function tearDown() : void
45
    {
46
        TestAssetStore::reset();
47
        parent::tearDown();
48
    }
49
50
    /**
51
     * @param int $insertWidth
52
     * @param int $insertHeight
53
     * @param int $expectedWidth
54
     * @param int $expectedHeight
55
     */
56
    public function testInsertImageSize()
57
    {
58
        $form = ImageFormFactory::create()->getForm(
59
            null,
60
            'fileInsertForm',
61
            ['Type' => AssetFormFactory::TYPE_INSERT_MEDIA , 'Record' => $this->img, 'RequireLinkText' => true]
62
        );
63
        $data = $form->getData();
64
        $this->assertEmpty($data['Width']);
65
        $this->assertEmpty($data['Height']);
66
    }
67
}
68