public void ResultBuilderShouldObtainServerInfoFromConnection() { var mockConn = new Mock <IConnection>(); var statement = new Statement("A cypher query"); var mockHandler = new Mock <IResultResourceHandler>(); BoltV1.RunInAutoCommitTransaction(mockConn.Object, statement, mockHandler.Object); mockConn.Verify(x => x.Server, Times.Once); }
public void ShouldEnqueueRunAndPullAllAndSend() { var mockConn = new Mock <IConnection>(); var statement = new Statement("A cypher query"); var mockHandler = new Mock <IResultResourceHandler>(); BoltV1.RunInAutoCommitTransaction(mockConn.Object, statement, mockHandler.Object); mockConn.Verify(x => x.Enqueue(It.IsAny <RunMessage>(), It.IsAny <ResultBuilder>(), PullAll), Times.Once); mockConn.Verify(x => x.Send()); }
public void ShouldThrowExceptionWhenTxConfigIsUsed() { var mockConn = new Mock <IConnection>(); var statement = new Statement("A cypher query"); var mockHandler = new Mock <IResultResourceHandler>(); var txConfig = new TransactionConfig { Timeout = TimeSpan.FromMinutes(1), Metadata = new Dictionary <string, object> { { "key1", "value1" } } }; var error = Xunit.Record.Exception(() => BoltV1.RunInAutoCommitTransaction(mockConn.Object, statement, mockHandler.Object, null, txConfig)); error.Should().BeOfType <ArgumentException>(); error.Message.Should() .StartWith("Driver is connected to the database that does not support transaction configuration"); }