ДЗ №7: Web API #8

Merged
1ffy merged 2 commits from task/7_web-api into master 2026-04-16 10:47:21 +08:00
Owner
No description provided.
218 KiB
69 KiB
Task 7: Web API
All checks were successful
CI / build-and-test (push) Successful in 1m38s
102427ab90
Task 7 fixes
All checks were successful
CI / build-and-test (push) Successful in 1m25s
7965e019c1
VolovikovAlexander left a comment

Да. В целом все верно. Нужно немного доработать код.

Да. В целом все верно. Нужно немного доработать код.
@ -0,0 +37,4 @@
{
table.PrimaryKey("PK_journal_rows", x => x.id);
table.ForeignKey(
name: "FK_journal_rows_organizations_organization_id",
First-time contributor

Нет. Не нужно связей делать. Это "плоская" таблица. Назначение - "очень быстро вставить данные".

Нет. Не нужно связей делать. Это "плоская" таблица. Назначение - "очень быстро вставить данные".
@ -24,3 +61,2 @@
foreach (var entry in entries)
Console.WriteLine(entry);
await syncService.SyncBatchAsync(fetchSettings);
First-time contributor

Нет. Нужно весь журнал загрузить из клиента на сервер. У Вас только одна пачка загружается.
Так же , сделайте замер (по логам, например) с какой скоростью у Вас весь журнал был загружен.

Нет. Нужно весь журнал загрузить из клиента на сервер. У Вас только одна пачка загружается. Так же , сделайте замер (по логам, например) с какой скоростью у Вас весь журнал был загружен.
@ -0,0 +5,4 @@
using PersonalAccount.Api.Services;
using PersonalAccount.Domain.Data;
using PersonalAccount.Domain.Models;
using Testcontainers.PostgreSql;
First-time contributor

Советую заменить на InMemory
https://learn.microsoft.com/en-us/ef/core/providers/in-memory/?tabs=dotnet-core-cli

Testcontainers.PostgreSql

Если разворачивать Ваш проект в Docker контейнере, то потребуется root права (контейнер в контейнере). т.е. таким образом Ваш проект будет зависимый. Лучше это исключить. Есть альтернативы.

Советую заменить на InMemory https://learn.microsoft.com/en-us/ef/core/providers/in-memory/?tabs=dotnet-core-cli > Testcontainers.PostgreSql Если разворачивать Ваш проект в Docker контейнере, то потребуется root права (контейнер в контейнере). т.е. таким образом Ваш проект будет зависимый. Лучше это исключить. Есть альтернативы.
@ -0,0 +60,4 @@
// ── PushAsync ─────────────────────────────────────────────────────────────────
[Test]
public async Task PushAsync_WithNewRows_PersistsRowsAndReturnsTrue()
First-time contributor

Добавьте пжл описание к тестам
https://gitverse.ru/VolovikovAlexander/PersonalAccount2026/content/master/_docs/CONTRIBUTING.md
Для чего каждый тест используется.

Тесты пишутся для "коллег" на будущее.

Добавьте пжл описание к тестам https://gitverse.ru/VolovikovAlexander/PersonalAccount2026/content/master/_docs/CONTRIBUTING.md Для чего каждый тест используется. Тесты пишутся для "коллег" на будущее.
@ -0,0 +129,4 @@
// ── Helpers ───────────────────────────────────────────────────────────────────
private static List<JournalRowDto> BuildRows(long startCode, int count) =>
First-time contributor

У Вас тут только продаже. Нет оплат, сдачи и прочее.
Советую заменить
https://gitverse.ru/VolovikovAlexander/PersonalAccount2026/content/master/Tst/PersonalAccount.UnitTests/ReportDataCreator.cs

На прошлом занятии мы разбирали данный кейс.

У Вас тут только продаже. Нет оплат, сдачи и прочее. Советую заменить https://gitverse.ru/VolovikovAlexander/PersonalAccount2026/content/master/Tst/PersonalAccount.UnitTests/ReportDataCreator.cs На прошлом занятии мы разбирали данный кейс.
1ffy merged commit 83c696a875 into master 2026-04-16 10:47:21 +08:00
Sign in to join this conversation.
No reviewers
No labels
No milestone
No assignees
2 participants
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
fbki.Levitan/PersonalAccount!8
No description provided.