public void CDInstanceGenerator_Constructor_FirstStatementIsOfType_CodeVariableDeclarationStatement() { var instance = new CDInstanceGenerator(className, instanceName); var actual = instance.CodeStatements; Assert.IsType <CodeVariableDeclarationStatement>(actual.First()); }
public void CDInstanceGenerator_Constructor_StatementsNotEmpty() { var instance = new CDInstanceGenerator(className, instanceName); var actual = instance.CodeStatements; Assert.NotEmpty(actual); }
public void CDInstanceGenerator_ConstructorWithReflectedInstanceArg_ContainsPropAndValue() { var mockedReflectedInstance = new Mock <ICDReflectedInstance>(); // classname returned mockedReflectedInstance.Setup(reflected => reflected.ClassName) .Returns(className); // return an empty dictionary for this test mockedReflectedInstance.Setup(reflected => reflected.PropertyValues) .Returns(new Dictionary <string, CDPropertyValue>() { { propName, new CDPropertyValue(propValue.GetType(), propValue) } }); var instance = new CDInstanceGenerator(mockedReflectedInstance.Object); var assignStatements = instance.CodeStatements.Where(statement => statement is CodeAssignStatement); Assert.NotEmpty(assignStatements); var assignStatement = assignStatements.First() as CodeAssignStatement; var leftOperand = assignStatement.Left; Assert.IsType <CodeFieldReferenceExpression>(leftOperand); Assert.Equal(propName, ((CodeFieldReferenceExpression)leftOperand).FieldName); // test type and value of right operand var rightOperand = assignStatement.Right; Assert.IsType <CodePrimitiveExpression>(rightOperand); Assert.Equal(propValue, ((CodePrimitiveExpression)rightOperand).Value); }
public void CDInstanceGenerator_CreatePropertyAssignment_HasPropAndValue() { var instance = new CDInstanceGenerator(className, instanceName); var assignStatement = instance.CreatePropertyAssignment(propName, propValue); // test type and value of left operand var leftOperand = assignStatement.Left; Assert.IsType <CodeFieldReferenceExpression>(leftOperand); Assert.Equal(propName, ((CodeFieldReferenceExpression)leftOperand).FieldName); // test type and value of right operand var rightOperand = assignStatement.Right; Assert.IsType <CodePrimitiveExpression>(rightOperand); Assert.Equal(propValue, ((CodePrimitiveExpression)rightOperand).Value); }
public void CDInstanceGenerator_ConstructorWithReflectedInstanceArg_ContainsCodeVarDeclaration() { var mockedReflectedInstance = new Mock <ICDReflectedInstance>(); // classname returned mockedReflectedInstance.Setup(reflected => reflected.ClassName) .Returns(className); // return an empty dictionary for this test mockedReflectedInstance.Setup(reflected => reflected.PropertyValues) .Returns(new Dictionary <string, CDPropertyValue>()); var instance = new CDInstanceGenerator(mockedReflectedInstance.Object); var actual = instance.CodeStatements; Assert.IsType <CodeVariableDeclarationStatement>(actual.First()); }
public void CDInstanceGenerator_CreatePropertyAssignment_Succeeds() { var instance = new CDInstanceGenerator(className, instanceName); var assignStatement = instance.CreatePropertyAssignment(propName, propValue); }