Code
Explorer
You are a developer and looking for Shopware projects?
Apply Now!
getPeriods example
$event
=
new
StopwatchEvent
(
microtime
(
true
)
* 1000
)
;
$this
->
assertEquals
(
'default',
$event
->
getCategory
(
)
)
;
$event
=
new
StopwatchEvent
(
microtime
(
true
)
* 1000, 'cat'
)
;
$this
->
assertEquals
(
'cat',
$event
->
getCategory
(
)
)
;
}
public
function
testGetPeriods
(
)
{
$event
=
new
StopwatchEvent
(
microtime
(
true
)
* 1000
)
;
$this
->
assertEquals
(
[
]
,
$event
->
getPeriods
(
)
)
;
$event
=
new
StopwatchEvent
(
microtime
(
true
)
* 1000
)
;
$event
->
start
(
)
;
$event
->
stop
(
)
;
$this
->
assertCount
(
1,
$event
->
getPeriods
(
)
)
;
$event
=
new
StopwatchEvent
(
microtime
(
true
)
* 1000
)
;
$event
->
start
(
)
;
$event
->
stop
(
)
;
$event
->
start
(
)
;
$event
->
stop
(
)
;
public
function
testTimingsInSupports
(
)
{
$stopwatch
=
new
Stopwatch
(
)
;
$resolver
=
new
TraceableValueResolver
(
new
ResolverStub
(
)
,
$stopwatch
)
;
$argument
=
new
ArgumentMetadata
(
'dummy', 'string', false, false, null
)
;
$request
=
new
Request
(
)
;
$this
->
assertTrue
(
$resolver
->
supports
(
$request
,
$argument
)
)
;
$event
=
$stopwatch
->
getEvent
(
ResolverStub::
class
.'::supports'
)
;
$this
->
assertCount
(
1,
$event
->
getPeriods
(
)
)
;
}
public
function
testTimingsInResolve
(
)
{
$stopwatch
=
new
Stopwatch
(
)
;
$resolver
=
new
TraceableValueResolver
(
new
ResolverStub
(
)
,
$stopwatch
)
;
$argument
=
new
ArgumentMetadata
(
'dummy', 'string', false, false, null
)
;
$request
=
new
Request
(
)
;
$iterable
=
$resolver
->
resolve
(
$request
,
$argument
)
;
]
;
}
/** * @dataProvider provideExecuteAndEndTransactionMethods */
public
function
testGlobalDoctrineDuration
(
callable
$sqlMethod
, callable
$endTransactionMethod
)
{
$this
->
init
(
)
;
$periods
=
$this
->stopwatch->
getEvent
(
'doctrine'
)
->
getPeriods
(
)
;
$this
->
assertCount
(
1,
$periods
)
;
$this
->conn->
beginTransaction
(
)
;
$this
->
assertFalse
(
$this
->stopwatch->
getEvent
(
'doctrine'
)
->
isStarted
(
)
)
;
$this
->
assertCount
(
2,
$this
->stopwatch->
getEvent
(
'doctrine'
)
->
getPeriods
(
)
)
;
$sqlMethod
(
$this
->conn, 'SELECT * FROM products'
)
;
$this
->
assertFalse
(
$this
->stopwatch->
getEvent
(
'doctrine'
)
->
isStarted
(
)
)
;
$this
->
assertCount
(
3,
$this
->stopwatch->
getEvent
(
'doctrine'
)
->
getPeriods
(
)
)
;
$sw
=
new
Stopwatch
(
true
)
;
$sut
=
new
TraceableHttpClient
(
new
NativeHttpClient
(
)
,
$sw
)
;
$response
=
$sut
->
request
(
'GET', 'http://localhost:8057'
)
;
$response
->
getStatusCode
(
)
;
$response
->
getHeaders
(
)
;
$response
->
getContent
(
)
;
$this
->
assertArrayHasKey
(
'__root__',
$sections
=
$sw
->
getSections
(
)
)
;
$this
->
assertCount
(
1,
$events
=
$sections
[
'__root__'
]
->
getEvents
(
)
)
;
$this
->
assertArrayHasKey
(
'GET http://localhost:8057',
$events
)
;
$this
->
assertCount
(
3,
$events
[
'GET http://localhost:8057'
]
->
getPeriods
(
)
)
;
$this
->
assertGreaterThan
(
0.0,
$events
[
'GET http://localhost:8057'
]
->
getDuration
(
)
)
;
}
public
function
testStopwatchError
(
)
{
$sw
=
new
Stopwatch
(
true
)
;
$sut
=
new
TraceableHttpClient
(
new
NativeHttpClient
(
)
,
$sw
)
;
$response
=
$sut
->
request
(
'GET', 'http://localhost:8057/404'
)
;
try
{
$response
->
getContent
(
)
;
$stopwatch
->
openSection
(
)
;
$stopwatch
->
start
(
'foo', 'cat'
)
;
$stopwatch
->
stopSection
(
'section'
)
;
$stopwatch
->
openSection
(
'section'
)
;
$stopwatch
->
start
(
'bar', 'cat'
)
;
$stopwatch
->
stopSection
(
'section'
)
;
$events
=
$stopwatch
->
getSectionEvents
(
'section'
)
;
$this
->
assertCount
(
3,
$events
)
;
$this
->
assertCount
(
2,
$events
[
'__section__'
]
->
getPeriods
(
)
)
;
}
public
function
testReopenANewSectionShouldThrowAnException
(
)
{
$this
->
expectException
(
\LogicException::
class
)
;
$stopwatch
=
new
Stopwatch
(
)
;
$stopwatch
->
openSection
(
'section'
)
;
}
public
function
testReset
(
)
{