Skip to content

Refactor output-format related code into a dedicated class + interface #88

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 9 commits into from
Aug 30, 2022

Conversation

FabianSchmick
Copy link
Member

@FabianSchmick FabianSchmick commented May 31, 2022

We are looking into adding an option to do CSV exports as well. As a first step in that direction, we need to separate everything related to how we write export SQL from things related to fetching the data and user interface. Currently, that's all mixed up in the Dumper class.

This PR takes a first step in that direction by introducing the OutputFormatDriverInterface, and moving everything related to exporting SQL from the Dumper class to MysqlOutputFormatDriver.

Copy link
Member

@mpdude mpdude left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Heading in a good direction already!

@mpdude mpdude mentioned this pull request Aug 29, 2022
mpdude added a commit that referenced this pull request Aug 29, 2022
The `DumperTest` class is FUBAR in its design: It mocks the DBAL connection, making assumptions about the order and semantics of the queries the `Dumper` class will issue.

As long as we need to query the database for schema information and/or use the DBAL schema tool that does it, probably the only way to go for code like this is to do real functional/integration tests against a real database.

Since this broken test is getting in our way in #88, let's remove it.
mpdude added 3 commits August 29, 2022 23:42
…s by preferring passing Schema Asset objects (#89)

This PR tweaks the new `SqlDumper` class from #88 a bit and introduces a dedicated interface for it. Also, it prefers using the Schema Tool API instead of passing around an array of column names.
@mpdude mpdude marked this pull request as ready for review August 29, 2022 21:48
@mpdude mpdude changed the title Create a stub for an "SqlDumper" (Case 145919) Refactor output-format related code into a dedicated class + interface Aug 30, 2022
@mpdude mpdude merged commit fb2d7af into master Aug 30, 2022
@mpdude mpdude deleted the 145919-refactor-dumper branch August 30, 2022 08:21
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants