Completed
Push — master ( e42a4c...f187a0 )
by Daniel
03:17
created

tests/CommentAdminTest.php (2 issues)

calls to non-existent methods.

Bug Major

Upgrade to new PHP Analysis Engine

These results are based on our legacy PHP analysis, consider migrating to our new PHP analysis engine instead. Learn more

1
<?php
2
3
class CommentAdminTest extends SapphireTest {
4
	public function testProvidePermissions() {
5
        $commentAdmin = new CommentAdmin();
6
        $locale = i18n::get_locale();
7
8
        i18n::set_locale('fr');
9
        $expected = array(
10
            'CMS_ACCESS_CommentAdmin' => array(
11
                # FIXME - this is a bug, missing from lang.yml files
12
                'name' => 'Access to \'Comments\' section',
13
                'category' => 'Accès au CMS'
14
            )
15
        );
16
        $this->assertEquals($expected, $commentAdmin->providePermissions());
0 ignored issues
show
The method assertEquals() does not seem to exist on object<CommentAdminTest>.

This check looks for calls to methods that do not seem to exist on a given type. It looks for the method on the type itself as well as in inherited classes or implemented interfaces.

This is most likely a typographical error or the method has been renamed.

Loading history...
17
18
        i18n::set_locale($locale);
19
        $expected = array(
20
            'CMS_ACCESS_CommentAdmin' => array(
21
                # FIXME - this is a bug, missing from lang.yml files
22
                'name' => 'Access to \'Comments\' section',
23
                'category' => 'CMS Access'
24
            )
25
        );
26
        $this->assertEquals($expected, $commentAdmin->providePermissions());
0 ignored issues
show
The method assertEquals() does not seem to exist on object<CommentAdminTest>.

This check looks for calls to methods that do not seem to exist on a given type. It looks for the method on the type itself as well as in inherited classes or implemented interfaces.

This is most likely a typographical error or the method has been renamed.

Loading history...
27
	}
28
29
	public function testGetEditForm() {
30
        $commentAdmin = new CommentAdmin();
31
        $this->logInWithPermission('CMS_ACCESS_CommentAdmin');
32
		$form = $commentAdmin->getEditForm();
33
        $names = $this->getFormFieldNames($form);
34
        $expected = array(
35
            'NewComments',
36
            'ApprovedComments',
37
            'SpamComments'
38
        );
39
        $this->assertEquals($expected, $names);
40
41
        if($member = Member::currentUser()) $member->logOut();
42
43
        $form = $commentAdmin->getEditForm();
44
	}
45
46
    private function getFormFieldNames($form) {
47
        $result = array();
48
        $fields = $form->Fields();
49
        $tab = $fields->findOrMakeTab('Root');
50
        $fields = $tab->FieldList();
51
        foreach ($fields as $field) {
52
            array_push($result, $field->getName());
53
        }
54
        return $result;
55
    }
56
57
}
58