Fixing GetCart for non-existing user
Now GetCart returns an empty cart for non-existing user (user that haven't added anything to the cart before) Added test to cover that Also enhanced windows script for running cart service locally. Now we have two options: - Running the service and redis locally (assuming redis emulator is installed) This is good for easier local debugging and troubleshooting docker_setup local - Running the service and redis in two separate docker containers This is good for better simulation of what will happen in the cloud
This commit is contained in:
parent
289bd4db13
commit
2041bdcb48
3 changed files with 64 additions and 12 deletions
|
@ -12,6 +12,29 @@ namespace cartservice
|
|||
private static string serverHostName = "localhost";
|
||||
private static int port = 7070;
|
||||
|
||||
[Fact]
|
||||
public async Task GetItem_NoAddItemBefore_EmptyCartReturned()
|
||||
{
|
||||
string userId = Guid.NewGuid().ToString();
|
||||
|
||||
// Construct server's Uri
|
||||
string targetUri = $"{serverHostName}:{port}";
|
||||
|
||||
// Create a GRPC communication channel between the client and the server
|
||||
var channel = new Channel(targetUri, ChannelCredentials.Insecure);
|
||||
|
||||
var client = new CartServiceClient(channel);
|
||||
|
||||
var request = new GetCartRequest
|
||||
{
|
||||
UserId = userId,
|
||||
};
|
||||
var cart = await client.GetCartAsync(request);
|
||||
Assert.NotNull(cart);
|
||||
// All grpc objects implement IEquitable, so we can compare equality with by-value semantics
|
||||
Assert.Equal(new Cart(), cart);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public async Task AddItem_ItemInserted()
|
||||
{
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue