public void WhenParameterlessConstructorIsInvoked_ThenHasNoValuesButFixtureAndAttributeProviderAreCreated() { // Arrange // Act var attribute = new InlineAutoMockingTestHelperDataAttribute(); // Assert attribute.Fixture.Should().NotBeNull(); attribute.IgnoreVirtualMembers.Should().BeFalse(); attribute.Provider.Should().NotBeNull(); attribute.Values.Should().HaveCount(0); }
public void GivenExistingFixtureAndAttributeProvider_WhenConstructorIsInvoked_ThenHasFixtureAttributeProviderAndNoValues(Fixture fixture) { // Arrange var provider = new Mock <IAutoFixtureInlineAttributeProvider>().Object; // Act var attribute = new InlineAutoMockingTestHelperDataAttribute(fixture, provider); // Assert attribute.Fixture.Should().Be(fixture); attribute.IgnoreVirtualMembers.Should().BeFalse(); attribute.Provider.Should().Be(provider); attribute.Values.Should().HaveCount(0); }
public void GivenUninitializedValues_WhenConstructorIsInvoked_ThenHasNoValuesAndFixtureAndAttributeProviderAreCreated() { // Arrange const object[] initialValues = null; // Act var attribute = new InlineAutoMockingTestHelperDataAttribute(initialValues); // Assert attribute.Fixture.Should().NotBeNull(); attribute.IgnoreVirtualMembers.Should().BeFalse(); attribute.Provider.Should().NotBeNull(); attribute.Values.Should().HaveCount(0); }
public void GivenExistingInlineValues_WhenConstructorIsInvoked_ThenHasSpecifiedValuesAndFixtureAndAttributeProviderAreCreated() { // Arrange var initialValues = new[] { "test", 1, new object() }; // Act var attribute = new InlineAutoMockingTestHelperDataAttribute(initialValues[0], initialValues[1], initialValues[2]); // Assert attribute.Fixture.Should().NotBeNull(); attribute.IgnoreVirtualMembers.Should().BeFalse(); attribute.Provider.Should().NotBeNull(); attribute.Values.Should().BeEquivalentTo(initialValues); }
public void GivenExistingFixtureAttributeProviderAndValues_WhenConstructorIsInvoked_ThenHasSpecifiedFixtureAttributeProviderAndValues(Fixture fixture) { // Arrange var provider = new Mock <IAutoFixtureInlineAttributeProvider>().Object; var initialValues = new[] { "test", 1, new object() }; // Act var attribute = new InlineAutoMockingTestHelperDataAttribute(fixture, provider, initialValues[0], initialValues[1], initialValues[2]); // Assert attribute.Fixture.Should().Be(fixture); attribute.IgnoreVirtualMembers.Should().BeFalse(); attribute.Provider.Should().Be(provider); attribute.Values.Should().BeEquivalentTo(initialValues); }
public void WhenGetDataIsInvoked_ThenFixtureIsConfiguredAndDataReturned(bool ignoreVirtualMembers) { // Arrange var data = new[] { new object[] { 1, 2, 3 }, new object[] { 4, 5, 6 }, new object[] { 7, 8, 9 } }; var fixture = new Mock <IFixture>(); var customizations = new List <ICustomization>(); fixture.Setup(x => x.Customize(It.IsAny <ICustomization>())).Callback <ICustomization>(customization => customizations.Add(customization)); var dataAttribute = new Mock <DataAttribute>(); dataAttribute.Setup(a => a.GetData(It.IsAny <MethodInfo>())).Returns(data); var provider = new Mock <IAutoFixtureInlineAttributeProvider>(); provider.Setup(p => p.GetAttribute(It.IsAny <IFixture>())).Returns(dataAttribute.Object); var attribute = new InlineAutoMockingTestHelperDataAttribute(fixture.Object, provider.Object) { IgnoreVirtualMembers = ignoreVirtualMembers }; var methodInfo = typeof(AutoMockingDataAttributeTests).GetMethod("TestMethod"); // Act var result = attribute.GetData(methodInfo); // Assert result.Should().BeSameAs(data); provider.VerifyAll(); dataAttribute.VerifyAll(); customizations[0].Should().BeOfType <AutoMockingTestHelperDataCustomization>(); customizations[1].Should().BeOfType <IgnoreVirtualMembersCustomization>(); ((IgnoreVirtualMembersCustomization)customizations[1]).IgnoreVirtualMembers.Should().Be(ignoreVirtualMembers); }