Clean up require statements
Improve Error Handling with invalid config

Implement Error Handling when an invalid config is parsed.
Merge pull request #14 from fpringvaldsen/error-handling

Improve Error Handling with invalid config
Merge pull request #13 from cprice404/maint/master/clean-up-requires

Clean up require statements
Fix default Rake task for ruby-1.8.7-p352

Signed-off-by: Wayne <wayne@puppetlabs.com>
Fix tokenizer for ruby-1.8.7-p352

Signed-off-by: Wayne <wayne@puppetlabs.com>
Fix uninitialized constant error in ruby-1.8.7-p352

Signed-off-by: Wayne <wayne@puppetlabs.com>
Fix re-parsed output test cases.

This testcase should not care about the rendered form of the re-parsed output
since A) the hocon spec does not guarantee exact output similarity and B)
testing that comments remain above the variables they describe is taken care of
in the previous test case.

Signed-off-by: Wayne <wayne@puppetlabs.com>
Minor rspec testcase code cleanup.

Signed-off-by: Wayne <wayne@puppetlabs.com>
Remove unnecessary brackets in regex.

Signed-off-by: Wayne <wayne@puppetlabs.com>
Fix unecessarily strict test case.

As it turns out, hocon does not actually require that the output be
rendered in the same order by every implementation so when running with
ruby-1.9.x vs ruby-1.8.7-p352 for instance the rendered string may not have
variables specified in the same order.

However, hocon does require that comments be matched to their variables. This
patch validates that behavior by creating a hash of config-lines mapped to lists
of preceding comments and verifies that this hash is the same before and after
rendering regardless of which hocon implementation created the "original" output
file.

Also, I find the input vs output semantics and the way variables with these
names are used just a little confusing but whatever.

Signed-off-by: Wayne <wayne@puppetlabs.com>
Merge pull request #15 from waynr/maint

(MAINT) Fix spec tests such that they work on ruby-1.8.7-p352