Add policy, intake, and payment history to the admin student detail view
CI / Coding Standards (pull_request) Successful in 2m47s
CI / PHPStan (pull_request) Successful in 2m56s
CI / Tests (PHP 8.3) (pull_request) Successful in 2m39s
CI / Build Plugin Zip (pull_request) Skipped
CI / Tests (PHP 8.2) (pull_request) Successful in 43s
CI / Tests (PHP 8.1) (pull_request) Successful in 44s
CI / No Debug Code (pull_request) Successful in 2s
CI / Coding Standards (pull_request) Successful in 2m47s
CI / PHPStan (pull_request) Successful in 2m56s
CI / Tests (PHP 8.3) (pull_request) Successful in 2m39s
CI / Build Plugin Zip (pull_request) Skipped
CI / Tests (PHP 8.2) (pull_request) Successful in 43s
CI / Tests (PHP 8.1) (pull_request) Successful in 44s
CI / No Debug Code (pull_request) Successful in 2s
The student-administration spec deferred three detail-view sections until Payments landed. Adds them now: policy-acceptance history (title, version, context, date), intake answers (label, answer, context), and — gated on manage_billing — payment history with HST breakdown and receipt numbers. New Auth\StudentHistory builds the display rows from per-student queries added to AcceptanceRepository, AnswerRepository, and PaymentRepository; the Payment model now carries created_at so unpaid rows still have a date. Closes #69 Co-Authored-By: Claude Fable 5 <[email protected]>
This commit is contained in:
@@ -98,4 +98,32 @@ class AnswerRepositoryTest extends TestCase
|
||||
self::assertInstanceOf(Answer::class, $answers[0]);
|
||||
self::assertSame(3, $answers[0]->questionId);
|
||||
}
|
||||
|
||||
public function testFindByStudentPreparesQueryAndMaps(): void
|
||||
{
|
||||
$row = (object) [
|
||||
'id' => '1',
|
||||
'question_id' => '3',
|
||||
'registration_type' => Answer::REG_LESSON,
|
||||
'registration_id' => '12',
|
||||
'student_id' => '5',
|
||||
'answer_value' => 'Beginner',
|
||||
];
|
||||
|
||||
$this->db->shouldReceive('prepare')
|
||||
->once()
|
||||
->with(
|
||||
Mockery::pattern('/student_id = %d ORDER BY id DESC/'),
|
||||
'wp_us_question_answers',
|
||||
5
|
||||
)
|
||||
->andReturn('SELECT ...');
|
||||
|
||||
$this->db->shouldReceive('get_results')->andReturn([$row]);
|
||||
|
||||
$answers = $this->repo->findByStudent(5);
|
||||
|
||||
self::assertCount(1, $answers);
|
||||
self::assertSame(5, $answers[0]->studentId);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user