Exemplo n.º 1
0
        public void StoreTransferredByteCountCollection()
        {
            var appId = Guid.NewGuid();
            var core  = new LogCore();

            var random = new Random();
            var count  = random.Next(15);
            var data   = new TestData()
            {
                BoolTest     = true,
                DateTimeTest = DateTime.UtcNow,
                IntTest      = random.Next()
            };
            int dataCost = DataCostCalculator.Calculate(data);

            var items = new List <TestData>(count);

            for (int i = 0; i < count; i++)
            {
                items.Add(data);
            }

            core.StoreByteCount(appId, DataCostType.Ingress, items);

            var source = new LogCore();
            var stored = source.SelectBytesStored(appId);

            Assert.IsNotNull(stored, "Should have 1 stored item.");
            Assert.AreEqual <int>(1, stored.Count(), "Should only have 1 stored item matching uniqu app id.");
            var item = stored.FirstOrDefault();

            Assert.AreEqual <Guid>(appId, item.ApplicationId, "Application Id should be what was sent in.");
            Assert.AreEqual <string>(items.GetType().ToString(), item.ObjectType, "Object type should be same as this object.");
            Assert.AreEqual <int>(dataCost * count, item.Bytes);
        }
Exemplo n.º 2
0
        public void StoreByteCount(Guid applicationId, DataCostType costType, ICollection data)
        {
            Contract.Requires <ArgumentOutOfRangeException>(Guid.Empty != applicationId);

            Contract.Requires <ArgumentNullException>(null != data);

            var stored = new BytesStoredData(applicationId)
            {
                ObjectType   = data.GetType().ToString(),
                Bytes        = DataCostCalculator.Calculate(data),
                DataCostType = (int)costType
            };

            this.bytesTable.AddEntity(stored);
        }
        public void StorageCost()
        {
            var random = new Random();
            var data   = new TestData()
            {
                BoolTest     = true,
                DateTimeTest = DateTime.UtcNow,
                IntTest      = random.Next(),
                PartitionKey = Guid.NewGuid().ToString(),
                RowKey       = Guid.NewGuid().ToString()
            };

            var length = DataCostCalculator.RawDataLength(data);

            Assert.AreEqual <int>(165, length, "Property values should match.");
        }
        public void Calculate()
        {
            var random = new Random();
            var data   = new TestData()
            {
                BoolTest     = true,
                DateTimeTest = DateTime.UtcNow,
                IntTest      = random.Next(),
                PartitionKey = Guid.NewGuid().ToString(),
                RowKey       = Guid.NewGuid().ToString()
            };

            int storageCost = DataCostCalculator.RawDataLength(data);
            int overhead    = DataCostCalculator.Overhead(new TestData().GetType());

            Assert.AreEqual <int>(storageCost + overhead, DataCostCalculator.Calculate(data), "Data sizing should match up.");
        }
        public void CalculateList()
        {
            var random = new Random();
            var data   = new TestData()
            {
                BoolTest     = true,
                DateTimeTest = DateTime.UtcNow,
                IntTest      = random.Next(),
                PartitionKey = Guid.NewGuid().ToString(),
                RowKey       = Guid.NewGuid().ToString()
            };
            int dataCost = DataCostCalculator.Calculate(data);

            var count = random.Next(15);
            var items = new List <TestData>(count);

            for (int i = 0; i < count; i++)
            {
                items.Add(data);
            }

            Assert.AreEqual <int>(dataCost * count, DataCostCalculator.Calculate(items));
        }
        public void Overhead()
        {
            var length = DataCostCalculator.Overhead(new TestData().GetType());

            Assert.AreEqual <int>(108, length, "Property Names should match overhead.");
        }
 public void CalculateStorageCost()
 {
     DataCostCalculator.RawDataLength(null);
 }
 public void CalculateOverheadNull()
 {
     DataCostCalculator.Overhead(null);
 }
 public void CalculateICollectionNull()
 {
     DataCostCalculator.Calculate((ICollection)null);
 }
 public void CalculateNull()
 {
     DataCostCalculator.Calculate(null);
 }