Files
step3/api/QuestionsApi.Tests/AccessCatalogTests.cs
T

31 lines
987 B
C#

using QuestionsApi.Models;
using Xunit;
namespace QuestionsApi.Tests;
public sealed class AccessCatalogTests
{
[Fact]
public void FreeEconomy_HasTheReleaseLimits()
{
Assert.Equal(20, AccessCatalog.FreeQuestionLimit);
Assert.Equal(20, AccessCatalog.CreditEarningLimit);
Assert.Equal(100, AccessCatalog.DayPassCreditCost);
}
[Theory]
[InlineData("access_day_1", 100, AccessGrant.DayToken)]
[InlineData("access_week_1", 500, AccessGrant.WeekToken)]
[InlineData("access_month_1", 2000, AccessGrant.MonthToken)]
[InlineData("exam_token_1", 199, AccessGrant.ExamToken)]
[InlineData("qbank_reset_1", 499, AccessGrant.ResetToken)]
public void Products_HaveServerControlledPrices(string sku, long cents, string grant)
{
var product = AccessCatalog.Products[sku];
Assert.Equal(cents, product.AmountCents);
Assert.Equal("usd", product.Currency);
Assert.Equal(grant, product.Grant);
}
}