|
1 | | -using Microsoft.VisualStudio.TestTools.UnitTesting; |
2 | | -using Moq.AutoMock.Tests.Util; |
3 | | - |
4 | | -namespace Moq.AutoMock.Tests |
5 | | -{ |
6 | | - [TestClass] |
7 | | - public class DescribeCreatingSelfMocks |
8 | | - { |
9 | | - [TestMethod] |
10 | | - public void Self_mocks_are_useful_for_testing_most_of_class() |
11 | | - { |
12 | | - var mocker = new AutoMocker(); |
13 | | - var selfMock = mocker.CreateSelfMock<InsecureAboutSelf>(); |
14 | | - selfMock.TellJoke(); |
15 | | - Assert.IsFalse(selfMock.SelfDepricated); |
16 | | - } |
17 | | - |
18 | | - [TestMethod] |
19 | | - public void It_can_self_mock_objects_with_constructor_arguments() |
20 | | - { |
21 | | - var mocker = new AutoMocker(); |
22 | | - var selfMock = mocker.CreateSelfMock<WithService>(); |
23 | | - Assert.IsNotNull(selfMock.Service); |
24 | | - Assert.IsNotNull(Mock.Get(selfMock.Service)); |
25 | | - } |
26 | | - } |
27 | | -} |
| 1 | +using Microsoft.VisualStudio.TestTools.UnitTesting; |
| 2 | +using Moq.AutoMock.Tests.Util; |
| 3 | + |
| 4 | +namespace Moq.AutoMock.Tests |
| 5 | +{ |
| 6 | + [TestClass] |
| 7 | + public class DescribeCreatingSelfMocks |
| 8 | + { |
| 9 | + [TestMethod] |
| 10 | + public void Self_mocks_are_useful_for_testing_most_of_class() |
| 11 | + { |
| 12 | + var mocker = new AutoMocker(); |
| 13 | + var selfMock = mocker.CreateSelfMock<InsecureAboutSelf>(); |
| 14 | + selfMock.TellJoke(); |
| 15 | + Assert.IsFalse(selfMock.SelfDepricated); |
| 16 | + } |
| 17 | + |
| 18 | + [TestMethod] |
| 19 | + public void It_can_self_mock_objects_with_constructor_arguments() |
| 20 | + { |
| 21 | + var mocker = new AutoMocker(); |
| 22 | + var selfMock = mocker.CreateSelfMock<WithService>(); |
| 23 | + Assert.IsNotNull(selfMock.Service); |
| 24 | + Assert.IsNotNull(Mock.Get(selfMock.Service)); |
| 25 | + } |
| 26 | + |
| 27 | + [TestMethod] |
| 28 | + [Description("Issue 130")] |
| 29 | + public void It_reuses_dependencies_when_creating_self_mock() |
| 30 | + { |
| 31 | + var mocker = new AutoMocker(); |
| 32 | + var service = mocker.CreateSelfMock<AbstractService>(); |
| 33 | + Assert.IsTrue(ReferenceEquals(service.Dependency, mocker.GetMock<IDependency>().Object)); |
| 34 | + } |
| 35 | + |
| 36 | + public abstract class AbstractService |
| 37 | + { |
| 38 | + public IDependency Dependency { get; } |
| 39 | + public AbstractService(IDependency dependency) => Dependency = dependency; |
| 40 | + } |
| 41 | + |
| 42 | + public interface IDependency { } |
| 43 | + } |
| 44 | +} |
0 commit comments