maxspan maxspan - 1 year ago 185
ASP.NET (C#) Question

using moq with core while unit testing

I am trying to write a very simple unit test in core using moq and xunit.
But I am getting a error when I run the unit test.

at Moq.Mock

1..ctor(MockBehavior behavior, Object[] args)
at Moq.Mock
1..ctor(MockBehavior behavior)
at Moq.Mock`1..ctor()

Could not load file or assembly 'System.Core, version=4.0.0'.

Below is my code and project.json file.

"version": "0.1.0-*",
"testRunner": "xunit",
"dependencies": {
"Moq": "4.5.22",
"xunit": "2.2.0-beta2-build3300",
"dotnet-test-xunit": "2.2.0-preview2-build1029",
"IntegraPay.Domain": {
"version": "1.0.0-*",
"target": "project"
"Integrapay.RegistrationApplication": {
"version": "",
"target": "project"
"Microsoft.NETCore.Portable.Compatibility": "1.0.1"
"frameworks": {
"netcoreapp1.0": {
"imports": [
"dependencies": {
"Microsoft.NETCore.App": {
"type": "platform",
"version": "1.0.0"

public async void GetAttributes()
Mock<IRegistrationRepository> repo = new Mock<IRegistrationRepository>();
RegistrationManager manager = new RegistrationManager(repo.Object);
var item = await manager.CreateModel("1234");

Answer Source

Use the preview build of Moq. lists other packages that are compatible with netstandard.

You never want to add net45x in the imports node for a netcoreapp1.0 targeting application. The application will most likely fail to load assemblies (like in your case) or will run in to missing APIs at runtime.

Recommended from our users: Dynamic Network Monitoring from WhatsUp Gold from IPSwitch. Free Download