Removed factory from AutoCompleteService

This commit is contained in:
Mitchell Sternke
2016-08-19 17:53:49 -07:00
parent b928516f58
commit a5992997e1
2 changed files with 24 additions and 57 deletions

View File

@@ -181,12 +181,10 @@ namespace Microsoft.SqlTools.ServiceLayer.Test.LanguageServices
mockFactory.Setup(factory => factory.CreateSqlConnection(It.IsAny<string>()))
.Returns(CreateMockDbConnection(new[] {data}));
var connectionService = TestObjects.GetTestConnectionService();
var connectionService = new ConnectionService(mockFactory.Object);
var autocompleteService = new AutoCompleteService();
autocompleteService.ConnectionServiceInstance = connectionService;
autocompleteService.InitializeService(Microsoft.SqlTools.ServiceLayer.Hosting.ServiceHost.Instance);
autocompleteService.ConnectionFactory = mockFactory.Object;
// Open a connection
// The cache should get updated as part of this
@@ -216,11 +214,10 @@ namespace Microsoft.SqlTools.ServiceLayer.Test.LanguageServices
[Fact]
public void OnlyOneCacheIsCreatedForTwoDocumentsWithSameConnection()
{
var connectionService = TestObjects.GetTestConnectionService();
var connectionService = new ConnectionService(TestObjects.GetTestSqlConnectionFactory());
var autocompleteService = new AutoCompleteService();
autocompleteService.ConnectionServiceInstance = connectionService;
autocompleteService.InitializeService(Microsoft.SqlTools.ServiceLayer.Hosting.ServiceHost.Instance);
autocompleteService.ConnectionFactory = TestObjects.GetTestSqlConnectionFactory();
// Open two connections
ConnectParams connectionRequest1 = TestObjects.GetTestConnectionParams();
@@ -243,6 +240,9 @@ namespace Microsoft.SqlTools.ServiceLayer.Test.LanguageServices
[Fact]
public void TwoCachesAreCreatedForTwoDocumentsWithDifferentConnections()
{
const string testDb1 = "my_db";
const string testDb2 = "my_other_db";
// Result set for the query of database tables
Dictionary<string, string>[] data1 =
{
@@ -258,21 +258,21 @@ namespace Microsoft.SqlTools.ServiceLayer.Test.LanguageServices
};
var mockFactory = new Mock<ISqlConnectionFactory>();
mockFactory.SetupSequence(factory => factory.CreateSqlConnection(It.IsAny<string>()))
.Returns(CreateMockDbConnection(new[] {data1}))
mockFactory.Setup(factory => factory.CreateSqlConnection(It.Is<string>(x => x.Contains(testDb1))))
.Returns(CreateMockDbConnection(new[] {data1}));
mockFactory.Setup(factory => factory.CreateSqlConnection(It.Is<string>(x => x.Contains(testDb2))))
.Returns(CreateMockDbConnection(new[] {data2}));
var connectionService = TestObjects.GetTestConnectionService();
var connectionService = new ConnectionService(mockFactory.Object);
var autocompleteService = new AutoCompleteService();
autocompleteService.ConnectionServiceInstance = connectionService;
autocompleteService.InitializeService(Microsoft.SqlTools.ServiceLayer.Hosting.ServiceHost.Instance);
autocompleteService.ConnectionFactory = mockFactory.Object;
// Open connections
// The cache should get updated as part of this
ConnectParams connectionRequest = TestObjects.GetTestConnectionParams();
connectionRequest.OwnerUri = "file:///my/first/sql/file.sql";
connectionRequest.Connection.DatabaseName = testDb1;
var connectionResult = connectionService.Connect(connectionRequest);
Assert.NotEmpty(connectionResult.ConnectionId);
@@ -282,7 +282,7 @@ namespace Microsoft.SqlTools.ServiceLayer.Test.LanguageServices
// Open second connection
ConnectParams connectionRequest2 = TestObjects.GetTestConnectionParams();
connectionRequest2.OwnerUri = "file:///my/second/sql/file.sql";
connectionRequest2.Connection.DatabaseName = "my_other_db";
connectionRequest2.Connection.DatabaseName = testDb2;
var connectionResult2 = connectionService.Connect(connectionRequest2);
Assert.NotEmpty(connectionResult2.ConnectionId);