32 lines
1.1 KiB
C#
32 lines
1.1 KiB
C#
using BlueLaminate.Core.Tradeups;
|
|
using Xunit;
|
|
|
|
namespace BlueLaminate.Tests.Tradeups;
|
|
|
|
public class WearBandTests
|
|
{
|
|
[Theory]
|
|
[InlineData(0.00, WearBand.FactoryNew)]
|
|
[InlineData(0.0699, WearBand.FactoryNew)]
|
|
[InlineData(0.07, WearBand.MinimalWear)] // boundary is upper-exclusive
|
|
[InlineData(0.1499, WearBand.MinimalWear)]
|
|
[InlineData(0.15, WearBand.FieldTested)]
|
|
[InlineData(0.3799, WearBand.FieldTested)]
|
|
[InlineData(0.38, WearBand.WellWorn)]
|
|
[InlineData(0.4499, WearBand.WellWorn)]
|
|
[InlineData(0.45, WearBand.BattleScarred)]
|
|
[InlineData(1.00, WearBand.BattleScarred)]
|
|
public void FromFloat_classifies_on_absolute_thresholds(double value, WearBand expected)
|
|
{
|
|
Assert.Equal(expected, WearBands.FromFloat((decimal)value));
|
|
}
|
|
|
|
[Fact]
|
|
public void ToName_matches_listing_wear_strings()
|
|
{
|
|
Assert.Equal("Factory New", WearBand.FactoryNew.ToName());
|
|
Assert.Equal("Field-Tested", WearBand.FieldTested.ToName());
|
|
Assert.Equal("Battle-Scarred", WearBand.BattleScarred.ToName());
|
|
}
|
|
}
|