FOSSology  4.4.0
Open Source License Compliance by Open Source Software
TextFragmentTest.php
1 <?php
2 /*
3  SPDX-FileCopyrightText: © 2014 Siemens AG
4 
5  SPDX-License-Identifier: GPL-2.0-only
6 */
7 
8 namespace Fossology\Lib\Data;
9 
10 class TextFragmentTest extends \PHPUnit\Framework\TestCase
11 {
12  const START_OFFSET = 10;
13 
14  const CONTENT = "foo bar baz";
15 
19  private $fragment;
20 
21  protected function setUp() : void
22  {
23  $this->fragment = new TextFragment(self::START_OFFSET, self::CONTENT);
24  }
25 
26  public function testGetStartOffset()
27  {
28  assertThat($this->fragment->getStartOffset(), is(self::START_OFFSET));
29  }
30 
31  public function testGetEndOffset()
32  {
33  assertThat($this->fragment->getEndOffset(), is(self::START_OFFSET + 11));
34  }
35 
36  public function testGetSliceRegular()
37  {
38  assertThat($this->fragment->getSlice(self::START_OFFSET, self::START_OFFSET + 3), is("foo"));
39  assertThat($this->fragment->getSlice(self::START_OFFSET + 4, self::START_OFFSET + 4 + 3), is("bar"));
40  assertThat($this->fragment->getSlice(self::START_OFFSET + 8, self::START_OFFSET + 8 + 3), is("baz"));
41  }
42 
43  public function testGetSliceWithoutEnd()
44  {
45  assertThat($this->fragment->getSlice(self::START_OFFSET + 8), is("baz"));
46  }
47 
48  public function testGetSliceAtLeftEdge()
49  {
50  assertThat($this->fragment->getSlice(self::START_OFFSET - 1, self::START_OFFSET - 1 + 3), is("fo"));
51  }
52 
53  public function testGetSliceAtRightEdge()
54  {
55  assertThat($this->fragment->getSlice(self::START_OFFSET + 9, self::START_OFFSET + 9 + 3), is("az"));
56  }
57 }