public void TestTotalModScore(ModScoreTest testValues)
        {
            var loadout = TestHelper.GetEmptyLoadout();

            loadout.UnitConfiguration.DifficultyLevel = testValues.Diff;
            PopulateFromTestCase(loadout.Mods, testValues);
            Assert.That(loadout.Mods.TotalModScore, Is.EqualTo(testValues.Expected));
        }
        public void TestBaseArmorUpgradeCosts(DifficultyLevel diff, int level, int expected)
        {
            var loadout = TestHelper.GetEmptyLoadout();

            loadout.UnitConfiguration.DifficultyLevel = diff;
            loadout.Upgrades.HealthArmorUpgrade       = level;

            Assert.That(loadout.Upgrades.UpgradesCost, Is.EqualTo(expected));
        }
        public void Taxes(int rp, int modScore, short taxes, int expected)
        {
            var profile = Profile.GetProfile();
            var oldPP   = profile.PerkPoints;

            using (profile.TemporarilyModifyProfile(rp, modScore))
            {
                var loadout = TestHelper.GetEmptyLoadout();
                loadout.Mods.Taxes.CurrentLevel = taxes;
                Assert.That(loadout.RemainingPerkPoints, Is.EqualTo(expected));
            }

            Assert.That(profile.PerkPoints, Is.EqualTo(oldPP));
        }
示例#4
0
        public void TestProposedValues_DontChangeState()
        {
            var loadout = TestHelper.GetEmptyLoadout();

            loadout.CurrentUnit = VUnit.New(UnitType.Striker, loadout);
            loadout.UnitConfiguration.DifficultyLevel = DifficultyLevel.VeryEasy;
            loadout.CurrentUnit.CurrentInfusion       = loadout.CurrentUnit.MaximumInfusion;
            loadout.CurrentUnit.CurrentKills          = loadout.CurrentUnit.MaximumKills;

            var oldDamage    = loadout.Stats.Damage;
            var oldToughness = loadout.Stats.Toughness;
            var perks        = loadout.Perks as PerkCollection;

            foreach (var perk in perks.AllPerks)
            {
                perk.GetIncrementHint(perk.MinimumIncreaseForOptimise);
                Assert.That(loadout.Stats.Damage, Is.EqualTo(oldDamage), $"{perk.Name} Perk permanently modifies damage when getting it's increment hint");
                Assert.That(loadout.Stats.Toughness, Is.EqualTo(oldToughness), $"{perk.Name} Perk permanently modifies toughness when getting it's increment hint");

                perk.GetDecrementHint(perk.MinimumIncreaseForOptimise);
                Assert.That(loadout.Stats.Damage, Is.EqualTo(oldDamage), $"{perk.Name} Perk permanently modifies damage when getting it's decrement hint");
                Assert.That(loadout.Stats.Toughness, Is.EqualTo(oldToughness), $"{perk.Name} Perk permanently modifies toughness when getting it's decrement hint");
            }
        }