public void Quote_WithString_QuotesString() { var dialect = new SQLiteDialect(); var quoted = dialect.Quote("product"); quoted.Should().Be("\"product\""); }
private void InitGraphTableColumn(ColumnMetadata columnMetadata, string tableName) { var columnName = columnMetadata.FriendlyColumnName; var type = ResolveColumnMetaType(columnMetadata.DataType); var graphQLType = type.GetGraphTypeFromType(true); FieldType columnField; if (columnMetadata.FkReference) { if (columnMetadata.IsOneToManyRelationship) { columnField = new FieldType { Name = columnName, Description = columnMetadata.TargetTableName, //Using description to store the key to the dictionary for later Type = typeof(ListGraphType <EntityType>), ResolvedType = EntitiesAlreadyCreated.ContainsKey(columnMetadata.TargetTableName) ? EntitiesAlreadyCreated[columnMetadata.TargetTableName] : null }; columnField.SqlJoin(delegate(JoinBuilder @join, IReadOnlyDictionary <string, object> arguments, IResolveFieldContext context, SqlTable node) { @join.Raw( $"{_dialect.Quote(columnName)}.{_dialect.Quote(columnMetadata.ChildFkName)} = {_dialect.Quote(columnMetadata.SourceTableName)}.{_dialect.Quote(columnMetadata.ParentFkName)}", null, $"LEFT JOIN {_dialect.Quote(columnMetadata.TargetTableName)} as {_dialect.Quote(columnName)}"); }); //columnField.Resolver = new Helpers.NameFieldResolver(); AddField(columnField); } else { columnField = new FieldType { Name = columnName, Type = typeof(EntityType), ResolvedType = EntitiesAlreadyCreated.ContainsKey(columnMetadata.TargetTableName) ? EntitiesAlreadyCreated[columnMetadata.TargetTableName] : null }; columnField.SqlJoin((join, arguments, context, node) => join.On(columnMetadata.ParentFkName, columnMetadata.ChildFkName)); columnField.SqlColumn(); //columnField.Resolver = new Helpers.NameFieldResolver(); AddField(columnField); } } else { columnField = new FieldType { Name = columnName, Type = columnName == "id" ? typeof(IdGraphType) : graphQLType, //ResolvedType = new ObjectGraphType() }; columnField.SqlColumn(); //columnField.Resolver = new Helpers.NameFieldResolver(); AddField(columnField); } FillArgs(columnName); }