[chef] Re: ChefSpec 3.0


Chronological Thread 
  • From: "Julian C. Dunn" < >
  • To:
  • Subject: [chef] Re: ChefSpec 3.0
  • Date: Thu, 10 Oct 2013 08:39:39 -0400

This sounds awesome and I can't wait to try it out! Thanks Seth!

- Julian

On Wed, Oct 9, 2013 at 9:33 PM, Seth Vargo 
< >
 wrote:
> Ohai Chefs!
>
> I just released chefspec-3.0.0.beta.1, which is a major refactor of the code
> base with a focus on documentation, extensibility, and modularity. The full
> CHANGELOG can be found at
> https://github.com/acrmp/chefspec/blob/master/CHANGELOG.md#300-tbd. ;(I
> highly discourage looking at the git-diff in your browser).
>
> Among the major changes are:
>
> The move to inline documentation and using examples as documentation. One of
> the biggest complaints we hear from users is the lack of documentation. The
> README was growing uncontrollably, documentation was out of sync with the
> version of ChefSpec that was actually published, and there was no way to
> document when an API was introduced/removed. I’m happy to announce that all
> of ChefSpec’s documentation is now inline YardDoc and is hosted on
> RubyDoc.info. Additionally, there are no “hard-core” examples for writing
> test. The `examples` directory in the repo is not a one-stop shop with every
> possible matcher permutation for Chef’s core resources. And better yet -
> those examples aren’t just for show - they are the all new test suite!
> Unified resource matchers. There was often confusion because some matcher
> included method chaining, and others didn’t. In ChefSpec 3, there’s a
> general ResourceMatcher that is responsible for all core resources. This
> ensures that all resources have the method chaining and magic to make things
> awesome! Centralizing all this logic also allowed for a nice refactor of the
> custom error messages. The new error messages will make it much easier to
> debug failing specs.
> Removed non-core resource matchers. In short, if it’s not in Chef-core, it’s
> not a matcher in ChefSpec-core. But wait - I wouldn’t just leave you
> hanging…
> Custom Matchers. A long-requested feature! The new modular pattern allows
> LWRP authors to package ChefSpec matchers with their LWRPs. Writing matchers
> is an incredibly pleasurable experience and requires almost no RSpec
> experience! Start packaging your matchers today :)
> All new matchers. In addition to removing all non-Chef matchers, we added
> all the core-Chef matchers.
> Easy stubbing. I’m so excited to announce that ChefSpec 3.0 includes NATIVE
> SEARCH STUBBING in a convenient and easy-to-use DSL format. It has never
> been easier to stub your requests. As part of this new functionality, we
> also added methods for stubbing data_bags and data_bag_items. And then to
> wrap it all up, we now expose a DSL method for stubbing a node object
> (useful when stubbing search results).
> Top-level configuration. In addition to passing attributes to the
> ChefSpec::Runner’s initialize method, you can now define global
> configuration options.
>
>
> That being said, ChefSpec 3.0 is a beta1. It will definitely contain
> deprecation errors, and it may contain bugs. Please help us test this
> software by upgrading your projects and reporting any errors or confusion.
>
> If you don’t want to report issue on GitHub, feel free to email me directly
> with any questions.
>
> This is a great leap forward for the Chef testing ecosystem and I’m very
> excited to finally get this out in the wild!
>
> Happy Testing!
> Seth Vargo
> Solutions Engineer, Opscode
> @sethvargo



-- 
[ Julian C. Dunn 
< >
          * Sorry, I'm    ]
[ WWW: http://www.aquezada.com/staff/julian    * only Web 1.0  ;]
gopher://sdf.org/1/users/keymaker/           * compliant!    ;]
[ PGP: 91B3 7A9D 683C 7C16 715F 442C 6065 D533 FDC2 05B9       ]



Archive powered by MHonArc 2.6.16.

§