public void AssertPickUpSystemUIEFactoryCreateItemIconIsCalled(IItemIcon ii, IPickUpSystemUIElementFactory factory, bool expectedToReceive)
    {
        IItemIcon leftoverII = Substitute.For <IItemIcon>();

        factory.CreateItemIcon(ii.GetUIItem()).Returns(leftoverII);
        if (expectedToReceive)
        {
            factory.Received(1).CreateItemIcon(ii.GetUIItem());
        }
        else
        {
            factory.DidNotReceive().CreateItemIcon(ii.GetUIItem());
        }
    }
        public void ReceiveSpotTransfer(IItemIcon transferringII)
        {
            IUIItem addedItem  = transferringII.GetUIItem();
            int     destSlotID = GetProspectiveSlotID(addedItem);

            AddIIAndMutate(addedItem, destSlotID);
        }
    public ItemIconPickUpImplementor CreateIIPUImplementor(int transferableQuantity, int itemQuantity, int pickUpStepQuantity, out IItemIcon ii, out IItemIconTransactionManager iiTAM, out IPickUpSystemUIElementFactory uieFactory)
    {
        IItemIcon thisII = Substitute.For <IItemIcon>();

        thisII.GetUIImage().Returns(Substitute.For <IUIImage>());
        IItemTemplate itemTemp = Substitute.For <IItemTemplate>();

        itemTemp.GetPickUpStepQuantity().Returns(pickUpStepQuantity);
        // thisII.GetItemTemplate().Returns(itemTemp);
        IUIItem item = Substitute.For <IUIItem>();

        item.GetItemTemplate().Returns(itemTemp);
        thisII.GetUIItem().Returns(item);
        thisII.GetTransferableQuantity().Returns(transferableQuantity);
        thisII.GetItemQuantity().Returns(itemQuantity);
        thisII.GetIconGroup().Returns(Substitute.For <IIconGroup>());
        IItemIconTransactionManager   thisIITAM      = Substitute.For <IItemIconTransactionManager>();
        IPickUpSystemUIElementFactory thisUIEFactory = Substitute.For <IPickUpSystemUIElementFactory>();
        ItemIconPickUpImplementor     implementor    = new ItemIconPickUpImplementor(thisIITAM, thisUIEFactory);

        implementor.SetItemIcon(thisII);
        ii         = thisII;
        iiTAM      = thisIITAM;
        uieFactory = thisUIEFactory;
        return(implementor);
    }
    public List <IItemIcon> CreateStubItemIconsWithItemTempsMatchingAt(int[] quantities, int[] sameAt, IItemTemplate sourceItemTemp)
    {
        List <IItemIcon> result = new List <IItemIcon>();
        int index = -1;

        foreach (int i in quantities)
        {
            index++;
            IItemIcon ii      = Substitute.For <IItemIcon>();
            IUIItem   tarItem = Substitute.For <IUIItem>();
            if (i == -1)
            {
                ii.IsEmpty().Returns(true);
                ii.GetUIItem().Returns((IUIItem)null);
                ii.GetItemTemplate().Returns((IItemTemplate)null);
            }
            else
            {
                ii.IsEmpty().Returns(false);
                tarItem.GetQuantity().Returns(i);
                IItemTemplate tarItemTemp = Substitute.For <IItemTemplate>();
                tarItem.GetItemTemplate().Returns(tarItemTemp);
                bool contained = false;
                foreach (int j in sameAt)
                {
                    if (j == index)
                    {
                        contained = true;
                    }
                }
                if (contained)
                {
                    tarItemTemp.IsSameAs(sourceItemTemp).Returns(true);
                }
                else
                {
                    tarItemTemp.IsSameAs(sourceItemTemp).Returns(false);
                }
                ii.GetUIItem().Returns(tarItem);
                ii.GetItemTemplate().Returns(tarItemTemp);
            }
            result.Add(ii);
        }
        return(result);
    }
Exemple #5
0
    List <IItemIcon> CreateStubIIsWithItemQuantity(int size, int quantInIG, IUIItem item)
    {
        List <IItemIcon> result = new List <IItemIcon>();

        for (int i = 0; i < size; i++)
        {
            result.Add(Substitute.For <IItemIcon>());
        }
        if (quantInIG != 0)
        {
            IItemIcon firstOne = result[0];
            IUIItem   sameItem = Substitute.For <IUIItem>();
            sameItem.IsSameAs(item).Returns(true);
            sameItem.GetQuantity().Returns(quantInIG);
            firstOne.GetUIItem().Returns(sameItem);
        }
        return(result);
    }
        public void ReceiveTravelTransfer(IItemIcon immigratingII)
        {
            int destSlotID = GetProspectiveSlotID(immigratingII.GetUIItem());

            this.ReceiveTravelTransferAt(immigratingII, destSlotID);
        }