public void VARCHAR_Data_ScriptsCorrectly() { string baseData = "hello world!"; object data = baseData; var fieldInfo = SchemaScriptingTests.FakeColumn("test", "test", 15, "varchar", false, 0, 0); Assert.AreEqual("'hello world!'", FieldScripting.valueAsTSQLLiteral(data, fieldInfo), "varchar"); Assert.AreEqual("hello world!", FieldScripting.formatVarchar(data, false), "varchar"); baseData = "trailing space "; data = baseData; fieldInfo = SchemaScriptingTests.FakeColumn("test", "test", 15, "varchar", false, 0, 0); Assert.AreEqual("'trailing space '", FieldScripting.valueAsTSQLLiteral(data, fieldInfo), "varchar does not trim trailing space when scripted."); Assert.AreEqual("trailing space ", FieldScripting.formatVarchar(data, false), "varchar does not trim trailing space when scripted."); baseData = "That's fun!"; data = baseData; fieldInfo = SchemaScriptingTests.FakeColumn("test", "test", 15, "varchar", false, 0, 0); Assert.AreEqual("'That''s fun!'", FieldScripting.valueAsTSQLLiteral(data, fieldInfo), "varchar escapes quotes in strings when scripted for SQL."); Assert.AreEqual("That's fun!", FieldScripting.formatVarchar(data, false), "varchar does not escape quotes in strings when not scripted for SQL."); }