diff options
Diffstat (limited to 'dropped/docker/crupest-api/CrupestApi/CrupestApi.Commons.Tests/Crud/SqlCompareHelper.cs')
-rw-r--r-- | dropped/docker/crupest-api/CrupestApi/CrupestApi.Commons.Tests/Crud/SqlCompareHelper.cs | 85 |
1 files changed, 0 insertions, 85 deletions
diff --git a/dropped/docker/crupest-api/CrupestApi/CrupestApi.Commons.Tests/Crud/SqlCompareHelper.cs b/dropped/docker/crupest-api/CrupestApi/CrupestApi.Commons.Tests/Crud/SqlCompareHelper.cs deleted file mode 100644 index 72b6218..0000000 --- a/dropped/docker/crupest-api/CrupestApi/CrupestApi.Commons.Tests/Crud/SqlCompareHelper.cs +++ /dev/null @@ -1,85 +0,0 @@ -using System.Text; - -namespace CrupestApi.Commons.Crud.Tests; - -public class SqlCompareHelper -{ - private static List<char> SymbolTokens = new List<char>() { '(', ')', ';' }; - - public static List<string> SqlExtractWords(string? sql, bool toLower = true) - { - var result = new List<string>(); - - if (string.IsNullOrEmpty(sql)) - { - return result; - } - - var current = 0; - - StringBuilder? wordBuilder = null; - - while (current < sql.Length) - { - if (char.IsWhiteSpace(sql[current])) - { - if (wordBuilder is not null) - { - result.Add(wordBuilder.ToString()); - wordBuilder = null; - } - } - else if (SymbolTokens.Contains(sql[current])) - { - if (wordBuilder is not null) - { - result.Add(wordBuilder.ToString()); - wordBuilder = null; - } - result.Add(sql[current].ToString()); - } - else - { - if (wordBuilder is not null) - { - wordBuilder.Append(sql[current]); - } - else - { - wordBuilder = new StringBuilder(); - wordBuilder.Append(sql[current]); - } - } - current++; - } - - if (wordBuilder is not null) - { - result.Add(wordBuilder.ToString()); - } - - if (toLower) - { - for (int i = 0; i < result.Count; i++) - { - result[i] = result[i].ToLower(); - } - } - - return result; - } - - public static bool SqlEqual(string left, string right) - { - return SqlExtractWords(left) == SqlExtractWords(right); - } - - [Fact] - public void TestSqlExtractWords() - { - var sql = "SELECT * FROM TableName WHERE (id = @abcd);"; - var words = SqlExtractWords(sql); - - Assert.Equal(new List<string> { "select", "*", "from", "tablename", "where", "(", "id", "=", "@abcd", ")", ";" }, words); - } -} |