Пример #1
0
        public void Render_WithAttackFocusAndDifferentWidth_RendersCorrectly()
        {
            var mockUIStateTracker = new MockUIStateTracker
            {
                CommandFocusNumber = 1
            };
            var commandPanel = new CommandPanel(mockUIStateTracker)
            {
                MaxWidth = 20
            };
            List <string> expected = new List <string>()
            {
                "╔═══════════════════",
                "║ ► Attack         │",
                "║                  │",
                "║   Spells         │",
                "║                  │",
                "║   Skills         │",
                "║                  │",
                "║   Items          │",
                "║                  │",
                "║   Status         │",
                "║                  │",
                "║   Wait           │",
                "║                  │",
                "║   Run            │",
                "║                  │",
                "╚═══════════════════"
            };

            var actual       = commandPanel.Render();
            var actualAsList = new List <string>(actual);

            CollectionAssert.AreEqual(expected, actualAsList);
        }
Пример #2
0
        public void Render_WithSkillsFocus_RendersCorrectly()
        {
            var mockUIStateTracker = new MockUIStateTracker();
            var commandPanel       = new CommandPanel(mockUIStateTracker);

            commandPanel.FocusNumber = 3;

            List <string> expected = new List <string>()
            {
                "╔════════════════",
                "║   Attack      │",
                "║               │",
                "║   Spells      │",
                "║               │",
                "║ ► Skills      │",
                "║               │",
                "║   Items       │",
                "║               │",
                "║   Status      │",
                "║               │",
                "║   Wait        │",
                "║               │",
                "║   Run         │",
                "║               │",
                "╚════════════════"
            };

            var actual       = commandPanel.Render();
            var actualAsList = new List <string>(actual);

            CollectionAssert.AreEqual(expected, actualAsList);
        }
Пример #3
0
        public void Render_WithTargets_RendersTargets()
        {
            var mockUIStateTracker = new MockUIStateTracker()
            {
                CurrentTargetPositions = new List <int>()
                {
                    2, 4, 5, 6, 8
                },
                CurrentTargetPosition = 1
            };
            var uiCharacterManager = new UICharacterManager();
            var formationPanel     = new FormationPanel(mockUIStateTracker, uiCharacterManager);

            formationPanel.IsActive = true;

            var expected = new List <string>()
            {
                "                                                                                                                       ",
                "                                                                                                                       ",
                "                                                                                                                       ",
                "                                                                                                                       ",
                "                                                                                                                       ",
                "                                                                                                                       ",
                "                                                                                                                       ",
                "            ┌─┐            ┌─┐            ┌─┐                              ┌─┐            ┌─┐            ┌─┐           ",
                "            │ │            │ │            │ │                              │ │            │ │            │ │           ",
                "            └─┘            └─┘            └─┘                              └─┘            └─┘            └─┘           ",
                "                            ▲                                                                                          ",
                "                                                                                                                       ",
                "                                                                                                                       ",
                "                                                                                                                       ",
                "                                                                                                                       ",
                "            ┌─┐            ┌─┐            ┌─┐                              ┌─┐            ┌─┐            ┌─┐           ",
                "            │ │            │ │            │ │                              │ │            │ │            │ │           ",
                "            └─┘            └─┘            └─┘                              └─┘            └─┘            └─┘           ",
                "             ▲              ▲              ▲                                                                           ",
                "                                                                                                                       ",
                "                                                                                                                       ",
                "                                                                                                                       ",
                "                                                                                                                       ",
                "            ┌─┐            ┌─┐            ┌─┐                              ┌─┐            ┌─┐            ┌─┐           ",
                "            │ │            │ │            │ │                              │ │            │ │            │ │           ",
                "            └─┘            └─┘            └─┘                              └─┘            └─┘            └─┘           ",
                "                            ▲                                                                                          ",
                "                                                                                                                       ",
                "                                                                                                                       ",
                "                                                                                                                       ",
                "                                                                                                                       "
            };

            var actual = new List <string>(formationPanel.Render());

            CollectionAssert.AreEqual(expected, actual);
        }
Пример #4
0
        public void Render_WithPositionsTwoFiveAndActiveId_RendersActiveBox()
        {
            var mockUIStateTracker = new MockUIStateTracker();
            var uiCharacterManager = new UICharacterManager
            {
                Characters = new List <DisplayCharacter>()
                {
                    new DisplayCharacter()
                    {
                        Id            = 1,
                        Name          = "",
                        Symbol        = 'A',
                        Position      = 2,
                        CurrentHealth = 100,
                        MaxHealth     = 100
                    },
                    new DisplayCharacter()
                    {
                        Id            = 2,
                        Name          = "",
                        Symbol        = 'B',
                        Position      = 5,
                        CurrentHealth = 100,
                        MaxHealth     = 100
                    }
                }
            };
            var formationPanel = new FormationPanel(mockUIStateTracker, uiCharacterManager);

            mockUIStateTracker.CurrentTargetPosition = 1;
            mockUIStateTracker.ActiveCharacterId     = 1;
            mockUIStateTracker.IsInFormationPanel    = false;

            var expected = new List <string>()
            {
                "                                                                                                                       ",
                "                                                                                                                       ",
                "                                                                                                                       ",
                "                                                                                                                       ",
                "                                                                                                                       ",
                "                         │■■■■■│                                                                                       ",
                "                                                                                                                       ",
                "            ┌─┐            ╔═╗            ┌─┐                              ┌─┐            ┌─┐            ┌─┐           ",
                "            │ │            ║A║            │ │                              │ │            │ │            │ │           ",
                "            └─┘            ╚═╝            └─┘                              └─┘            └─┘            └─┘           ",
                "                                                                                                                       ",
                "                                                                                                                       ",
                "                                                                                                                       ",
                "                         │■■■■■│                                                                                       ",
                "                                                                                                                       ",
                "            ┌─┐            ┌─┐            ┌─┐                              ┌─┐            ┌─┐            ┌─┐           ",
                "            │ │            │B│            │ │                              │ │            │ │            │ │           ",
                "            └─┘            └─┘            └─┘                              └─┘            └─┘            └─┘           ",
                "                                                                                                                       ",
                "                                                                                                                       ",
                "                                                                                                                       ",
                "                                                                                                                       ",
                "                                                                                                                       ",
                "            ┌─┐            ┌─┐            ┌─┐                              ┌─┐            ┌─┐            ┌─┐           ",
                "            │ │            │ │            │ │                              │ │            │ │            │ │           ",
                "            └─┘            └─┘            └─┘                              └─┘            └─┘            └─┘           ",
                "                                                                                                                       ",
                "                                                                                                                       ",
                "                                                                                                                       ",
                "                                                                                                                       ",
                "                                                                                                                       "
            };

            var actual = new List <string>(formationPanel.Render());

            CollectionAssert.AreEqual(expected, actual);
        }
Пример #5
0
        public void Render_WithPositionsSixNineElevenFourteen_RendersSymbols()
        {
            var mockUIStateTracker = new MockUIStateTracker();
            var uiCharacterManager = new UICharacterManager
            {
                Characters = new List <DisplayCharacter>()
                {
                    new DisplayCharacter()
                    {
                        Id            = 1,
                        Name          = "",
                        Symbol        = 'A',
                        Position      = 6,
                        CurrentHealth = 100,
                        MaxHealth     = 100
                    },
                    new DisplayCharacter()
                    {
                        Id            = 2,
                        Name          = "",
                        Symbol        = 'B',
                        Position      = 9,
                        CurrentHealth = 100,
                        MaxHealth     = 100
                    },
                    new DisplayCharacter()
                    {
                        Id            = 3,
                        Name          = "",
                        Symbol        = 'C',
                        Position      = 11,
                        CurrentHealth = 100,
                        MaxHealth     = 100
                    },
                    new DisplayCharacter()
                    {
                        Id            = 4,
                        Name          = "",
                        Symbol        = 'D',
                        Position      = 14,
                        CurrentHealth = 100,
                        MaxHealth     = 100
                    }
                }
            };
            var formationPanel = new FormationPanel(mockUIStateTracker, uiCharacterManager);

            mockUIStateTracker.CurrentTargetPosition = 1;
            mockUIStateTracker.ActiveCharacterId     = 0;
            mockUIStateTracker.IsInFormationPanel    = false;

            var expected = new List <string>()
            {
                "                                                                                                                       ",
                "                                                                                                                       ",
                "                                                                                                                       ",
                "                                                                                                                       ",
                "                                                                                                                       ",
                "                                                                                        │■■■■■│                        ",
                "                                                                                                                       ",
                "            ┌─┐            ┌─┐            ┌─┐                              ┌─┐            ┌─┐            ┌─┐           ",
                "            │ │            │ │            │ │                              │ │            │C│            │ │           ",
                "            └─┘            └─┘            └─┘                              └─┘            └─┘            └─┘           ",
                "                                                                                                                       ",
                "                                                                                                                       ",
                "                                                                                                                       ",
                "                                        │■■■■■│                                         │■■■■■│                        ",
                "                                                                                                                       ",
                "            ┌─┐            ┌─┐            ┌─┐                              ┌─┐            ┌─┐            ┌─┐           ",
                "            │ │            │ │            │A│                              │ │            │D│            │ │           ",
                "            └─┘            └─┘            └─┘                              └─┘            └─┘            └─┘           ",
                "                                                                                                                       ",
                "                                                                                                                       ",
                "                                                                                                                       ",
                "                                        │■■■■■│                                                                        ",
                "                                                                                                                       ",
                "            ┌─┐            ┌─┐            ┌─┐                              ┌─┐            ┌─┐            ┌─┐           ",
                "            │ │            │ │            │B│                              │ │            │ │            │ │           ",
                "            └─┘            └─┘            └─┘                              └─┘            └─┘            └─┘           ",
                "                                                                                                                       ",
                "                                                                                                                       ",
                "                                                                                                                       ",
                "                                                                                                                       ",
                "                                                                                                                       "
            };

            var actual = new List <string>(formationPanel.Render());

            CollectionAssert.AreEqual(expected, actual);
        }