Example #1
0
 public TestCacheStats(TestResultStorage testResultStorage, CloudTableClient tableClient)
 {
     _testResultStorage    = testResultStorage;
     _unitTestCounterUtil  = new CounterUtil <UnitTestCounterEntity>(tableClient.GetTableReference(AzureConstants.TableNames.CounterUnitTestQuery));
     _testCacheCounterUtil = new CounterUtil <TestCacheCounterEntity>(tableClient.GetTableReference(AzureConstants.TableNames.CounterTestCache));
     _testRunCounterUtil   = new CounterUtil <TestRunCounterEntity>(tableClient.GetTableReference(AzureConstants.TableNames.CounterTestRun));
 }
Example #2
0
 public TestCacheStats(TestResultStorage testResultStorage, CloudTableClient tableClient)
 {
     _testResultStorage = testResultStorage;
     _unitTestCounterUtil = new CounterUtil<UnitTestCounterEntity>(tableClient.GetTableReference(AzureConstants.TableNames.CounterUnitTestQuery));
     _testCacheCounterUtil = new CounterUtil<TestCacheCounterEntity>(tableClient.GetTableReference(AzureConstants.TableNames.CounterTestCache));
     _testRunCounterUtil = new CounterUtil<TestRunCounterEntity>(tableClient.GetTableReference(AzureConstants.TableNames.CounterTestRun));
 }
Example #3
0
 public CounterStatsUtil(CloudTableClient client)
 {
     _testCacheEntityUtil = new CounterUtil<TestCacheCounterEntity>(client.GetTableReference(TableNames.CounterTestCache));
     _testCacheEntityUtilJenkins = new CounterUtil<TestCacheCounterEntity>(client.GetTableReference(TableNames.CounterTestCacheJenkins));
     _unitTestEntityUtil = new CounterUtil<UnitTestCounterEntity>(client.GetTableReference(TableNames.CounterUnitTestQuery));
     _unitTestEntityUtilJenkins = new CounterUtil<UnitTestCounterEntity>(client.GetTableReference(TableNames.CounterUnitTestQueryJenkins));
     _testRunEntityUtil = new CounterUtil<TestRunCounterEntity>(client.GetTableReference(TableNames.CounterTestRun));
     _testRunEntityUtilJenkins = new CounterUtil<TestRunCounterEntity>(client.GetTableReference(TableNames.CounterTestRunJenkins));
 }
 public CounterStatsUtil(CloudTableClient client)
 {
     _testCacheEntityUtil        = new CounterUtil <TestCacheCounterEntity>(client.GetTableReference(TableNames.CounterTestCache));
     _testCacheEntityUtilJenkins = new CounterUtil <TestCacheCounterEntity>(client.GetTableReference(TableNames.CounterTestCacheJenkins));
     _unitTestEntityUtil         = new CounterUtil <UnitTestCounterEntity>(client.GetTableReference(TableNames.CounterUnitTestQuery));
     _unitTestEntityUtilJenkins  = new CounterUtil <UnitTestCounterEntity>(client.GetTableReference(TableNames.CounterUnitTestQueryJenkins));
     _testRunEntityUtil          = new CounterUtil <TestRunCounterEntity>(client.GetTableReference(TableNames.CounterTestRun));
     _testRunEntityUtilJenkins   = new CounterUtil <TestRunCounterEntity>(client.GetTableReference(TableNames.CounterTestRunJenkins));
 }
Example #5
0
 public CounterUtilTests()
 {
     var account = Util.GetStorageAccount();
     var tableClient = account.CreateCloudTableClient();
     var tableName = "CounterUtilTestTableName";
     Table = tableClient.GetTableReference(tableName);
     Table.Create();
     CounterUtil = new CounterUtil<TestEntity>(Table);
 }
Example #6
0
        public CounterUtilTests()
        {
            var account     = Util.GetStorageAccount();
            var tableClient = account.CreateCloudTableClient();
            var tableName   = "CounterUtilTestTableName";

            Table = tableClient.GetTableReference(tableName);
            Table.Create();
            CounterUtil = new CounterUtil <TestEntity>(Table);
        }
 private static void AddUnitTestQuery(CounterUtil <UnitTestCounterEntity> util, UnitTestData unitTestData, TimeSpan elapsed)
 {
     util.Update(entity =>
     {
         entity.AssemblyCount++;
         entity.TestsPassed    += unitTestData.Passed;
         entity.TestsFailed    += unitTestData.Failed;
         entity.TestsSkipped   += unitTestData.Skipped;
         entity.ElapsedSeconds += (long)elapsed.TotalSeconds;
     });
 }
 private static void AddTestRun(CounterUtil <TestRunCounterEntity> util, bool succeeded)
 {
     util.Update(entity =>
     {
         entity.RunCount++;
         if (succeeded)
         {
             entity.SucceededCount++;
         }
     });
 }
Example #9
0
 private static void AddUnitTestQuery(CounterUtil<UnitTestCounterEntity> util, UnitTestData unitTestData, TimeSpan elapsed)
 {
     util.Update(entity =>
     {
         entity.AssemblyCount++;
         entity.TestsPassed += unitTestData.Passed;
         entity.TestsFailed += unitTestData.Failed;
         entity.TestsSkipped += unitTestData.Skipped;
         entity.ElapsedSeconds += (long)elapsed.TotalSeconds;
     });
 }
Example #10
0
            public void DifferentForJenkins()
            {
                var dateTime     = DateTimeOffset.UtcNow;
                var counterData  = new CounterData(dateTime, "hello world", isJenkins: false);
                var counterData2 = new CounterData(dateTime, counterData.EntityWriterId, isJenkins: true);
                var key1         = CounterUtil.GetRowKey(counterData);
                var key2         = CounterUtil.GetRowKey(counterData);
                var key3         = CounterUtil.GetRowKey(counterData2);

                Assert.Equal(key1, key2);
                Assert.NotEqual(key1, key3);
            }
Example #11
0
            public void DifferentForInterval()
            {
                var dateTime     = DateTimeOffset.UtcNow;
                var counterData  = new CounterData(dateTime, "hello world", isJenkins: false);
                var counterData2 = new CounterData(dateTime.AddMinutes(CounterUtil.MinuteInternal), counterData.EntityWriterId, isJenkins: counterData.IsJenkins);
                var key1         = CounterUtil.GetRowKey(counterData);
                var key2         = CounterUtil.GetRowKey(counterData);
                var key3         = CounterUtil.GetRowKey(counterData2);

                Assert.Equal(key1, key2);
                Assert.NotEqual(key1, key3);
            }
Example #12
0
        private T GetOrCreateEntity(CounterData counterData)
        {
            var key    = CounterUtil.GetEntityKey(counterData);
            var filter = FilterUtil.Key(key).Filter;
            var query  = new TableQuery <T>().Where(filter);
            var entity = _table.ExecuteQuery(query).FirstOrDefault();

            if (entity != null)
            {
                return(entity);
            }

            return(_createFunc(counterData));
        }
Example #13
0
            public void SingleItem()
            {
                var dateTime    = DateTimeOffset.UtcNow;
                var counterData = GetCounterData(dateTime);
                var entity      = new TestCounterEntity(counterData)
                {
                    Count = 42
                };

                _table.Execute(TableOperation.Insert(entity));

                var list = CounterUtil.Query <TestCounterEntity>(_table, dateTime, dateTime).ToList();

                Assert.Equal(1, list.Count);
                Assert.Equal(42, list[0].Count);
            }
Example #14
0
 public BuildTablePopulator(CloudTable buildResultDateTable, CloudTable buildResultExactTable, CloudTable buildFailureDateTable, CloudTable buildFailureExactTable, CloudTable viewNameDateTable, CounterUtil<BuildCounterEntity> buildCounterUtil, JenkinsClient client, TextWriter textWriter)
 {
     Debug.Assert(buildResultDateTable.Name == TableNames.BuildResultDate);
     Debug.Assert(buildResultExactTable.Name == TableNames.BuildResultExact);
     Debug.Assert(buildFailureDateTable.Name == TableNames.BuildFailureDate);
     Debug.Assert(buildFailureExactTable.Name == TableNames.BuildFailureExact);
     Debug.Assert(viewNameDateTable.Name == TableNames.ViewNameDate);
     Debug.Assert(buildCounterUtil.Table.Name == TableNames.CounterBuilds);
     _buildResultDateTable = buildResultDateTable;
     _buildResultExactTable = buildResultExactTable;
     _buildFailureDateTable = buildFailureDateTable;
     _buildFailureExactTable = buildFailureExactTable;
     _viewNameDateTable = viewNameDateTable;
     _buildCounterUtil = buildCounterUtil;
     _client = client;
     _textWriter = textWriter;
 }
Example #15
0
 public BuildTablePopulator(CloudTable buildResultDateTable, CloudTable buildResultExactTable, CloudTable buildFailureDateTable, CloudTable buildFailureExactTable, CloudTable viewNameDateTable, CounterUtil <BuildCounterEntity> buildCounterUtil, JenkinsClient client, TextWriter textWriter)
 {
     Debug.Assert(buildResultDateTable.Name == TableNames.BuildResultDate);
     Debug.Assert(buildResultExactTable.Name == TableNames.BuildResultExact);
     Debug.Assert(buildFailureDateTable.Name == TableNames.BuildFailureDate);
     Debug.Assert(buildFailureExactTable.Name == TableNames.BuildFailureExact);
     Debug.Assert(viewNameDateTable.Name == TableNames.ViewNameDate);
     Debug.Assert(buildCounterUtil.Table.Name == TableNames.CounterBuilds);
     _buildResultDateTable   = buildResultDateTable;
     _buildResultExactTable  = buildResultExactTable;
     _buildFailureDateTable  = buildFailureDateTable;
     _buildFailureExactTable = buildFailureExactTable;
     _viewNameDateTable      = viewNameDateTable;
     _buildCounterUtil       = buildCounterUtil;
     _client     = client;
     _textWriter = textWriter;
 }
Example #16
0
        public async Task BasicFromCtor()
        {
            var date    = DateTimeOffset.UtcNow;
            var factory = new CounterUtilFactory();
            var count   = 10;

            for (var i = 0; i < count; i++)
            {
                var util = new CounterUtil <TestEntity>(Table);
                util.Update(e => e.Count++);
            }

            var all = await CounterUtil.QueryAsync(date);

            // This is why a factory is preferred.  This method creates a new entity, and hence row,
            // per ctor.
            Assert.Equal(count, all.Count);
            Assert.Equal(count, all.Sum(x => x.Count));
        }
Example #17
0
            public void MultipleDayIntervals()
            {
                var dateTime1 = DateTimeOffset.UtcNow;
                var entity1   = new TestCounterEntity(GetCounterData(dateTime1))
                {
                    Count = 42
                };

                _table.Execute(TableOperation.Insert(entity1));

                var dateTime2 = dateTime1.AddDays(1);
                var entity2   = new TestCounterEntity(GetCounterData(dateTime2))
                {
                    Count = 13
                };

                _table.Execute(TableOperation.Insert(entity2));

                var list = CounterUtil.Query <TestCounterEntity>(_table, dateTime1, dateTime2).ToList();

                Assert.Equal(2, list.Count);
                Assert.Equal(42, list[0].Count);
                Assert.Equal(13, list[1].Count);
            }
Example #18
0
 private static void AddTestRun(CounterUtil<TestRunCounterEntity> util, bool succeeded)
 {
     util.Update(entity =>
     {
         entity.RunCount++;
         if (succeeded)
         {
             entity.SucceededCount++;
         }
     });
 }
 private static void AddStore(CounterUtil <TestCacheCounterEntity> util)
 {
     util.Update(entity => entity.StoreCount++);
 }
 private static void AddMiss(CounterUtil <TestCacheCounterEntity> util)
 {
     util.Update(entity => entity.MissCount++);
 }
 private static void AddHit(CounterUtil <TestCacheCounterEntity> util)
 {
     util.Update(entity => entity.HitCount++);
 }
Example #22
0
 private static void AddHit(CounterUtil<TestCacheCounterEntity> util)
 {
     util.Update(entity => entity.HitCount++);
 }
Example #23
0
        public async Task BasicFromCtor()
        {
            var date = DateTimeOffset.UtcNow;
            var factory = new CounterUtilFactory();
            var count = 10;
            for (var i =0; i< count; i++)
            {
                var util = new CounterUtil<TestEntity>(Table);
                util.Update(e => e.Count++);
            } 

            var all = await CounterUtil.QueryAsync(date);

            // This is why a factory is preferred.  This method creates a new entity, and hence row,
            // per ctor.
            Assert.Equal(count, all.Count);
            Assert.Equal(count, all.Sum(x => x.Count));
        }
Example #24
0
 private static void AddStore(CounterUtil<TestCacheCounterEntity> util)
 {
     util.Update(entity => entity.StoreCount++);
 }
Example #25
0
 private static void AddMiss(CounterUtil<TestCacheCounterEntity> util)
 {
     util.Update(entity => entity.MissCount++);
 }