Esempio n. 1
0
        public void RecalcCostsTest()
        {
            int newUserId = (int)Instance.identities.allianceId.getNext();

            Assert.IsTrue(SpacegameServer.Core.User.registerUser(newUserId));
            User user = Instance.users[newUserId];

            //Ecosystem adaption (needs Base research)
            Research research = Core.Instance.Researchs[9];

            research.baseCost = 10;
            research.cost     = 10;

            research.RecalcCosts();
            Assert.AreEqual(10, research.cost, "Research cost did change, although no user has researched it...");

            //add a colony to the user, so that he has some population (which is needed to calc research spread)
            Ship                target    = Instance.ships.First(ship => ship.Value.userid == user.id).Value;
            PrivateObject       obj       = new PrivateObject(target);
            List <Ship>         ships     = new List <Ship>();
            Colony              newColony = null;
            SolarSystemInstance planet    = Instance.planets.First(colonizable => colonizable.Value.systemid == target.systemid &&
                                                                   (colonizable.Value.objectid == 24 ||
                                                                    colonizable.Value.objectid == 25 ||
                                                                    colonizable.Value.objectid == 26)).Value;
            var retVal = obj.Invoke("createMajorColony", user, "ColonyName", ships, newColony, planet);

            research.RecalcCosts();
            Assert.AreEqual(10, research.cost, "Research cost did change, although no user has researched it...");


            UserResearch ResearchDone = new UserResearch(newUserId, research.id);

            ResearchDone.isCompleted = 1;
            user.PlayerResearch.Add(ResearchDone);
            research.RecalcCosts();
            Assert.AreNotEqual(10, research.cost, "Research cost did change, although no user has researched it...");
        }
Esempio n. 2
0
        public static UserResearch mockUserResearch(int userId = userId, short researchid = researchid)
        {
            UserResearch userResearch = new UserResearch(userId, researchid);

            return(userResearch);
        }