コード例 #1
0
ファイル: QueryTest.cs プロジェクト: rejahanwer/keen-sdk-net
        public async void Count_InvalidCollection_Throws()
        {
            var client = new KeenClient(settingsEnv);
            var timeframe = QueryRelativeTimeframe.PreviousHour();

            Mock<IQueries> queryMock = null;
            if (UseMocks)
            {
                queryMock = new Mock<IQueries>();
                queryMock.Setup(m => m.Metric<int>(
                        It.Is<string>(me => me == "count"),
                        It.Is<string>(c => c == null),
                        It.Is<string>(p => p == "-"),
                        It.Is<QueryRelativeTimeframe>(t => t == timeframe),
                        It.Is<IEnumerable<QueryFilter>>(f=>f==null),
                        It.Is<string>(z => z == "")
                        ))
                        .Throws(new ArgumentNullException());

                client.Queries = queryMock.Object;
            }

            var count = await client.QueryCountAsync(null, timeframe, null);
            Assert.IsNotNull(count);
        }
コード例 #2
0
ファイル: QueryTest.cs プロジェクト: rejahanwer/keen-sdk-net
        public async void Count_ValidRelative_Success()
        {
            var client = new KeenClient(settingsEnv);
            var timeframe = QueryRelativeTimeframe.ThisMinute();

            Mock<IQueries> queryMock = null;
            if (UseMocks)
            {
                queryMock = new Mock<IQueries>();
                queryMock.Setup(m => m.Metric<int>(
                        It.Is<string>(me => me == "count"),
                        It.Is<string>(c => c == testCol),
                        It.Is<string>(p => p == "-"),
                        It.Is<QueryTimeframe>(t => t == timeframe),
                        It.Is<IEnumerable<QueryFilter>>(f => f == null),
                        It.Is<string>(z => z == "")))
                    .Returns(Task.FromResult(0));

                client.Queries = queryMock.Object;
            }

            var count = await client.QueryCountAsync(testCol, timeframe, null);
            Assert.IsNotNull(count);

            if (null != queryMock)
            {
                queryMock.Verify(m => m.Metric<int>(
                    It.Is<string>(me => me == "count"),
                    It.Is<string>(c => c == testCol),
                    It.Is<string>(p => p == "-"),
                    It.Is<QueryTimeframe>(t => t == timeframe),
                    It.Is<IEnumerable<QueryFilter>>(f => f == null),
                    It.Is<string>(z => z == "")),
                    Times.Once());
            }
        }
コード例 #3
0
ファイル: QueryTest.cs プロジェクト: rejahanwer/keen-sdk-net
        public async void Count_ValidFilter_Success()
        {
            var client = new KeenClient(settingsEnv);
            var filters = new List<QueryFilter>(){ new QueryFilter("field1", QueryFilter.FilterOperator.GreaterThan(), "1") };

            Mock<IQueries> queryMock = null;
            if (UseMocks)
            {
                queryMock = new Mock<IQueries>();
                queryMock.Setup(m => m.Metric<int>(
                        It.Is<string>(me => me == "count"),
                        It.Is<string>(c => c == testCol),
                        It.Is<string>(p => p == "-"),
                        It.Is<QueryTimeframe>(t => t == null),
                        It.Is<IEnumerable<QueryFilter>>(f => f == filters),
                        It.Is<string>(z => z == "")))
                    .Returns(Task.FromResult(1));

                client.Queries = queryMock.Object;
            }

            var count = await client.QueryCountAsync(testCol, null, filters);
            Assert.IsNotNull(count);

            if (null != queryMock)
            {
                queryMock.Verify(m => m.Metric<int>(
                    It.Is<string>(me => me == "count"),
                    It.Is<string>(c => c == testCol),
                    It.Is<string>(p => p == "-"),
                    It.Is<QueryTimeframe>(t => t == null),
                    It.Is<IEnumerable<QueryFilter>>(f => f == filters),
                    It.Is<string>(z => z == "")),
                    Times.Once());
            }
        }
コード例 #4
0
ファイル: QueryTest.cs プロジェクト: rejahanwer/keen-sdk-net
        public async void Count_ValidAbsolute_Success()
        {
            var client = new KeenClient(settingsEnv);
            var timeframe = new QueryAbsoluteTimeframe(DateTime.Now.AddDays(-1), DateTime.Now);

            Mock<IQueries> queryMock = null;
            if (UseMocks)
            {
                queryMock = new Mock<IQueries>();
                queryMock.Setup(m => m.Metric<int>(
                        It.Is<string>(me => me == "count"),
                        It.Is<string>(c => c == testCol),
                        It.Is<string>(p => p == "-"),
                        It.Is<QueryAbsoluteTimeframe>(t => t == timeframe),
                        It.Is<IEnumerable<QueryFilter>>(f=>f==null),
                        It.Is<string>(z => z == "")))
                    .Returns(Task.FromResult(0));

                client.Queries = queryMock.Object;
            }

            var count = await client.QueryCountAsync(testCol, timeframe, null);
            Assert.IsNotNull(count, "expected valid count");

            if (null != queryMock)
                queryMock.VerifyAll();
        }