• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

CyclopsMC / CommonCapabilities / #479006786

18 Mar 2025 04:54PM UTC coverage: 38.452% (-1.6%) from 40.018%
#479006786

push

github

rubensworks
Add entity item and item frame game tests

0 of 93 new or added lines in 3 files covered. (0.0%)

914 of 2377 relevant lines covered (38.45%)

0.38 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

0.0
/src/main/java/org/cyclops/commoncapabilities/gametest/GameTestsVanillaCapabilitiesEntityItem.java
1
package org.cyclops.commoncapabilities.gametest;
2

3
import net.minecraft.core.BlockPos;
4
import net.minecraft.core.Direction;
5
import net.minecraft.gametest.framework.GameTest;
6
import net.minecraft.gametest.framework.GameTestHelper;
7
import net.minecraft.world.entity.item.ItemEntity;
8
import net.minecraft.world.item.ItemStack;
9
import net.minecraft.world.item.Items;
10
import net.minecraft.world.level.material.Fluids;
11
import net.neoforged.neoforge.capabilities.Capabilities;
12
import net.neoforged.neoforge.fluids.FluidStack;
13
import net.neoforged.neoforge.fluids.capability.IFluidHandler;
14
import net.neoforged.neoforge.gametest.GameTestHolder;
15
import net.neoforged.neoforge.gametest.PrefixGameTestTemplate;
16
import net.neoforged.neoforge.items.IItemHandler;
17
import org.cyclops.commoncapabilities.Reference;
18

19
/**
20
 * @author rubensworks
21
 */
22
@GameTestHolder(Reference.MOD_ID)
23
@PrefixGameTestTemplate(false)
NEW
24
public class GameTestsVanillaCapabilitiesEntityItem {
×
25

26
    public static final String TEMPLATE_EMPTY = "empty10";
NEW
27
    public static final BlockPos POS = BlockPos.ZERO.offset(2, 1, 2);
×
28

29
    @GameTest(template = TEMPLATE_EMPTY)
30
    public void testEntityItemCapItemShulkerboxAdd(GameTestHelper helper) {
31
        // Spawn shulker box item entity
NEW
32
        ItemEntity entity = helper.spawnItem(Items.SHULKER_BOX, POS);
×
33

34
        // Add item to shulker box
NEW
35
        IItemHandler itemHandler = entity.getCapability(Capabilities.ItemHandler.ENTITY);
×
NEW
36
        ItemStack remaining = itemHandler.insertItem(0, new ItemStack(Items.APPLE), false);
×
37

NEW
38
        helper.succeedIf(() -> {
×
NEW
39
            helper.assertTrue(remaining.isEmpty(), "Remaining of insertion is not empty");
×
NEW
40
            helper.assertTrue(itemHandler.getStackInSlot(0).getItem() == Items.APPLE, "Item was not added");
×
NEW
41
        });
×
NEW
42
    }
×
43

44
    @GameTest(template = TEMPLATE_EMPTY)
45
    public void testEntityItemCapItemShulkerboxRemove(GameTestHelper helper) {
46
        // Spawn shulker box item entity
NEW
47
        ItemEntity entity = helper.spawnItem(Items.SHULKER_BOX, POS);
×
48

49
        // Remove item from shulker box
NEW
50
        IItemHandler itemHandler = entity.getCapability(Capabilities.ItemHandler.ENTITY);
×
NEW
51
        itemHandler.insertItem(0, new ItemStack(Items.APPLE), false);
×
NEW
52
        ItemStack removed = itemHandler.extractItem(0, 1, false);
×
53

NEW
54
        helper.succeedIf(() -> {
×
NEW
55
            helper.assertTrue(!removed.isEmpty(), "Removed item is empty");
×
NEW
56
            helper.assertTrue(itemHandler.getStackInSlot(0).isEmpty(), "Item was not removed");
×
NEW
57
        });
×
NEW
58
    }
×
59

60
    @GameTest(template = TEMPLATE_EMPTY)
61
    public void testEntityItemCapFluidBucketAdd(GameTestHelper helper) {
62
        // Spawn bucket item entity
NEW
63
        ItemEntity entity = helper.spawnItem(Items.BUCKET, POS);
×
64

65
        // Add fluid to bucket
NEW
66
        IFluidHandler fluidHandler = entity.getCapability(Capabilities.FluidHandler.ENTITY, Direction.UP);
×
NEW
67
        int filled = fluidHandler.fill(new FluidStack(Fluids.WATER, 1000), IFluidHandler.FluidAction.EXECUTE);
×
68

NEW
69
        helper.succeedIf(() -> {
×
NEW
70
            helper.assertTrue(filled == 1000, "Insertion was not 1000");
×
NEW
71
            helper.assertTrue(fluidHandler.getFluidInTank(0).getAmount() == 1000, "Fluid was not added");
×
NEW
72
        });
×
NEW
73
    }
×
74

75
    @GameTest(template = TEMPLATE_EMPTY)
76
    public void testEntityItemCapFluidBucketRemove(GameTestHelper helper) {
77
        // Spawn water bucket item entity
NEW
78
        ItemEntity entity = helper.spawnItem(Items.WATER_BUCKET, POS);
×
79

80
        // Remove water from bucket
NEW
81
        IFluidHandler fluidHandler = entity.getCapability(Capabilities.FluidHandler.ENTITY, Direction.UP);
×
NEW
82
        fluidHandler.fill(new FluidStack(Fluids.WATER, 1000), IFluidHandler.FluidAction.EXECUTE);
×
NEW
83
        FluidStack drained = fluidHandler.drain(new FluidStack(Fluids.WATER, 1000), IFluidHandler.FluidAction.EXECUTE);
×
84

NEW
85
        helper.succeedIf(() -> {
×
NEW
86
            helper.assertTrue(drained.getAmount() == 1000, "Removal was not 1000");
×
NEW
87
            helper.assertTrue(fluidHandler.getFluidInTank(0).isEmpty(), "Fluid was not removed");
×
NEW
88
        });
×
NEW
89
    }
×
90

91
}
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc