Replaces minitest-reporters with minitest-junit

In addition to updating the Core gemspec, the change removes all setup for minitest-reporters from workarea-testing/lib/workarea/test_help.rb and adds a Workarea Minitest plugin at workarea-core/lib/minitest/workarea_plugin.rb to apply the necessary setup for minitest-junit.

Moves Additional Test Cases into Their Own Files

Workarea 3.0.11 modifies and adds several test case files to ensure each file contains only one class definition which matches the file name. Developers reported problems decorating test cases when the class name and file name don't match. This change does not change the Ruby API in any way, only where on disk the classes are defined.

The following files are modified to remove additional class definitions.

Adds Additional Search Mappings to Prevent Indexing Errors

Workarea 3.0.11 adds the 'facets.category_id' and 'facets.on_sale' properties to the :storefront Elasticsearch mapping in workarea-core/lib/workarea/configuration.rb. This change reduces the chances of errors during indexing.

Fixes Exception in Inventory Status View Model

Workarea 3.0.11 fixes the Storefront inventory status view model to prevent raising an exception when no inventory sku is available.

The change modifies the Storefront view model Workarea::Storefront::InventoryStatusViewModel, changing message to return an empty string when no inventory sku is available. The change also adds a test, test_message_none_available, to the Storefront view model test case Workarea::Storefront::InventoryStatusViewModelTest.

Fixes Duplicate DOM When Returning to Page

Workarea 3.0.11 modifies several Admin JavaScript modules to prevent duplicate DOM nodes in the Admin when returning to a previously visited page. The changes, listed below, add a destroy() function, which is invoked before storing the DOM in the turbolinks cache.

Changes Precompile Asset Paths

Workarea 3.0.11 modifies the list of precompile asset paths in Rails.application.config.assets.precompile, removing the globs workarea/admin/*.svg and workarea/storefront/*.svg, and adding workarea/**/*.svg. The changes occur in the Core initializer workarea-core/config/initializers/02_assets.rb and intend to include all SVG files as precompiled assets.