public void GetUnparameterizedSql_NamedParametersWithAtSign_UnparameterizesCorrectly() { var sqlGeneratorResult = new SqlGeneratorResult { SqlString = "SELECT column1, column2 FROM table1 WHERE column3 < @p11 and column1 > @p1", Parameters = new List<IDataParameter> { new SqlParameter("@p1", "value1"), new SqlParameter("@p11", 3) } }; var unparameterizedSql = sqlGeneratorResult.GetUnparameterizedSql(); Assert.That(unparameterizedSql, Is.EqualTo("SELECT column1, column2 FROM table1 WHERE column3 < 3 and column1 > 'value1'")); }
public void GetUnparameterizedSql_NoParameters_UnparameterizesCorrectly() { var sqlGeneratorResult = new SqlGeneratorResult { SqlString = "SELECT 10", Parameters = new List<IDataParameter>() }; var unparameterizedSql = sqlGeneratorResult.GetUnparameterizedSql(); Assert.That(unparameterizedSql, Is.EqualTo("SELECT 10")); }
public void GetUnparameterizedSql_UnknownParameterType_Throws() { var sqlGeneratorResult = new SqlGeneratorResult { SqlString = "SELECT column1, column2 FROM table1 WHERE column3 < ? and column1 > ?", Parameters = new List<IDataParameter> { new SqlParameter("parameterName1", "value1"), new SqlParameter("parameterName3", 3) { DbType = DbType.Object } } }; Assert.Throws<ArgumentException>(() => sqlGeneratorResult.GetUnparameterizedSql()); }
public void GetUnparameterizedSql_TooManyPositionalParameters_Throws() { var sqlGeneratorResult = new SqlGeneratorResult { SqlString = "SELECT column1, column2 FROM table1 WHERE column3 < ? and column1 > ?", Parameters = new List<IDataParameter> { new SqlParameter("parameterName1", "value1"), new SqlParameter("parameterName2", 3), new SqlParameter("parameterName3", 4) } }; Assert.Throws<ArgumentException>(() => sqlGeneratorResult.GetUnparameterizedSql()); }
public void GetUnparameterizedSql_PositionalParameters_UnparameterizesCorrectly() { var sqlGeneratorResult = new SqlGeneratorResult { SqlString = "SELECT column1, column2 FROM table1 WHERE column3 < ? and column1 > ?", Parameters = new List<IDataParameter> { new SqlParameter("parameterName1", "value1"), new SqlParameter("parameterName2", 3) } }; var unparameterizedSql = sqlGeneratorResult.GetUnparameterizedSql(); Assert.That(unparameterizedSql, Is.EqualTo("SELECT column1, column2 FROM table1 WHERE column3 < 'value1' and column1 > 3")); }
public void GetUnparameterizedSql_NotEnoughNamedParameters_Throws() { var sqlGeneratorResult = new SqlGeneratorResult { SqlString = "SELECT column1, column2 FROM table1 WHERE column3 < @p1 and column1 in (@p2, @p3)", Parameters = new List<IDataParameter> { new SqlParameter("p1", "value1"), new SqlParameter("p2", 3) } }; Assert.Throws<ArgumentException>(() => sqlGeneratorResult.GetUnparameterizedSql()); }