public void QuerySelectedFieldsTests() { //string1 :"select city,winner,player_match from ipl.csv where season > 2014 and city = 'Bangalore'" //result1 : { "city", "winner", "player_match" } //string2 : "SELECT city,player From ipl.csv" //result 2: {"city", "player" } string queryString = "SELECT col1 = (select * from ipl.csv) From ipl.csv"; List <string> queryResult = new List <string> { "col1 = (select * from ipl.csv)" }; Assert.Equal(queryResult, QueryPartsOperations.GetSelectedFields(queryString)); }
public void InvalidSelectedFieldsTests(string queryString) { Exception ex = Assert.Throws <InvalidQueryException>(() => QueryPartsOperations.GetSelectedFields(queryString)); Assert.Equal(ex.Message, $"Error in selected fields parts of the query!!"); }
public void InvalidSelectFieldsTests(string queryString) { Exception ex = Assert.Throws <InvalidQueryException>(() => QueryPartsOperations.GetSelectedFields(queryString)); Assert.Equal(ex.Message, $"Invalid use of select or from clause in the query!!"); }
/// <summary> /// Main method /// </summary> /// <param name="args"></param> static void Main(string[] args) { ConsoleKeyInfo c; do { Console.Clear(); string queryString = ""; int operation = 0; Console.WriteLine(); Console.WriteLine("Choose operation: "); Console.WriteLine("1. Split query"); Console.WriteLine("2. Get file name"); Console.WriteLine("3. Get base part"); Console.WriteLine("4. Get selected fields"); Console.WriteLine("5. Get filter part"); Console.WriteLine("6. Get condition in filter part"); Console.WriteLine("7. Get logical operators in filter part"); Console.WriteLine("8. Get order by field"); Console.WriteLine("9. Get group by field"); Console.WriteLine("10. Get aggegate functions"); Console.WriteLine(); Console.WriteLine("-> "); try { operation = Convert.ToInt32(Console.ReadLine()); } catch (Exception ex) { operation = 0; } Console.WriteLine(); Console.Write("Enter Input string: "); Console.WriteLine(); queryString = Console.ReadLine(); Console.WriteLine(); switch (operation) { case 1: //Split the querseley into words DisplaySplitResult(BasicQueryOperations.SplitQueryWords(queryString)); break; case 2: //Get filename from query DisplayResult(BasicQueryOperations.GetFileNameFromQuery(queryString)); break; case 3: //Get base part of query DisplayResult(BasicQueryOperations.GetBasePartFromQuery(queryString)); break; case 4: //Get selected fields fo query DisplaySplitResult(QueryPartsOperations.GetSelectedFields(queryString)); break; case 5: //Get filter part DisplayResult(QueryPartsOperations.GetFilterPart(queryString)); break; case 6: //Get conditions in filter part DisplaySplitResult(QueryPartsOperations.GetConditionInFilter(queryString)); break; case 7: //Get logical operators in filter part DisplaySplitResult(LogicalAndOrderFields.GetLogicalOperators(queryString)); break; case 8: //Get order by fields DisplaySplitResult(LogicalAndOrderFields.GetOrderField(queryString)); break; case 9: //Get group by fields DisplaySplitResult(GroupAndAggregateFields.GetGroupByField(queryString)); break; case 10: //Get aggregate functions DisplaySplitResult(GroupAndAggregateFields.GetAggregateFunctions(queryString)); break; default: Console.WriteLine("Not a valid operation!!!"); break; } Console.WriteLine("\nPress any key to continue('esc' to stop)"); c = Console.ReadKey(); } while (c.Key != ConsoleKey.Escape); }