public StarshipOverride mapToEntityWithValues(Starship starship, int distance)
        {
            StarshipOverride starshipOverride = new StarshipOverride();

            starshipOverride.name        = starship.name;
            starshipOverride.mglt        = starship.mglt;
            starshipOverride.consumables = starship.consumables;


            if (canBeCalculated(starship))
            {
                double consumablesInHours = convertConsumablesToHours(starship.consumables);
                int    mglt = parseMGLT(starship.mglt);

                if (consumablesInHours > 0 && mglt > 0)
                {
                    starshipOverride.consumablesInHours = consumablesInHours;
                    starshipOverride.necessaryResupply  = Math.Floor(distance / (mglt * consumablesInHours));

                    starshipOverride.necessaryResupplyString = starshipOverride.necessaryResupply.ToString();
                }
                else //Means it can't calculate how long until next stop.
                {
                    starshipOverride.necessaryResupplyString = BadDataResponse;
                }
            }
            else
            {
                starshipOverride.necessaryResupplyString = BadDataResponse;
            }

            return(starshipOverride);
        }
Esempio n. 2
0
        public void _15DaysResupplyTest()
        {
            //distance = 1,000,000
            int              distance    = 1000000;
            Starship         starship    = returnStartshipObject("FakeInDays", "120", "15 days");
            StarshipOverride calculation = returnCalculations(starship, distance);

            Assert.AreEqual("23", calculation.necessaryResupplyString);
        }
Esempio n. 3
0
        public void _WrongConsumablesTest()
        {
            //distance = 1,000,000
            int              distance    = 1000000;
            Starship         starship    = returnStartshipObject("FakeShip", "5", "4 fortnights");
            StarshipOverride calculation = returnCalculations(starship, distance);

            Assert.AreEqual(helper.BadDataResponse, calculation.necessaryResupplyString);
        }
Esempio n. 4
0
        public void _ZeroMGLTResupplyTest()
        {
            //distance = 1,000,000
            int              distance    = 1000000;
            Starship         starship    = returnStartshipObject("FakeShip", "0", "3 Years");
            StarshipOverride calculation = returnCalculations(starship, distance);

            Assert.AreEqual(helper.BadDataResponse, calculation.necessaryResupplyString);
        }
Esempio n. 5
0
        public void _1YearResupplyTest()
        {
            //distance = 1,000,000
            int              distance    = 1000000;
            Starship         starship    = returnStartshipObject("FakeInYear", "8", "1 year");
            StarshipOverride calculation = returnCalculations(starship, distance);

            Assert.AreEqual("14", calculation.necessaryResupplyString);
        }
Esempio n. 6
0
        public void _1MonthResupplyTest()
        {
            //distance = 1,000,000
            int              distance    = 1000000;
            Starship         starship    = returnStartshipObject("FakeInMonth", "60", "1 Month");
            StarshipOverride calculation = returnCalculations(starship, distance);

            Assert.AreEqual("22", calculation.necessaryResupplyString);
        }
Esempio n. 7
0
        public void RebelTransportTest()
        {
            //distance = 1,000,000

            /*
             * {
             * "name": "Rebel transport",
             * "consumables": "6 months",
             * "MGLT": "20",
             * },
             */
            int              distance    = 1000000;
            Starship         starship    = returnStartshipObject("Rebel transport", "20", "6 months");
            StarshipOverride calculation = returnCalculations(starship, distance);

            Assert.AreEqual("11", calculation.necessaryResupplyString);
        }
Esempio n. 8
0
        public void YwingTest()
        {
            //distance = 1,000,000

            /*
             * {
             * "name": "Y-Wing",
             * "consumables": "1 week",
             * "MGLT": "80",
             * },
             */
            int              distance    = 1000000;
            Starship         starship    = returnStartshipObject("Y-wing", "80", "1 week");
            StarshipOverride calculation = returnCalculations(starship, distance);

            Assert.AreEqual("74", calculation.necessaryResupplyString);
        }
Esempio n. 9
0
        public void MilleniumFalconTest()
        {
            //distance = 1,000,000

            /*
             * {
             * "name": "Millennium Falcon",
             * "consumables": "2 months",
             * "MGLT": "75",
             * },
             */
            int              distance    = 1000000;
            Starship         starship    = returnStartshipObject("Millennium Falcon", "75", "2 months");
            StarshipOverride calculation = returnCalculations(starship, distance);

            Assert.AreEqual("9", calculation.necessaryResupplyString);
        }