test(objects): skip weapon-itemID assertion when TileData is absent
ExtractLean clamps itemID > TileData.MaxItemValue to 1; MaxItemValue is 0 when tiledata.mul is missing (CI), so Katana's 0x13FF only survives with client data. Guard with [SkippableFact] + TileDataRequirement.SkipIfMissing() like other data-dependent tests. The hue/cliloc assertion needs no data and stays a [Fact]. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
parent
bff08c69d2
commit
1b8aff6b71
1 changed files with 6 additions and 1 deletions
|
|
@ -1,5 +1,6 @@
|
|||
using Server.Commands;
|
||||
using Server.Items;
|
||||
using Server.Tests;
|
||||
using Xunit;
|
||||
|
||||
namespace UOContent.Tests.Commands.Objects;
|
||||
|
|
@ -7,9 +8,13 @@ namespace UOContent.Tests.Commands.Objects;
|
|||
[Collection("Sequential UOContent Tests")]
|
||||
public class ObjectIntrospectionLeanTests
|
||||
{
|
||||
[Fact]
|
||||
[SkippableFact]
|
||||
public void ExtractLean_reads_item_id_from_a_weapon()
|
||||
{
|
||||
// Requires client TileData: ExtractLean clamps itemID > TileData.MaxItemValue to 1, and
|
||||
// MaxItemValue is 0 when tiledata.mul is absent (CI), so the real 0x13FF only survives with data.
|
||||
TileDataRequirement.SkipIfMissing();
|
||||
|
||||
// Katana ctor is base(0x13FF) — era-independent.
|
||||
var lean = ObjectIntrospection.ExtractLean(typeof(Katana));
|
||||
Assert.Equal(0x13FF, lean.ItemID);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue