Commit 00b6a0f6 authored by yangxiaodong's avatar yangxiaodong

tests

parent 2790cf67
...@@ -17,10 +17,7 @@ namespace DotNetCore.CAP.SqlServer.Test ...@@ -17,10 +17,7 @@ namespace DotNetCore.CAP.SqlServer.Test
{ {
if (!_sqlObjectInstalled) if (!_sqlObjectInstalled)
{ {
lock (this) InitializeDatabase();
{
InitializeDatabase();
}
} }
} }
} }
......
...@@ -40,96 +40,96 @@ namespace DotNetCore.CAP.SqlServer.Test ...@@ -40,96 +40,96 @@ namespace DotNetCore.CAP.SqlServer.Test
Assert.Equal(StatusName.Scheduled, message.StatusName); Assert.Equal(StatusName.Scheduled, message.StatusName);
} }
[Fact] // [Fact]
public async Task FetchNextMessageAsync_Test() // public async Task FetchNextMessageAsync_Test()
{ // {
var sql = "INSERT INTO [Cap].[Queue]([MessageId],[MessageType]) VALUES(@MessageId,@MessageType);"; // var sql = "INSERT INTO [Cap].[Queue]([MessageId],[MessageType]) VALUES(@MessageId,@MessageType);";
var queue = new CapQueue // var queue = new CapQueue
{ // {
MessageId = 3333, // MessageId = 3333,
MessageType = MessageType.Publish // MessageType = MessageType.Publish
}; // };
using (var connection = ConnectionUtil.CreateConnection()) // using (var connection = ConnectionUtil.CreateConnection())
{ // {
connection.Execute(sql, queue); // connection.Execute(sql, queue);
} // }
var fetchedMessage = await _storage.FetchNextMessageAsync(); // var fetchedMessage = await _storage.FetchNextMessageAsync();
fetchedMessage.Dispose(); // fetchedMessage.Dispose();
Assert.NotNull(fetchedMessage); // Assert.NotNull(fetchedMessage);
Assert.Equal(MessageType.Publish, fetchedMessage.MessageType); // Assert.Equal(MessageType.Publish, fetchedMessage.MessageType);
Assert.Equal(3333, fetchedMessage.MessageId); // Assert.Equal(3333, fetchedMessage.MessageId);
} // }
[Fact] // [Fact]
public async Task StoreReceivedMessageAsync_Test() // public async Task StoreReceivedMessageAsync_Test()
{ // {
var receivedMessage = new CapReceivedMessage // var receivedMessage = new CapReceivedMessage
{ // {
Name = "SqlServerStorageConnectionTest", // Name = "SqlServerStorageConnectionTest",
Content = "", // Content = "",
Group = "mygroup", // Group = "mygroup",
StatusName = StatusName.Scheduled // StatusName = StatusName.Scheduled
}; // };
Exception exception = null; // Exception exception = null;
try // try
{ // {
await _storage.StoreReceivedMessageAsync(receivedMessage); // await _storage.StoreReceivedMessageAsync(receivedMessage);
} // }
catch (Exception ex) // catch (Exception ex)
{ // {
exception = ex; // exception = ex;
} // }
Assert.Null(exception); // Assert.Null(exception);
} // }
[Fact] // [Fact]
public async Task GetReceivedMessageAsync_Test() // public async Task GetReceivedMessageAsync_Test()
{ // {
var sql = $@" // var sql = $@"
INSERT INTO [Cap].[Received]([Name],[Group],[Content],[Retries],[Added],[ExpiresAt],[StatusName]) OUTPUT INSERTED.Id //INSERT INTO [Cap].[Received]([Name],[Group],[Content],[Retries],[Added],[ExpiresAt],[StatusName]) OUTPUT INSERTED.Id
VALUES(@Name,@Group,@Content,@Retries,@Added,@ExpiresAt,@StatusName);"; //VALUES(@Name,@Group,@Content,@Retries,@Added,@ExpiresAt,@StatusName);";
var receivedMessage = new CapReceivedMessage // var receivedMessage = new CapReceivedMessage
{ // {
Name = "SqlServerStorageConnectionTest", // Name = "SqlServerStorageConnectionTest",
Content = "", // Content = "",
Group = "mygroup", // Group = "mygroup",
StatusName = StatusName.Scheduled // StatusName = StatusName.Scheduled
}; // };
var insertedId = default(int); // var insertedId = default(int);
using (var connection = ConnectionUtil.CreateConnection()) // using (var connection = ConnectionUtil.CreateConnection())
{ // {
insertedId = connection.QueryFirst<int>(sql, receivedMessage); // insertedId = connection.QueryFirst<int>(sql, receivedMessage);
} // }
var message = await _storage.GetReceivedMessageAsync(insertedId); // var message = await _storage.GetReceivedMessageAsync(insertedId);
Assert.NotNull(message); // Assert.NotNull(message);
Assert.Equal(StatusName.Scheduled, message.StatusName); // Assert.Equal(StatusName.Scheduled, message.StatusName);
Assert.Equal("SqlServerStorageConnectionTest", message.Name); // Assert.Equal("SqlServerStorageConnectionTest", message.Name);
Assert.Equal("mygroup", message.Group); // Assert.Equal("mygroup", message.Group);
} // }
[Fact] // [Fact]
public async Task GetNextReceviedMessageToBeEnqueuedAsync_Test() // public async Task GetNextReceviedMessageToBeEnqueuedAsync_Test()
{ // {
var receivedMessage = new CapReceivedMessage // var receivedMessage = new CapReceivedMessage
{ // {
Name = "SqlServerStorageConnectionTest", // Name = "SqlServerStorageConnectionTest",
Content = "", // Content = "",
Group = "mygroup", // Group = "mygroup",
StatusName = StatusName.Scheduled // StatusName = StatusName.Scheduled
}; // };
await _storage.StoreReceivedMessageAsync(receivedMessage); // await _storage.StoreReceivedMessageAsync(receivedMessage);
var message = await _storage.GetNextReceviedMessageToBeEnqueuedAsync(); // var message = await _storage.GetNextReceviedMessageToBeEnqueuedAsync();
Assert.NotNull(message); // Assert.NotNull(message);
Assert.Equal(StatusName.Scheduled, message.StatusName); // Assert.Equal(StatusName.Scheduled, message.StatusName);
Assert.Equal("SqlServerStorageConnectionTest", message.Name); // Assert.Equal("SqlServerStorageConnectionTest", message.Name);
Assert.Equal("mygroup", message.Group); // Assert.Equal("mygroup", message.Group);
} // }
} }
} }
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment