Some checks failed
Desktop tests / test (push) Has been cancelled
- проект tests/Elfisa.Tests: 56 юнит-тестов на Elfisa.Core + Elfisa.Avalonia: версии апдейтера, срок JWT-сессии, ApiClient (URL/ошибки/ретраи/парсинг), DTO-контракты, черновики, корзина, дрилдаун прайса (МГ/базовое имя) - тест-швы: internal-методы через InternalsVisibleTo, ApiClient(HttpMessageHandler) - CI .github/workflows/desktop-tests.yml — dotnet test при пуше (GitHub/Gitea Actions) - README с описанием покрытия Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
37 lines
874 B
C#
37 lines
874 B
C#
using Elfisa.Core;
|
|
using Xunit;
|
|
|
|
namespace Elfisa.Tests;
|
|
|
|
public class DraftTests
|
|
{
|
|
[Fact]
|
|
public void DraftItem_line_sum_multiplies()
|
|
{
|
|
var it = new DraftItem { Price = 10.5m, Qty = 3 };
|
|
Assert.Equal(31.5m, it.LineSum);
|
|
}
|
|
|
|
[Fact]
|
|
public void DraftOrder_total_and_count()
|
|
{
|
|
var o = new DraftOrder();
|
|
o.Items.Add(new DraftItem { Price = 10m, Qty = 2 }); // 20
|
|
o.Items.Add(new DraftItem { Price = 5.5m, Qty = 4 }); // 22
|
|
Assert.Equal(42m, o.Total);
|
|
Assert.Equal(2, o.ItemsCount);
|
|
}
|
|
|
|
[Fact]
|
|
public void DraftOrder_generates_id()
|
|
=> Assert.False(string.IsNullOrWhiteSpace(new DraftOrder().Id));
|
|
|
|
[Fact]
|
|
public void Empty_order_totals_zero()
|
|
{
|
|
var o = new DraftOrder();
|
|
Assert.Equal(0m, o.Total);
|
|
Assert.Equal(0, o.ItemsCount);
|
|
}
|
|
}
|