Skip to content

Commit bcdd8ff

Browse files
authored
Set a date format on a date column for update test. (#380)
1 parent 1490cd2 commit bcdd8ff

File tree

5 files changed

+16
-5
lines changed

5 files changed

+16
-5
lines changed

src/Generators/TestGenerator.php

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -457,8 +457,15 @@ protected function buildTestCases(Controller $controller)
457457
$assertions['sanity'][] = sprintf('$%s->refresh();', $variable);
458458

459459
if ($request_data) {
460+
/** @var \Blueprint\Models\Model $local_model */
461+
$local_model = $this->tree->modelForContext($model);
460462
foreach ($request_data as $key => $datum) {
461-
$assertions['generic'][] = sprintf('$this->assertEquals(%s, $%s->%s);', $datum, $variable, $key);
463+
if (! is_null($local_model) && $local_model->hasColumn($key) && $local_model->column($key)->dataType() === 'date') {
464+
$this->addImport($controller, 'Carbon\\Carbon');
465+
$assertions['generic'][] = sprintf('$this->assertEquals(Carbon::parse(%s), $%s->%s);', $datum, $variable, $key);
466+
} else {
467+
$assertions['generic'][] = sprintf('$this->assertEquals(%s, $%s->%s);', $datum, $variable, $key);
468+
}
462469
}
463470
}
464471
}

tests/fixtures/tests/api-shorthand-validation-laravel8.php

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44

55
use App\Certificate;
66
use App\CertificateType;
7+
use Carbon\Carbon;
78
use Illuminate\Foundation\Testing\RefreshDatabase;
89
use Illuminate\Foundation\Testing\WithFaker;
910
use JMac\Testing\Traits\AdditionalAssertions;
@@ -131,7 +132,7 @@ public function update_behaves_as_expected()
131132
$this->assertEquals($certificate_type->id, $certificate->certificate_type_id);
132133
$this->assertEquals($reference, $certificate->reference);
133134
$this->assertEquals($document, $certificate->document);
134-
$this->assertEquals($expiry_date, $certificate->expiry_date);
135+
$this->assertEquals(Carbon::parse($expiry_date), $certificate->expiry_date);
135136
}
136137

137138

tests/fixtures/tests/api-shorthand-validation.php

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44

55
use App\Certificate;
66
use App\CertificateType;
7+
use Carbon\Carbon;
78
use Illuminate\Foundation\Testing\RefreshDatabase;
89
use Illuminate\Foundation\Testing\WithFaker;
910
use JMac\Testing\Traits\AdditionalAssertions;
@@ -131,7 +132,7 @@ public function update_behaves_as_expected()
131132
$this->assertEquals($certificate_type->id, $certificate->certificate_type_id);
132133
$this->assertEquals($reference, $certificate->reference);
133134
$this->assertEquals($document, $certificate->document);
134-
$this->assertEquals($expiry_date, $certificate->expiry_date);
135+
$this->assertEquals(Carbon::parse($expiry_date), $certificate->expiry_date);
135136
}
136137

137138

tests/fixtures/tests/certificate-pascal-case-example-laravel8.php

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44

55
use App\Certificate;
66
use App\CertificateType;
7+
use Carbon\Carbon;
78
use Illuminate\Foundation\Testing\RefreshDatabase;
89
use Illuminate\Foundation\Testing\WithFaker;
910
use JMac\Testing\Traits\AdditionalAssertions;
@@ -131,7 +132,7 @@ public function update_behaves_as_expected()
131132
$this->assertEquals($certificate_type->id, $certificate->certificate_type_id);
132133
$this->assertEquals($reference, $certificate->reference);
133134
$this->assertEquals($document, $certificate->document);
134-
$this->assertEquals($expiry_date, $certificate->expiry_date);
135+
$this->assertEquals(Carbon::parse($expiry_date), $certificate->expiry_date);
135136
}
136137

137138

tests/fixtures/tests/certificate-pascal-case-example.php

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44

55
use App\Certificate;
66
use App\CertificateType;
7+
use Carbon\Carbon;
78
use Illuminate\Foundation\Testing\RefreshDatabase;
89
use Illuminate\Foundation\Testing\WithFaker;
910
use JMac\Testing\Traits\AdditionalAssertions;
@@ -131,7 +132,7 @@ public function update_behaves_as_expected()
131132
$this->assertEquals($certificate_type->id, $certificate->certificate_type_id);
132133
$this->assertEquals($reference, $certificate->reference);
133134
$this->assertEquals($document, $certificate->document);
134-
$this->assertEquals($expiry_date, $certificate->expiry_date);
135+
$this->assertEquals(Carbon::parse($expiry_date), $certificate->expiry_date);
135136
}
136137

137138

0 commit comments

Comments
 (0)