Initial commit - base project plus readme
Added basic classes that run a test using a CSV file, including an option parser and an image comparator using AForge.
Minimum Viable Status is go. This can take a CSV (doesn't support filtering out types yet) and process it and generate a report based on a directory/report name you specify
Broke up Renderly into a library component and main program client. Wired dependencies with autofac, and started adding a test case generation tool.
Removing autofac from the renderly library
Fixes #1. This change now allows you run RenderlyApp to generate test cases from a CSV file with the bare information needed to generate the test case. Also broke out RenderlyApp to allow different commands based on ManyConsole
Fixes issue #3 - adds the ability to remove test cases based on date/release/test ID. Also updated CSVReader to 2.3.0.
Fixes issue #2 - Adds functionality to RenderlyApp to update the reference image for test cases by test case ID. The app will download the source (basically the remote image used for comparison) and replace the reference image with it. Also moved Rendering.Options namespace to Rendering.Commands since the app is now multi-command.
Fixes issue #9 and issue #5. Provided option to show only failing tests in the final report, and updates the example template and code to provide a comma-separated string of failed tests that can be passed for argument lists.
Fixes #6 - allows you to specify a threshold between 0 - 100 to configure aggression of the image comparison algorithm. Also added the AbstractImageComparer class that abstractly-implements IImageComparer because I needed the threshold state and to standardize on allowing all its subclasses to have threshold in the constructor.
Fixes issues #12 and #10 - added filtering based on Test Type, and the code now uses Uris that can be downloaded by WebClient, allowing access to UNC/local/web URLs without much other change. Added some string parsing changes for various commands to get rid of whitespace when CSV-strings were split on the comma.
Added unit tests for the CsvModel, and introduced more interfaces for better decoupling. Beginning splitting out file system/asset management from the RenderingController and moving it into the ReportService class.

Renamed a bunch of stuff, and moved stuff around.
Removed ReportService from RenderingController since it is not the controller's responsibility to generate reports. Changed RenderingController to use lazy yield generation of test runs just in case you're running a bajillion runs in a single report. Changed ownership semantics of the Bitmap objects that are passed around in the TestResult - now it's up to someone else to destroy them (unless the GC gets around to it). Wrote the ReportService::GenerateReport() method.
Report generation still works, now using the ReportService layer and not the old Controller-driven portion.
Closes #13 and closes #14. Finished the TestCaseGenerator class which means the CsvModel (and any model, really) is now detached from the ShellTestCase classes (so they could be broken out into a separate tool/utility at some point). Added a static class ImageUtils.cs which has a method that can be used to copy Bitmaps. This method is used for bitmap copying due to issue #14 because I didn't want to wrap classes around Bitmaps and their backing stream objects as it would get a little ugly.

Moved all the Bitmap copying from RenderingController into the IImageComparer implementation (ExhaustiveTemplateComparer being the only concrete one right now) because the controller itself should be dumb and only pass data along, and because the fact that images should be 24 bit RGB are specific only to that image comparer.

Added a method to the IRenderlyAssetManager interface FetchToRandomFilename which was needed for test generation since at the time of test creation, there wasn't enough data to generate a proper test name without querying the model, and that is just crossing interface lines too much.
Cleaned up unused using statements.
Fixes issue #17 where the app crashes if an exception is thrown due to missing files or problems retrieving a resource.
Fixes issue 20, fixes issue 21, and fixes issue 22 for mochify/renderly. Added a default report name and made the name optional in RenderlyApp. Fixed issues where the report layout was not being created in the case where all test cases run succeeded. Fixed problem where RenderlyNativeAssetManager.FetchToRandomFilename did not ensure that a directory existed before trying to copy a file to it.
Merge branch 'master' of c:/Users/billylee/mochify/renderly