static ModelStringRepresentationPublicSetMiscChild2Test() { StringRepresentationTestScenarios.AddScenario(StringRepresentationTestScenario <ModelStringRepresentationPublicSetMiscChild2> .ForceGeneratedTestsToPassAndWriteMyOwnScenario); }
static ModelStringRepresentationPublicSetReadOnlyListOfNullableChild2Test() { StringRepresentationTestScenarios.AddScenario(StringRepresentationTestScenario <ModelStringRepresentationPublicSetReadOnlyListOfNullableChild2> .ForceGeneratedTestsToPassAndWriteMyOwnScenario); }
static ModelStringRepresentationPrivateSetReadOnlyListChild1Test() { StringRepresentationTestScenarios.AddScenario(StringRepresentationTestScenario <ModelStringRepresentationPrivateSetReadOnlyListChild1> .ForceGeneratedTestsToPassAndWriteMyOwnScenario); }
static ModelStringRepresentationPrivateSetReadOnlyCollectionOfNullableTest() { StringRepresentationTestScenarios.AddScenario(StringRepresentationTestScenario <ModelStringRepresentationPrivateSetReadOnlyCollectionOfNullable> .ForceGeneratedTestsToPassAndWriteMyOwnScenario); }
static ModelStringRepresentationPrivateSetNoneTest() { StringRepresentationTestScenarios.AddScenario(StringRepresentationTestScenario <ModelStringRepresentationPrivateSetNone> .ForceGeneratedTestsToPassAndWriteMyOwnScenario); }
static ModelStringRepresentationPublicSetReadOnlyDictionaryTest() { StringRepresentationTestScenarios.AddScenario(StringRepresentationTestScenario <ModelStringRepresentationPublicSetReadOnlyDictionary> .ForceGeneratedTestsToPassAndWriteMyOwnScenario); }
static ModelStringRepresentationPublicSetArrayOfNullableChild1Test() { StringRepresentationTestScenarios.AddScenario(StringRepresentationTestScenario <ModelStringRepresentationPublicSetArrayOfNullableChild1> .ForceGeneratedTestsToPassAndWriteMyOwnScenario); }
static TypeRepresentationTest() { ConstructorArgumentValidationTestScenarios .RemoveAllScenarios() .AddScenario(() => new ConstructorArgumentValidationTestScenario <TypeRepresentation> { Name = "constructor should throw ArgumentNullException when parameter 'namespace' is null scenario", ConstructionFunc = () => { var referenceObject = A.Dummy <TypeRepresentation>(); var result = new TypeRepresentation( null, referenceObject.Name, referenceObject.AssemblyName, referenceObject.AssemblyVersion, referenceObject.GenericArguments); return(result); }, ExpectedExceptionType = typeof(ArgumentNullException), ExpectedExceptionMessageContains = new[] { "namespace" }, }) .AddScenario(() => new ConstructorArgumentValidationTestScenario <TypeRepresentation> { Name = "constructor should throw ArgumentException when parameter 'namespace' is white space scenario", ConstructionFunc = () => { var referenceObject = A.Dummy <TypeRepresentation>(); var result = new TypeRepresentation( Invariant($" {Environment.NewLine} "), referenceObject.Name, referenceObject.AssemblyName, referenceObject.AssemblyVersion, referenceObject.GenericArguments); return(result); }, ExpectedExceptionType = typeof(ArgumentException), ExpectedExceptionMessageContains = new[] { "namespace", "white space" }, }) .AddScenario(() => new ConstructorArgumentValidationTestScenario <TypeRepresentation> { Name = "constructor should throw ArgumentNullException when parameter 'name' is null scenario", ConstructionFunc = () => { var referenceObject = A.Dummy <TypeRepresentation>(); var result = new TypeRepresentation( referenceObject.Namespace, null, referenceObject.AssemblyName, referenceObject.AssemblyVersion, referenceObject.GenericArguments); return(result); }, ExpectedExceptionType = typeof(ArgumentNullException), ExpectedExceptionMessageContains = new[] { "name" }, }) .AddScenario(() => new ConstructorArgumentValidationTestScenario <TypeRepresentation> { Name = "constructor should throw ArgumentException when parameter 'name' is white space scenario", ConstructionFunc = () => { var referenceObject = A.Dummy <TypeRepresentation>(); var result = new TypeRepresentation( referenceObject.Namespace, Invariant($" {Environment.NewLine} "), referenceObject.AssemblyName, referenceObject.AssemblyVersion, referenceObject.GenericArguments); return(result); }, ExpectedExceptionType = typeof(ArgumentException), ExpectedExceptionMessageContains = new[] { "name", "white space" }, }) .AddScenario(() => new ConstructorArgumentValidationTestScenario <TypeRepresentation> { Name = "constructor should throw ArgumentNullException when parameter 'assemblyName' is null scenario", ConstructionFunc = () => { var referenceObject = A.Dummy <TypeRepresentation>(); var result = new TypeRepresentation( referenceObject.Namespace, referenceObject.Name, null, referenceObject.AssemblyVersion, referenceObject.GenericArguments); return(result); }, ExpectedExceptionType = typeof(ArgumentNullException), ExpectedExceptionMessageContains = new[] { "assemblyName" }, }) .AddScenario(() => new ConstructorArgumentValidationTestScenario <TypeRepresentation> { Name = "constructor should throw ArgumentException when parameter 'assemblyName' is white space scenario", ConstructionFunc = () => { var referenceObject = A.Dummy <TypeRepresentation>(); var result = new TypeRepresentation( referenceObject.Namespace, referenceObject.Name, Invariant($" {Environment.NewLine} "), referenceObject.AssemblyVersion, referenceObject.GenericArguments); return(result); }, ExpectedExceptionType = typeof(ArgumentException), ExpectedExceptionMessageContains = new[] { "assemblyName", "white space" }, }) .AddScenario(() => new ConstructorArgumentValidationTestScenario <TypeRepresentation> { Name = "constructor should throw ArgumentException when parameter 'assemblyVersion' is white space scenario", ConstructionFunc = () => { var referenceObject = A.Dummy <TypeRepresentation>(); var result = new TypeRepresentation( referenceObject.Namespace, referenceObject.Name, referenceObject.AssemblyName, Invariant($" {Environment.NewLine} "), referenceObject.GenericArguments); return(result); }, ExpectedExceptionType = typeof(ArgumentException), ExpectedExceptionMessageContains = new[] { "assemblyVersion", "white space" }, }) .AddScenario(() => new ConstructorArgumentValidationTestScenario <TypeRepresentation> { Name = "constructor should throw ArgumentException when parameter 'genericArguments' contains a null element scenario", ConstructionFunc = () => { var referenceObject = A.Dummy <TypeRepresentation>().ThatIs(_ => _.IsClosedGenericType()); var result = new TypeRepresentation( referenceObject.Namespace, referenceObject.Name, referenceObject.AssemblyName, referenceObject.AssemblyVersion, new TypeRepresentation[0].Concat(referenceObject.GenericArguments).Concat(new TypeRepresentation[] { null }).Concat(referenceObject.GenericArguments).ToList()); return(result); }, ExpectedExceptionType = typeof(ArgumentException), ExpectedExceptionMessageContains = new[] { "genericArguments", "contains at least one null element" }, }); ConstructorPropertyAssignmentTestScenarios .AddScenario(() => new ConstructorPropertyAssignmentTestScenario <TypeRepresentation> { Name = "GenericArguments should return null, when 'genericArguments' parameter passed to constructor is null, when getting", SystemUnderTestExpectedPropertyValueFunc = () => { var referenceObject = A.Dummy <TypeRepresentation>(); var result = new SystemUnderTestExpectedPropertyValue <TypeRepresentation> { SystemUnderTest = new TypeRepresentation( referenceObject.Namespace, referenceObject.Name, referenceObject.AssemblyName, referenceObject.AssemblyVersion, null), ExpectedPropertyValue = null, }; return(result); }, PropertyName = "GenericArguments", }); StringRepresentationTestScenarios .AddScenario(() => new StringRepresentationTestScenario <TypeRepresentation> { Name = "ToString should return the same string as BuildAssemblyQualifiedName() when called", SystemUnderTestExpectedStringRepresentationFunc = () => { var systemUnderTest = A.Dummy <TypeRepresentation>(); var result = new SystemUnderTestExpectedStringRepresentation <TypeRepresentation> { SystemUnderTest = systemUnderTest, ExpectedStringRepresentation = systemUnderTest.BuildAssemblyQualifiedName(), }; return(result); }, }) .AddScenario(() => new StringRepresentationTestScenario <TypeRepresentation> { Name = "ToString should return the Assembly Qualified Name when called", SystemUnderTestExpectedStringRepresentationFunc = () => { var systemUnderTest = typeof(IReadOnlyCollection <string> [, ]).ToRepresentation(); var result = new SystemUnderTestExpectedStringRepresentation <TypeRepresentation> { SystemUnderTest = systemUnderTest, ExpectedStringRepresentation = "System.Collections.Generic.IReadOnlyCollection`1[[System.String, mscorlib, Version=4.0.0.0]][,], mscorlib, Version=4.0.0.0", }; return(result); }, }); }