Skip to content

Commit 055b696

Browse files
committed
fix tests
1 parent b0d07d7 commit 055b696

File tree

1 file changed

+18
-5
lines changed

1 file changed

+18
-5
lines changed

test/UnitTests/Services/Operations/OperationsProcessorTests.cs

Lines changed: 18 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,11 @@
11
using System.Collections.Generic;
2+
using System.Threading;
23
using System.Threading.Tasks;
34
using JsonApiDotNetCore.Models.Operations;
45
using JsonApiDotNetCore.Services.Operations;
6+
using Microsoft.EntityFrameworkCore;
7+
using Microsoft.EntityFrameworkCore.Infrastructure;
8+
using Microsoft.EntityFrameworkCore.Storage;
59
using Moq;
610
using Newtonsoft.Json;
711
using Xunit;
@@ -12,9 +16,12 @@ public class OperationsProcessorTests
1216
{
1317
private readonly Mock<IOperationProcessorResolver> _resolverMock;
1418

19+
public readonly Mock<DbContext> _dbContextMock;
20+
1521
public OperationsProcessorTests()
1622
{
1723
_resolverMock = new Mock<IOperationProcessorResolver>();
24+
_dbContextMock = new Mock<DbContext>();
1825
}
1926

2027
[Fact]
@@ -61,29 +68,35 @@ public async Task ProcessAsync_Performs_Pointer_ReplacementAsync()
6168
}
6269
}
6370
}";
64-
71+
6572
var operations = JsonConvert.DeserializeObject<List<Operation>>(request);
6673
var addOperationResult = JsonConvert.DeserializeObject<Operation>(op1Result);
6774

75+
var databaseMock = new Mock<DatabaseFacade>(_dbContextMock.Object);
76+
var transactionMock = new Mock<IDbContextTransaction>();
77+
databaseMock.Setup(m => m.BeginTransactionAsync(It.IsAny<CancellationToken>()))
78+
.ReturnsAsync(transactionMock.Object);
79+
_dbContextMock.Setup(m => m.Database).Returns(databaseMock.Object);
80+
6881
var opProcessorMock = new Mock<IOpProcessor>();
6982
opProcessorMock.Setup(m => m.ProcessAsync(It.Is<Operation>(op => op.DataObject.Type.ToString() == "authors")))
7083
.ReturnsAsync(addOperationResult);
71-
84+
7285
_resolverMock.Setup(m => m.LocateCreateService(It.IsAny<Operation>()))
7386
.Returns(opProcessorMock.Object);
74-
87+
7588
_resolverMock.Setup(m => m.LocateCreateService((It.IsAny<Operation>())))
7689
.Returns(opProcessorMock.Object);
7790

78-
var operationsProcessor = new OperationsProcessor(_resolverMock.Object);
91+
var operationsProcessor = new OperationsProcessor(_resolverMock.Object, _dbContextMock.Object);
7992

8093
// act
8194
var results = await operationsProcessor.ProcessAsync(operations);
8295

8396
// assert
8497
opProcessorMock.Verify(
8598
m => m.ProcessAsync(
86-
It.Is<Operation>(o =>
99+
It.Is<Operation>(o =>
87100
o.DataObject.Type.ToString() == "articles"
88101
&& o.DataObject.Relationships["author"].SingleData["id"].ToString() == "9"
89102
)

0 commit comments

Comments
 (0)