Skip to content

Commit bec0c69

Browse files
committed
improve test
1 parent 66e93a2 commit bec0c69

2 files changed

Lines changed: 21 additions & 1 deletion

File tree

app/Metrics/App/WikiMetrics.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -75,7 +75,7 @@ protected function getNumberOfActions(string $interval): null|int
7575
]
7676
)) { return null; }
7777

78-
$wikiDb = Wiki::with('wikiDb')->where('id', $this->wiki->id)->first()->wikiDb;
78+
$wikiDb = Wiki::withTrashed()->with('wikiDb')->where('id', $this->wiki->id)->first()->wikiDb;
7979
$tableRecentChanges = $wikiDb->name . '.' . $wikiDb->prefix . '_recentchanges';
8080
$tableActor = $wikiDb->name . '.' . $wikiDb->prefix . '_actor';
8181

tests/Metrics/WikiMetricsTest.php

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,9 @@
44

55
use App\Metrics\App\WikiMetrics;
66
use App\Wiki;
7+
use App\WikiDb;
78
use App\WikiDailyMetrics;
9+
use App\Jobs\ProvisionWikiDbJob;
810
use Carbon\Carbon;
911
use Illuminate\Foundation\Testing\RefreshDatabase;
1012
use Tests\TestCase;
@@ -13,25 +15,39 @@ class WikiMetricsTest extends TestCase
1315
{
1416
use RefreshDatabase;
1517

18+
public function setUp(): void {
19+
parent::setUp();
20+
$manager = $this->app->make('db');
21+
$job = new ProvisionWikiDbJob();
22+
$job->handle($manager);
23+
}
1624

1725
public function testSuccessfullyAddRecords()
1826
{
1927
$wiki = Wiki::factory()->create([
2028
'domain' => 'thisfake.wikibase.cloud'
2129
]);
2230

31+
$wikiDb = WikiDb::first();
32+
$wikiDb->update( ['wiki_id' => $wiki->id] );
33+
2334
(new WikiMetrics())->saveMetrics($wiki);
2435
// Assert the metric is updated in the database
2536
$this->assertDatabaseHas('wiki_daily_metrics', [
2637
'date' => now()->toDateString()
2738
]);
2839
}
2940

41+
3042
public function testDoesNotAddDuplicateRecordsWithOnlyDateChange()
3143
{
3244
$wiki = Wiki::factory()->create([
3345
'domain' => 'thisfake.wikibase.cloud'
3446
]);
47+
48+
$wikiDb = WikiDb::first();
49+
$wikiDb->update( ['wiki_id' => $wiki->id] );
50+
3551
//Insert an old metric value for a wiki
3652
WikiDailyMetrics::create([
3753
'id' => $wiki->id. '_'. Carbon::yesterday()->toDateString(),
@@ -54,6 +70,10 @@ public function testAddRecordsWikiIsDeleted()
5470
$wiki = Wiki::factory()->create([
5571
'domain' => 'thisfake.wikibase.cloud'
5672
]);
73+
74+
$wikiDb = WikiDb::first();
75+
$wikiDb->update( ['wiki_id' => $wiki->id] );
76+
5777
//Insert an old metric value for a wiki
5878
WikiDailyMetrics::create([
5979
'id' => $wiki->id. '_'. Carbon::yesterday()->toDateString(),

0 commit comments

Comments
 (0)