actingAs($user = User::factory()->create()); $portfolio = Portfolio::factory()->create(); Transaction::factory()->buy()->yearsAgo()->portfolio($portfolio->id)->symbol('ACME')->create(); // manually reset the split last sync date (which is set when the holding is created) Holding::query()->portfolio($portfolio->id)->symbol('ACME')->update([ 'splits_synced_at' => null ]); Split::refreshSplitData('ACME'); $transactions = Transaction::query()->symbol('ACME')->portfolio($portfolio->id)->get(); $this->assertCount(2, $transactions); } /** */ public function test_splits_do_not_create_new_transaction_if_already_synced(): void { $this->actingAs($user = User::factory()->create()); $portfolio = Portfolio::factory()->create(); Transaction::factory()->buy()->yearsAgo()->portfolio($portfolio->id)->symbol('ACME')->create(); Split::refreshSplitData('ACME'); $transactions = Transaction::query()->symbol('ACME')->portfolio($portfolio->id)->get(); $this->assertCount(1, $transactions); } }