Passed
Pull Request — master (#5)
by Robbie
03:18
created

CMSPageHistoryViewerControllerTest   A

Complexity

Total Complexity 1

Size/Duplication

Total Lines 20
Duplicated Lines 0 %

Importance

Changes 0
Metric Value
wmc 1
dl 0
loc 20
rs 10
c 0
b 0
f 0

1 Method

Rating   Name   Duplication   Size   Complexity  
A testGetEditForm() 0 16 1
1
<?php
2
3
namespace SilverStripe\VersionedAdmin\Tests\Controllers;
4
5
use SilverStripe\CMS\Model\SiteTree;
6
use SilverStripe\Control\HTTPRequest;
7
use SilverStripe\Control\Session;
8
use SilverStripe\Dev\SapphireTest;
9
use SilverStripe\Forms\Form;
10
use SilverStripe\VersionedAdmin\Controllers\CMSPageHistoryViewerController;
11
use SilverStripe\VersionedAdmin\Forms\HistoryViewerField;
12
13
class CMSPageHistoryViewerControllerTest extends SapphireTest
14
{
15
    protected static $fixture_file = 'CMSPageHistoryViewerControllerTest.yml';
16
17
    public function testGetEditForm()
18
    {
19
        $id = $this->idFromFixture(SiteTree::class, 'page_one');
20
21
        $controller = CMSPageHistoryViewerController::create();
22
        $controller->setRequest(
23
            (new HTTPRequest('GET', '/'))
24
                ->setSession(new Session([]))
25
        );
26
27
        $result = $controller->getEditForm($id);
28
        $this->assertInstanceOf(Form::class, $result);
29
30
        $historyViewer = $result->Fields()->fieldByName('PageHistory');
31
        $this->assertInstanceOf(HistoryViewerField::class, $historyViewer, 'Field is injected');
32
        $this->assertSame($result, $historyViewer->getForm(), 'Correct form is injected');
33
    }
34
}
35