示例#1
0
        public void MockBot_ChangeHeadingSendsTurnMessage()
        {
            var mbf = new MockBotFactory().CreateBasicMockBot().WithMockActionProvider();
            var sut = mbf.ToBot();

            sut.ChangeHeading(15);
            Assert.True(mbf.MockActionProviderUsed.LastHeadingChangeValue == 15, "The engine should recieve a 15 degree change value");
        }
示例#2
0
        public void MockBot_SetDirectionToPoint_CalculatesSimpleCorrectly()
        {
            var mbf = new MockBotFactory().CreateBasicMockBot().WithMockActionProvider();
            var sut = mbf.ToBot();

            sut.HeadToPoint(new Point(2, 2));
            Assert.Equal(45, mbf.MockActionProviderUsed.LastHeadingChangeValue);
        }
示例#3
0
        public void MockBot_DecellerateSendsDecelerateMessage()
        {
            var fac = new MockBotFactory().CreateBasicMockBot().WithMockActionProvider();
            var sut = fac.ToBot();

            sut.Decelerate();
            Assert.True(fac.MockActionProviderUsed.LastSpeedChangeValue == -1, "The engine should recieve a -1 speed change when accelerate is called");
        }
示例#4
0
        public void MockBot_AccellerateCallsEngineAccelerate()
        {
            var engineHub = new MockBotActionProvider();
            var fac       = new MockBotFactory().CreateBasicMockBot().WithMockActionProvider();
            var sut       = fac.ToBot();

            sut.Accelerate();
            Assert.Equal(1, fac.MockActionProviderUsed.LastSpeedChangeValue);
        }
示例#5
0
        public void Equipment_InstallTurret_AddsToTurretCount()
        {
            var mbf = new MockBotFactory().CreateBasicMockBot().WithMockActionProvider().WithItemSupport();
            var sut = mbf.ToBot();

            var          map        = mbf.MockActionProviderUsed;
            BasicMockBot bmb        = (BasicMockBot)sut;
            int          preInstall = map.Mock_GetEquipmentCountAtPosition(MountPoint.Turret);

            var kit = sut.InstallEquipment(KnownEquipmentIds.MOCKINSTALLEVERYWHERE, "Teste Equipment1", MountPoint.Turret);

            int postInstall = map.Mock_GetEquipmentCountAtPosition(MountPoint.Turret);

            Assert.Equal(preInstall + 1, postInstall);
        }
示例#6
0
        public void Equipment_UseByName_UsesSameItem()
        {
            var fac = new MockBotFactory().CreateBasicMockBot().WithItemSupport().WithMockActionProvider();
            var sut = fac.ToBot();
            var ai  = sut.InstallEquipment(KnownEquipmentIds.MOCKINSTALLEVERYWHERE, "DummyUseEquipment1", MountPoint.Internal);

            Assert.True(ai.Result == InstallationResult.Installed, "The prerequisite for this test is that the equipment installs");
            var result = sut.UseEquipment(ai.InstanceId);

            result = sut.UseEquipment("DummyUseEquipment1");
            int ae = fac.MockActionProviderUsed.Mock_GetEquipmentUseCount(ai.InstanceId);

            Assert.True(result.State == UsageEndState.Success, "The usage must be a success");
            Assert.Equal(2, ae);
        }
        public void Bot_FireWeaponPassesScanResultAsIParam()
        {
            Guid weaponGuid = Guid.Empty;

            var mbf = new MockBotFactory().CreateBasicMockBot().WithItemSupport().WithMockActionProvider().WithItemSupport().WithEquipmentCallback(bb => {
                var ae = bb.InstallEquipment(KnownEquipmentIds.MOCKPROJECTILEWEAPON, "test", MountPoint.Turret);
                Assert.NotNull(ae);
                weaponGuid = ae.InstanceId;
            });
            var sut = mbf.ToBot();
            var eur = sut.FireWeapon(3, "test");

            var eud = mbf.MockActionProviderUsed.Mock_GetMostRecentEUD();
            var ap  = mbf.MockActionProviderUsed.Mock_GetEquipemntByGuid(weaponGuid);


            Assert.Equal(UsageEndState.Success, eur.State);
            Assert.True(eud.IParam == 3);
            Assert.True(eud.InstanceIdentity == weaponGuid);
        }