Passed
Push — master ( af7aaf...9d963c )
by Gordon
04:08
created

PrevNextSiblingExtensionTest   A

Complexity

Total Complexity 2

Size/Duplication

Total Lines 23
Duplicated Lines 69.57 %

Coupling/Cohesion

Components 0
Dependencies 1
Metric Value
wmc 2
lcom 0
cbo 1
dl 16
loc 23
rs 10

2 Methods

Rating   Name   Duplication   Size   Complexity  
A testNextSibling() 0 7 1
A testPreviousSibling() 0 7 1

How to fix   Duplicated Code   

Duplicated Code

Duplicate code is one of the most pungent code smells. A rule that is often used is to re-structure code once it is duplicated in three or more places.

Common duplication problems, and corresponding solutions are:

1
<?php
2
namespace WebOfTalent\PrevNextSibling\Tests;
3
4
use SilverStripe\Dev\SapphireTest;
5
6
class PrevNextSiblingExtensionTest extends SapphireTest {
7
8
    protected static $fixture_file = 'tests/PrevNextSiblingExtensionTest.yml';
9
10
	public function testNextSibling() {
11
		$child1 = $this->objFromFixture('Page', 'child01');
12
        $child2 = $this->objFromFixture('Page', 'child02');
13
        $child3 = $this->objFromFixture('Page', 'child03');
14
        $this->assertNull($child3->NextSibling());
15
        $this->assertEquals($child2->ID, $child1->NextSibling()->ID);
16
        $this->assertEquals($child3->ID, $child2->NextSibling()->ID);
17
	}
18
19
	public function testPreviousSibling() {
20
		$child1 = $this->objFromFixture('Page', 'child01');
21
        $this->assertNull($child1->PreviousSibling());
22
        $child2 = $this->objFromFixture('Page', 'child02');
23
        $this->assertEquals($child1->ID, $child2->PreviousSibling()->ID);
24
        $child3 = $this->objFromFixture('Page', 'child03');
25
        $this->assertEquals($child2->ID, $child3->PreviousSibling()->ID);
26
	}
27
28
}
29