24 use MediaWikiCoversValidator;
32 $this->assertCount( 1, $timing->getEntries() );
36 $this->assertCount( 3, $timing->getEntries() );
38 $timing->clearMarks(
'a' );
39 $this->assertNull( $timing->getEntryByName(
'a' ) );
40 $this->assertNotNull( $timing->getEntryByName(
'b' ) );
42 $timing->clearMarks();
43 $this->assertCount( 1, $timing->getEntries() );
54 $entry = $timing->getEntryByName(
'a' );
55 $this->assertEquals(
'a', $entry[
'name'] );
56 $this->assertEquals(
'mark', $entry[
'entryType'] );
57 $this->assertArrayHasKey(
'startTime', $entry );
58 $this->assertEquals( 0, $entry[
'duration'] );
62 $newEntry = $timing->getEntryByName(
'a' );
63 $this->assertGreaterThan( $entry[
'startTime'], $newEntry[
'startTime'] );
76 $a = $timing->getEntryByName(
'a' );
77 $b = $timing->getEntryByName(
'b' );
79 $timing->measure(
'a_to_b',
'a',
'b' );
81 $entry = $timing->getEntryByName(
'a_to_b' );
82 $this->assertEquals(
'a_to_b', $entry[
'name'] );
83 $this->assertEquals(
'measure', $entry[
'entryType'] );
84 $this->assertEquals( $a[
'startTime'], $entry[
'startTime'] );
85 $this->assertEquals( $b[
'startTime'] - $a[
'startTime'], $entry[
'duration'] );
94 $timing->
mark(
'mark_a' );
96 $timing->mark(
'mark_b' );
98 $timing->mark(
'mark_c' );
100 $timing->measure(
'measure_a',
'mark_a',
'mark_b' );
101 $timing->measure(
'measure_b',
'mark_b',
'mark_c' );
103 $marks = array_map(
function ( $entry ) {
104 return $entry[
'name'];
105 }, $timing->getEntriesByType(
'mark' ) );
107 $this->assertEquals( [
'requestStart',
'mark_a',
'mark_b',
'mark_c' ], $marks );
109 $measures = array_map(
function ( $entry ) {
110 return $entry[
'name'];
111 }, $timing->getEntriesByType(
'measure' ) );
113 $this->assertEquals( [
'measure_a',
'measure_b' ], $measures );