Skip to content

Commit f8563d7

Browse files
author
Justin Hayes
authored
Merge pull request #3 from jshayes/change/make-assertion-values-optional
Make the value for each stat assertion optional
2 parents 9b38e93 + 91f8fc0 commit f8563d7

File tree

2 files changed

+38
-20
lines changed

2 files changed

+38
-20
lines changed

src/Testing/DataDogFake.php

Lines changed: 26 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -46,65 +46,70 @@ public function assertStatWasNotSent(string $stat): StatsAssertion
4646
* Assert that the given stat had timing information sent
4747
*
4848
* @param string $stat
49-
* @param float $time
49+
* @param float|null $time
5050
*
5151
* @return \JSHayes\LaravelDataDogStatsd\Testing\StatsAssertion
5252
*/
53-
public function assertTimingWasSent(string $stat, float $time): StatsAssertion
53+
public function assertTimingWasSent(string $stat, float $time = null): StatsAssertion
5454
{
55-
return $this->makeAssertion($stat)->withValue("$time|ms");
55+
$assertion = $this->makeAssertion($stat);
56+
return is_null($time) ? $assertion : $assertion->withValue("$time|ms");
5657
}
5758

5859
/**
5960
* Assert that the given stat had gauge information sent
6061
*
6162
* @param string $stat
62-
* @param float $value
63+
* @param float|null $value
6364
*
6465
* @return \JSHayes\LaravelDataDogStatsd\Testing\StatsAssertion
6566
*/
66-
public function assertGaugeWasSent(string $stat, float $value): StatsAssertion
67+
public function assertGaugeWasSent(string $stat, float $value = null): StatsAssertion
6768
{
68-
return $this->makeAssertion($stat)->withValue("$value|g");
69+
$assertion = $this->makeAssertion($stat);
70+
return is_null($value) ? $assertion : $assertion->withValue("$value|g");
6971
}
7072

7173
/**
7274
* Assert that the given stat had histogram information sent
7375
*
7476
* @param string $stat
75-
* @param float $value
77+
* @param float|null $value
7678
*
7779
* @return \JSHayes\LaravelDataDogStatsd\Testing\StatsAssertion
7880
*/
79-
public function assertHistogramWasSent(string $stat, float $value): StatsAssertion
81+
public function assertHistogramWasSent(string $stat, float $value = null): StatsAssertion
8082
{
81-
return $this->makeAssertion($stat)->withValue("$value|h");
83+
$assertion = $this->makeAssertion($stat);
84+
return is_null($value) ? $assertion : $assertion->withValue("$value|h");
8285
}
8386

8487
/**
8588
* Assert that the given stat had distribution information sent
8689
*
8790
* @param string $stat
88-
* @param float $value
91+
* @param float|null $value
8992
*
9093
* @return \JSHayes\LaravelDataDogStatsd\Testing\StatsAssertion
9194
*/
92-
public function assertDistributionWasSent(string $stat, float $value): StatsAssertion
95+
public function assertDistributionWasSent(string $stat, float $value = null): StatsAssertion
9396
{
94-
return $this->makeAssertion($stat)->withValue("$value|d");
97+
$assertion = $this->makeAssertion($stat);
98+
return is_null($value) ? $assertion : $assertion->withValue("$value|d");
9599
}
96100

97101
/**
98102
* Assert that the given stat had set information sent
99103
*
100104
* @param string $stat
101-
* @param float $value
105+
* @param float|null $value
102106
*
103107
* @return \JSHayes\LaravelDataDogStatsd\Testing\StatsAssertion
104108
*/
105-
public function assertSetWasSent(string $stat, float $value): StatsAssertion
109+
public function assertSetWasSent(string $stat, float $value = null): StatsAssertion
106110
{
107-
return $this->makeAssertion($stat)->withValue("$value|s");
111+
$assertion = $this->makeAssertion($stat);
112+
return is_null($value) ? $assertion : $assertion->withValue("$value|s");
108113
}
109114

110115
/**
@@ -117,7 +122,7 @@ public function assertSetWasSent(string $stat, float $value): StatsAssertion
117122
*/
118123
public function assertStatWasIncremented(string $stat, int $value = 1): StatsAssertion
119124
{
120-
return $this->makeAssertion($stat)->withValue("$value|c");
125+
return $this->assertStatWasUpdated($stat, $value);
121126
}
122127

123128
/**
@@ -130,19 +135,20 @@ public function assertStatWasIncremented(string $stat, int $value = 1): StatsAss
130135
*/
131136
public function assertStatWasDecremented(string $stat, int $value = -1): StatsAssertion
132137
{
133-
return $this->makeAssertion($stat)->withValue("$value|c");
138+
return $this->assertStatWasUpdated($stat, $value);
134139
}
135140

136141
/**
137142
* Assert that the given stat was updated by the given value
138143
*
139144
* @param string $stat
140-
* @param int $value
145+
* @param int|null $value
141146
*
142147
* @return \JSHayes\LaravelDataDogStatsd\Testing\StatsAssertion
143148
*/
144-
public function assertStatWasUpdated(string $stat, int $value): StatsAssertion
149+
public function assertStatWasUpdated(string $stat, int $value = null): StatsAssertion
145150
{
146-
return $this->makeAssertion($stat)->withValue("$value|c");
151+
$assertion = $this->makeAssertion($stat);
152+
return is_null($value) ? $assertion : $assertion->withValue("$value|c");
147153
}
148154
}

tests/Unit/Testing/DataDogFakeTest.php

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,7 @@ public function asserting_that_a_timing_stat_was_sent_fails_when_the_stat_was_no
3535
$fake->timing('stat', 1.0);
3636

3737
$fake->assertTimingWasSent('stat', 1.0);
38+
$fake->assertTimingWasSent('stat');
3839
try {
3940
$fake->assertTimingWasSent('other', 1.0);
4041
} catch (AssertionFailedError $e) {
@@ -53,6 +54,7 @@ public function asserting_that_a_timing_stat_was_sent_fails_when_the_stat_was_no
5354
$fake->timing('stat', 1.0);
5455

5556
$fake->assertTimingWasSent('stat', 1.0);
57+
$fake->assertTimingWasSent('stat');
5658
try {
5759
$fake->assertTimingWasSent('stat', 2.0);
5860
} catch (AssertionFailedError $e) {
@@ -71,6 +73,7 @@ public function asserting_that_a_gauge_stat_was_sent_fails_when_the_stat_was_not
7173
$fake->gauge('stat', 1.0);
7274

7375
$fake->assertGaugeWasSent('stat', 1.0);
76+
$fake->assertGaugeWasSent('stat');
7477
try {
7578
$fake->assertGaugeWasSent('other', 1.0);
7679
} catch (AssertionFailedError $e) {
@@ -89,6 +92,7 @@ public function asserting_that_a_gauge_stat_was_sent_fails_when_the_stat_was_not
8992
$fake->gauge('stat', 1.0);
9093

9194
$fake->assertGaugeWasSent('stat', 1.0);
95+
$fake->assertGaugeWasSent('stat');
9296
try {
9397
$fake->assertGaugeWasSent('stat', 2.0);
9498
} catch (AssertionFailedError $e) {
@@ -107,6 +111,7 @@ public function asserting_that_a_histogram_stat_was_sent_fails_when_the_stat_was
107111
$fake->histogram('stat', 1.0);
108112

109113
$fake->assertHistogramWasSent('stat', 1.0);
114+
$fake->assertHistogramWasSent('stat');
110115
try {
111116
$fake->assertHistogramWasSent('other', 1.0);
112117
} catch (AssertionFailedError $e) {
@@ -125,6 +130,7 @@ public function asserting_that_a_histogram_stat_was_sent_fails_when_the_stat_was
125130
$fake->histogram('stat', 1.0);
126131

127132
$fake->assertHistogramWasSent('stat', 1.0);
133+
$fake->assertHistogramWasSent('stat');
128134
try {
129135
$fake->assertHistogramWasSent('stat', 2.0);
130136
} catch (AssertionFailedError $e) {
@@ -143,6 +149,7 @@ public function asserting_that_a_distribution_stat_was_sent_fails_when_the_stat_
143149
$fake->distribution('stat', 1.0);
144150

145151
$fake->assertDistributionWasSent('stat', 1.0);
152+
$fake->assertDistributionWasSent('stat');
146153
try {
147154
$fake->assertDistributionWasSent('other', 1.0);
148155
} catch (AssertionFailedError $e) {
@@ -161,6 +168,7 @@ public function asserting_that_a_distribution_stat_was_sent_fails_when_the_stat_
161168
$fake->distribution('stat', 1.0);
162169

163170
$fake->assertDistributionWasSent('stat', 1.0);
171+
$fake->assertDistributionWasSent('stat');
164172
try {
165173
$fake->assertDistributionWasSent('stat', 2.0);
166174
} catch (AssertionFailedError $e) {
@@ -179,6 +187,7 @@ public function asserting_that_a_set_stat_was_sent_fails_when_the_stat_was_not_s
179187
$fake->set('stat', 1.0);
180188

181189
$fake->assertSetWasSent('stat', 1.0);
190+
$fake->assertSetWasSent('stat');
182191
try {
183192
$fake->assertSetWasSent('other', 1.0);
184193
} catch (AssertionFailedError $e) {
@@ -197,6 +206,7 @@ public function asserting_that_a_set_stat_was_sent_fails_when_the_stat_was_not_s
197206
$fake->set('stat', 1.0);
198207

199208
$fake->assertSetWasSent('stat', 1.0);
209+
$fake->assertSetWasSent('stat');
200210
try {
201211
$fake->assertSetWasSent('stat', 2.0);
202212
} catch (AssertionFailedError $e) {
@@ -287,6 +297,7 @@ public function asserting_that_a_stat_was_update_fails_when_the_stat_was_not_upd
287297
$fake->updateStats('stat', 10);
288298

289299
$fake->assertStatWasUpdated('stat', 10);
300+
$fake->assertStatWasUpdated('stat');
290301
try {
291302
$fake->assertStatWasUpdated('other', 10);
292303
} catch (AssertionFailedError $e) {
@@ -305,6 +316,7 @@ public function asserting_that_a_stat_was_update_fails_when_the_stat_was_not_upd
305316
$fake->updateStats('stat', 10);
306317

307318
$fake->assertStatWasUpdated('stat', 10);
319+
$fake->assertStatWasUpdated('stat');
308320
try {
309321
$fake->assertStatWasUpdated('stat', 1);
310322
} catch (AssertionFailedError $e) {

0 commit comments

Comments
 (0)