Skip to content

Commit

Permalink
another fixes within the way how I stringify parsed queries
Browse files Browse the repository at this point in the history
  • Loading branch information
Puchaczov committed Sep 1, 2024
1 parent 615753d commit edadbe7
Show file tree
Hide file tree
Showing 10 changed files with 21 additions and 23 deletions.
4 changes: 4 additions & 0 deletions Musoq.Evaluator.Tests/StringifyTests.cs
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,10 @@ public class StringifyTests : BasicEntityTestBase
[DataRow("select 1 from #A.entities() a inner join #B.entities() b on a.Id = b.Id inner join #C.entities() c on a.Id = c.Id")]
[DataRow("select 1 from #A.entities() a inner join #B.entities() b on a.Id = b.Id left outer join #C.entities() c on a.Id = c.Id")]
[DataRow("select 1 from #A.entities() a inner join #B.entities() b on a.Id = b.Id right outer join #C.entities() c on a.Id = c.Id")]
[DataRow("select c.ContainerName, c2.ImageName, c.ContainerId from #stdin.text('Ollama', 'llama3.1') c inner join #stdin.text('Ollama', 'llama3.1') c2 on c.ContainerId = c2.ContainerId")]
[DataRow("table Example {};")]
[DataRow("table Example { Id 'System.Int32' };")]
[DataRow("table Example { Id 'System.Int32', Name 'System.String' };")]

public void WhenToStringCalled_ShouldReturnSameQuery(string query)
{
Expand Down
2 changes: 1 addition & 1 deletion Musoq.Parser/Musoq.Parser.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
<PropertyGroup>
<TargetFramework>net8.0</TargetFramework>
<GeneratePackageOnBuild>true</GeneratePackageOnBuild>
<Version>3.0.6</Version>
<Version>3.0.7</Version>
<Authors>Jakub Puchała</Authors>
<Product>Musoq</Product>
<PackageProjectUrl>https://github.com/Puchaczov/Musoq</PackageProjectUrl>
Expand Down
2 changes: 1 addition & 1 deletion Musoq.Parser/Nodes/ArgsListNode.cs
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ public ArgsListNode(Node[] args)
Id = $"{nameof(ArgsListNode)}{argsId}";
}

public static ArgsListNode Empty => new(Array.Empty<Node>());
public static ArgsListNode Empty => new([]);

public Node[] Args { get; }

Expand Down
15 changes: 11 additions & 4 deletions Musoq.Parser/Nodes/CreateTableNode.cs
Original file line number Diff line number Diff line change
Expand Up @@ -28,16 +28,23 @@ public override void Accept(IExpressionVisitor visitor)
public override string ToString()
{
var cols = new StringBuilder();

if (TableTypePairs.Length == 0)
return $"table {Name} {{}};";

if (TableTypePairs.Length == 1)
return $"table {Name} {{ {TableTypePairs[0].ColumnName} '{TableTypePairs[0].TypeName}' }};";

cols.Append($"{TableTypePairs[0].ColumnName} {TableTypePairs[0].TypeName}");
cols.Append($"{TableTypePairs[0].ColumnName} '{TableTypePairs[0].TypeName}', ");

for (var i = 1; i < TableTypePairs.Length - 1; ++i)
{
cols.Append($"{TableTypePairs[i].ColumnName} {TableTypePairs[i].TypeName}");
cols.Append($"{TableTypePairs[i].ColumnName} '{TableTypePairs[i].TypeName}', ");
}

cols.Append($"{TableTypePairs[^1].ColumnName} {TableTypePairs[^1].TypeName}");
return $"CREATE TABLE {Name}";
cols.Append($"{TableTypePairs[^1].ColumnName} '{TableTypePairs[^1].TypeName}'");

return $"table {Name} {{ {cols} }};";
}
}
}
2 changes: 1 addition & 1 deletion Musoq.Parser/Nodes/CreateTransformationTableNode.cs
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ public override void Accept(IExpressionVisitor visitor)

public override string ToString()
{
return $"CREATE TRANSFORM TABLE {Name}";
return $"create transform table {Name}";
}
}
}
2 changes: 0 additions & 2 deletions Musoq.Parser/Nodes/CteExpressionNode.cs
Original file line number Diff line number Diff line change
Expand Up @@ -36,13 +36,11 @@ public override string ToString()
query.Append("(");
query.Append(InnerExpression[i].ToString());
query.Append("), ");
query.Append(Environment.NewLine);
}

query.Append("(");
query.Append(InnerExpression[^1].ToString());
query.Append(") ");
query.Append(Environment.NewLine);
query.Append(OuterExpression.ToString());

return query.ToString();
Expand Down
2 changes: 1 addition & 1 deletion Musoq.Parser/Nodes/GroupByNode.cs
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@ public override string ToString()
? string.Empty
: Fields.Select(f => f.ToString()).Aggregate((a, b) => $"{a.ToString()}, {b.ToString()}");
return
$"GROUP BY {fields}{Having?.ToString()}";
$"group by {fields}{Having?.ToString()}";
}
}
}
2 changes: 1 addition & 1 deletion Musoq.Parser/Nodes/HavingNode.cs
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ public override void Accept(IExpressionVisitor visitor)

public override string ToString()
{
return $"HAVING {Expression.ToString()}";
return $"having {Expression.ToString()}";
}
}
}
2 changes: 1 addition & 1 deletion Musoq.Parser/Nodes/RenameTableNode.cs
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ public override void Accept(IExpressionVisitor visitor)

public override string ToString()
{
return $"RENAME {TableSourceName} AS {TableDestinationName}";
return $"rename {TableSourceName} as {TableDestinationName}";
}
}
}
11 changes: 0 additions & 11 deletions Musoq.Parser/Nodes/SetOperator.cs

This file was deleted.

0 comments on commit edadbe7

Please sign in to comment.