'image', 'air_id' => 'a:expensive@1', 'label' => 'Expensive', 'unit' => 'per_image', 'price_usd' => 0.05, 'active' => true, ]); RunwareModel::recomputeDefault('image'); $this->assertTrue($expensive->fresh()->is_default); $cheap = RunwareModel::create([ 'modality' => 'image', 'air_id' => 'a:cheap@1', 'label' => 'Cheap', 'unit' => 'per_image', 'price_usd' => 0.01, 'active' => true, ]); RunwareModel::recomputeDefault('image'); $this->assertFalse($expensive->fresh()->is_default); $this->assertTrue($cheap->fresh()->is_default); $this->assertSame($cheap->air_id, RunwareModel::defaultFor('image')->air_id); } public function test_inactive_models_are_never_default(): void { $inactiveCheap = RunwareModel::create([ 'modality' => 'video', 'air_id' => 'v:cheap@1', 'label' => 'Cheap but off', 'unit' => 'per_second', 'price_usd' => 0.001, 'active' => false, ]); $active = RunwareModel::create([ 'modality' => 'video', 'air_id' => 'v:active@1', 'label' => 'Active', 'unit' => 'per_second', 'price_usd' => 0.05, 'active' => true, ]); RunwareModel::recomputeDefault('video'); $this->assertFalse($inactiveCheap->fresh()->is_default); $this->assertTrue($active->fresh()->is_default); } }