Exemple #1
0
 public void TestToSISmallTen()
 {
     Assert.AreEqual("125mB", FormatConversion.ToSI(Math.Pow(2, -3), 10, "B", false));
     Assert.AreEqual("15mB", FormatConversion.ToSI(Math.Pow(2, -6), 10, "B", false));
     Assert.AreEqual("1mB", FormatConversion.ToSI(Math.Pow(2, -9), 10, "B", false));
     Assert.AreEqual("1dB", FormatConversion.ToSI(Math.Pow(2, -3), 10, "B", true));
     Assert.AreEqual("1cB", FormatConversion.ToSI(Math.Pow(2, -6), 10, "B", true));
     Assert.AreEqual("1mB", FormatConversion.ToSI(Math.Pow(2, -9), 10, "B", true));
     Assert.AreEqual("244µB", FormatConversion.ToSI(Math.Pow(2, -12), 10, "B", true));
     Assert.AreEqual("30µB", FormatConversion.ToSI(Math.Pow(2, -15), 10, "B", true));
     Assert.AreEqual("3µB", FormatConversion.ToSI(Math.Pow(2, -18), 10, "B", true));
     Assert.AreEqual("476nB", FormatConversion.ToSI(Math.Pow(2, -21), 10, "B", true));
     Assert.AreEqual("59nB", FormatConversion.ToSI(Math.Pow(2, -24), 10, "B", true));
     Assert.AreEqual("7nB", FormatConversion.ToSI(Math.Pow(2, -27), 10, "B", true));
     Assert.AreEqual("931pB", FormatConversion.ToSI(Math.Pow(2, -30), 10, "B", true));
     Assert.AreEqual("14pB", FormatConversion.ToSI(Math.Pow(2, -36), 10, "B", true));
     Assert.AreEqual("1pB", FormatConversion.ToSI(Math.Pow(2, -39), 10, "B", true));
     Assert.AreEqual("227fB", FormatConversion.ToSI(Math.Pow(2, -42), 10, "B", true));
     Assert.AreEqual("28fB", FormatConversion.ToSI(Math.Pow(2, -45), 10, "B", true));
     Assert.AreEqual("3fB", FormatConversion.ToSI(Math.Pow(2, -48), 10, "B", true));
     Assert.AreEqual("444aB", FormatConversion.ToSI(Math.Pow(2, -51), 10, "B", true));
     Assert.AreEqual("55aB", FormatConversion.ToSI(Math.Pow(2, -54), 10, "B", true));
     Assert.AreEqual("6aB", FormatConversion.ToSI(Math.Pow(2, -57), 10, "B", true));
     Assert.AreEqual("867zB", FormatConversion.ToSI(Math.Pow(2, -60), 10, "B", true));
     Assert.AreEqual("13zB", FormatConversion.ToSI(Math.Pow(2, -66), 10, "B", true));
     Assert.AreEqual("1zB", FormatConversion.ToSI(Math.Pow(2, -69), 10, "B", true));
     Assert.AreEqual("211yB", FormatConversion.ToSI(Math.Pow(2, -72), 10, "B", true));
     Assert.AreEqual("26yB", FormatConversion.ToSI(Math.Pow(2, -75), 10, "B", true));
     Assert.AreEqual("3yB", FormatConversion.ToSI(Math.Pow(2, -78), 10, "B", true));
     Assert.AreEqual("-1µB", FormatConversion.ToSI(-Math.Pow(10, -6), 10, "B", false));
     Assert.AreEqual("0B", FormatConversion.ToSI(0, 10, "B", false));
 }
Exemple #2
0
 public void TestToSIBigTen()
 {
     Assert.AreEqual("154YB", FormatConversion.ToSI(Math.Pow(2, 87), 10, "B", true));
     Assert.AreEqual("19YB", FormatConversion.ToSI(Math.Pow(2, 84), 10, "B", true));
     Assert.AreEqual("2YB", FormatConversion.ToSI(Math.Pow(2, 81), 10, "B", true));
     Assert.AreEqual("302ZB", FormatConversion.ToSI(Math.Pow(2, 78), 10, "B", true));
     Assert.AreEqual("37ZB", FormatConversion.ToSI(Math.Pow(2, 75), 10, "B", true));
     Assert.AreEqual("4ZB", FormatConversion.ToSI(Math.Pow(2, 72), 10, "B", true));
     Assert.AreEqual("590EB", FormatConversion.ToSI(Math.Pow(2, 69), 10, "B", true));
     Assert.AreEqual("73EB", FormatConversion.ToSI(Math.Pow(2, 66), 10, "B", true));
     Assert.AreEqual("1EB", FormatConversion.ToSI(Math.Pow(2, 60), 10, "B", true));
     Assert.AreEqual("144PB", FormatConversion.ToSI(Math.Pow(2, 57), 10, "B", true));
     Assert.AreEqual("18PB", FormatConversion.ToSI(Math.Pow(2, 54), 10, "B", true));
     Assert.AreEqual("2PB", FormatConversion.ToSI(Math.Pow(2, 51), 10, "B", true));
     Assert.AreEqual("281TB", FormatConversion.ToSI(Math.Pow(2, 48), 10, "B", true));
     Assert.AreEqual("35TB", FormatConversion.ToSI(Math.Pow(2, 45), 10, "B", true));
     Assert.AreEqual("4TB", FormatConversion.ToSI(Math.Pow(2, 42), 10, "B", true));
     Assert.AreEqual("549GB", FormatConversion.ToSI(Math.Pow(2, 39), 10, "B", true));
     Assert.AreEqual("68GB", FormatConversion.ToSI(Math.Pow(2, 36), 10, "B", true));
     Assert.AreEqual("1GB", FormatConversion.ToSI(Math.Pow(2, 30), 10, "B", true));
     Assert.AreEqual("134MB", FormatConversion.ToSI(Math.Pow(2, 27), 10, "B", true));
     Assert.AreEqual("16MB", FormatConversion.ToSI(Math.Pow(2, 24), 10, "B", true));
     Assert.AreEqual("2MB", FormatConversion.ToSI(Math.Pow(2, 21), 10, "B", true));
     Assert.AreEqual("262kB", FormatConversion.ToSI(Math.Pow(2, 18), 10, "B", true));
     Assert.AreEqual("32kB", FormatConversion.ToSI(Math.Pow(2, 15), 10, "B", true));
     Assert.AreEqual("4kB", FormatConversion.ToSI(Math.Pow(2, 12), 10, "B", true));
     Assert.AreEqual("5hB", FormatConversion.ToSI(Math.Pow(2, 9), 10, "B", true));
     Assert.AreEqual("6daB", FormatConversion.ToSI(Math.Pow(2, 6), 10, "B", true));
     Assert.AreEqual("8B", FormatConversion.ToSI(Math.Pow(2, 3), 10, "B", true));
     Assert.AreEqual("512B", FormatConversion.ToSI(Math.Pow(2, 9), 10, "B", false));
     Assert.AreEqual("64B", FormatConversion.ToSI(Math.Pow(2, 6), 10, "B", false));
     Assert.AreEqual("8B", FormatConversion.ToSI(Math.Pow(2, 3), 10, "B", false));
     Assert.AreEqual("-1kB", FormatConversion.ToSI(-1024, 10, "B", false));
     Assert.AreEqual("0B", FormatConversion.ToSI(0, 10, "B", false));
 }
Exemple #3
0
 public void TestToSIBigTwo()
 {
     Assert.AreEqual("827YiB", FormatConversion.ToSI(Math.Pow(10, 27), 2, "iB", false));
     Assert.AreEqual("82YiB", FormatConversion.ToSI(Math.Pow(10, 26), 2, "iB", false));
     Assert.AreEqual("8YiB", FormatConversion.ToSI(Math.Pow(10, 25), 2, "iB", false));
     Assert.AreEqual("847ZiB", FormatConversion.ToSI(Math.Pow(10, 24), 2, "iB", false));
     Assert.AreEqual("84ZiB", FormatConversion.ToSI(Math.Pow(10, 23), 2, "iB", false));
     Assert.AreEqual("8ZiB", FormatConversion.ToSI(Math.Pow(10, 22), 2, "iB", false));
     Assert.AreEqual("867EiB", FormatConversion.ToSI(Math.Pow(10, 21), 2, "iB", false));
     Assert.AreEqual("86EiB", FormatConversion.ToSI(Math.Pow(10, 20), 2, "iB", false));
     Assert.AreEqual("8EiB", FormatConversion.ToSI(Math.Pow(10, 19), 2, "iB", false));
     Assert.AreEqual("888PiB", FormatConversion.ToSI(Math.Pow(10, 18), 2, "iB", false));
     Assert.AreEqual("88PiB", FormatConversion.ToSI(Math.Pow(10, 17), 2, "iB", false));
     Assert.AreEqual("8PiB", FormatConversion.ToSI(Math.Pow(10, 16), 2, "iB", false));
     Assert.AreEqual("909TiB", FormatConversion.ToSI(Math.Pow(10, 15), 2, "iB", false));
     Assert.AreEqual("90TiB", FormatConversion.ToSI(Math.Pow(10, 14), 2, "iB", false));
     Assert.AreEqual("9TiB", FormatConversion.ToSI(Math.Pow(10, 13), 2, "iB", false));
     Assert.AreEqual("931GiB", FormatConversion.ToSI(Math.Pow(10, 12), 2, "iB", false));
     Assert.AreEqual("93GiB", FormatConversion.ToSI(Math.Pow(10, 11), 2, "iB", false));
     Assert.AreEqual("9GiB", FormatConversion.ToSI(Math.Pow(10, 10), 2, "iB", false));
     Assert.AreEqual("953MiB", FormatConversion.ToSI(Math.Pow(10, 9), 2, "iB", false));
     Assert.AreEqual("95MiB", FormatConversion.ToSI(Math.Pow(10, 8), 2, "iB", false));
     Assert.AreEqual("9MiB", FormatConversion.ToSI(Math.Pow(10, 7), 2, "iB", false));
     Assert.AreEqual("976kiB", FormatConversion.ToSI(Math.Pow(10, 6), 2, "iB", false));
     Assert.AreEqual("97kiB", FormatConversion.ToSI(Math.Pow(10, 5), 2, "iB", false));
     Assert.AreEqual("9kiB", FormatConversion.ToSI(Math.Pow(10, 4), 2, "iB", false));
     Assert.AreEqual("1000B", FormatConversion.ToSI(Math.Pow(10, 3), 2, "B", false));
     Assert.AreEqual("100B", FormatConversion.ToSI(Math.Pow(10, 2), 2, "B", false));
     Assert.AreEqual("10B", FormatConversion.ToSI(Math.Pow(10, 1), 2, "B", false));
     Assert.AreEqual("1B", FormatConversion.ToSI(1, 2, "B", false));
     Assert.AreEqual("-770B", FormatConversion.ToSI(-770, 2, "B", false));
     Assert.AreEqual("0B", FormatConversion.ToSI(0, 2, "B", false));
 }
Exemple #4
0
        /// <summary>
        /// Obtains the most up-to-date statistics on the account's plans.
        /// </summary>
        /// <returns>A list of PlanOverviewViewModel objects that represent the plans associated with the account.</returns>
        public async Task <List <PlanOverviewModel> > GetUpdates()
        {
            List <PlanOverviewModel> updates   = null;
            List <UserPlan>          userPlans = await GetUserPlanList();

            List <ServerBandwidthUsage> bandwidthUsages = await GetBandwidthValues();

            List <ServerDiskUsage> diskUsages = await GetStorageValues();

            if (userPlans != null && bandwidthUsages != null && diskUsages != null)
            {
                updates = new List <PlanOverviewModel>();
                foreach (UserPlan plan in userPlans)
                {
                    DetailedPlan dp = await GetDetailsOnPlan(plan.planID);

                    if (dp == null)
                    {
                        return(null);
                    }

                    PlanOverviewModel povm = new PlanOverviewModel();
                    povm.serverName  = plan.serverName.Substring(0, 1).ToUpper() + plan.serverName.Substring(1);
                    povm.isSuspended = plan.isSuspended;

                    if (plan.isSuspended)
                    {
                        povm.serverName += " (Suspended)";
                    }

                    foreach (ServerBandwidthUsage bwusage in bandwidthUsages)
                    {
                        if (bwusage.acctPlanID == plan.acctPlanID)
                        {
                            String max  = FormatConversion.ToSI((double)dp.bandwidth * 1000000000, 10, "B", false);
                            String used = FormatConversion.ToSI((double)bwusage.externalUpload + (double)bwusage.internalUpload, 10, "B", false);
                            povm.bandwidthUsage = String.Format("Transfer: {0}/{1}", used, max);
                            break;
                        }
                    }

                    foreach (ServerDiskUsage sdusage in diskUsages)
                    {
                        if (sdusage.acctPlanID == plan.acctPlanID)
                        {
                            String max  = FormatConversion.ToSI((double)dp.disk * 1000000000, 10, "B", false);
                            String used = FormatConversion.ToSI((double)sdusage.spaceUsed * 1000, 10, "B", false);
                            povm.storageUsage = String.Format("Storage: {0}/{1}", used, max);
                            break;
                        }
                    }

                    updates.Add(povm);
                }
            }

            return(updates);
        }