using Content.Server.Cargo.Systems;
using Content.Server.Nutrition.Components;
using Content.Server.Nutrition.EntitySystems;
+using Content.Shared.Body.Components;
using Content.Shared.Cargo.Prototypes;
+using Content.Shared.Mobs.Components;
using Content.Shared.Prototypes;
using Content.Shared.Stacks;
using Content.Shared.Whitelist;
await pair.CleanReturnAsync();
}
+
+ [Test]
+ public async Task MobPrice()
+ {
+ await using var pair = await PoolManager.GetServerClient();
+
+ var componentFactory = pair.Server.ResolveDependency<IComponentFactory>();
+
+ await pair.Server.WaitAssertion(() =>
+ {
+ Assert.Multiple(() =>
+ {
+ foreach (var (proto, comp) in pair.GetPrototypesWithComponent<MobPriceComponent>())
+ {
+ Assert.That(proto.TryGetComponent<BodyComponent>(out _, componentFactory), $"Found MobPriceComponent on {proto.ID}, but no BodyComponent!");
+ Assert.That(proto.TryGetComponent<MobStateComponent>(out _, componentFactory), $"Found MobPriceComponent on {proto.ID}, but no MobStateComponent!");
+ }
+ });
+ });
+
+ await pair.CleanReturnAsync();
+ }
}