Exemple #1
0
        public void TestDbConnectionStatementBuilderForQuery()
        {
            // Prepare
            var statementBuilder = new Mock <IStatementBuilder>();
            var connection       = new CustomDbConnection();

            // Setup
            statementBuilder.Setup(builder =>
                                   builder.CreateQuery <DataEntity>(
                                       It.IsAny <QueryBuilder <DataEntity> >(),
                                       It.IsAny <QueryGroup>(),
                                       It.IsAny <IEnumerable <OrderField> >(),
                                       It.IsAny <int>(),
                                       It.IsAny <string>()));

            // Act
            connection.Query <DataEntity>(e => e.Id == 1, statementBuilder: statementBuilder.Object);

            // Assert
            statementBuilder.Verify(builder =>
                                    builder.CreateQuery <DataEntity>(
                                        It.IsAny <QueryBuilder <DataEntity> >(),
                                        It.IsAny <QueryGroup>(),
                                        It.IsAny <IEnumerable <OrderField> >(),
                                        It.IsAny <int>(),
                                        It.IsAny <string>()), Times.Once);
        }
        public void TestDbConnectionTraceForAfterQuery()
        {
            // Prepare
            var trace      = new Mock <ITrace>();
            var connection = new CustomDbConnection();

            // Setup
            trace.Setup(t => t.AfterQuery(It.IsAny <CancellableTraceLog>()));

            // Act
            connection.Query <TraceEntity>(te => te.Id == 1, trace: trace.Object, statementBuilder: new SqlStatementBuilder());

            // Assert
            trace.Verify(t => t.AfterQuery(It.IsAny <TraceLog>()), Times.Once);
        }
        public void TestDbConnectionQueryCacheKey()
        {
            // Prepare
            var trace      = new Mock <ITrace>();
            var cache      = new Mock <ICache>();
            var connection = new CustomDbConnection();

            // Setup
            cache.Setup(c => c.Get(It.IsAny <string>(), It.IsAny <bool>()));

            // Act
            connection.Query <CacheEntity>(cacheKey: "MemoryCacheKey", cache: cache.Object, trace: trace.Object, statementBuilder: new SqlStatementBuilder());

            // Assert
            cache.Verify(c => c.Get(It.IsAny <string>(), It.IsAny <bool>()), Times.Once);
        }