MarcusBarnes / mik

The Move to Islandora Kit is an extensible PHP command-line tool for converting source content and metadata into packages suitable for importing into Islandora (or other digital repository and preservations systems).
GNU General Public License v3.0
34 stars 11 forks source link

Issue 40 (incl. work on issues 365 and 25) - clean up of MODS metadata parser code #405

Closed mjordan closed 7 years ago

mjordan commented 7 years ago

Github issue: (#40)

Related issue: #365, #25.

What does this Pull Request do?

What's new?

The CdmToMods and CsvToMods metadata parser classes are a lot smaller, and the MODS parent class is a lot bigger. All three files are a bit cleaner.

How should this be tested?

The changes in this PR should be invisible, with no side effects. Therefore, the changes to the CsvToMods metadata parser are testable:

  1. Check out the master branch and run the PHPUnit tests: phpunit --exclude-group inputvalidators --bootstrap vendor/autoload.php tests. You should get 46 tests and 66 assertions.
  2. Check out the issue-40 branch and rerun the tests. You should get the same results.

Since there are no PHPUnit tests for the CdmToMods metadata parser, we will need to perform a smoke test. Configuration files for this are available on request. You may want to run MIK using the Cdm .ini file in master, rename the output directory, and then rerun it again in the issue-40 branch using the same .ini. The MODS files resulting from both runs should be identical except for timestamps.

Interested parties

@MarcusBarnes

MarcusBarnes commented 7 years ago

Tested and appears to work as described. Thank you @mjordan.

mjordan commented 7 years ago

Great, thanks for testing and merging!