When PesterThrow catches an unexpected exception, record the source
of the exception into the exception message
Merge pull request #147 from dmonger/print-exception-source

When PesterThrow catches an unexpected exception, record the source of the exception into the exception message
Update changelog for PR 147
Fix calls to Test-Path

When mocking Test-Path I was getting error: Mock for Test-Path was
called but it does not exist in the mock table.
Initial implementation of BeforeEach / AfterEach

User-Defined setup and teardown blocks that execute before and after each "It" block.  Scope rules based on what I read in rspec's documentation; Setup blocks are executed from the Describe scope first, then Context.  For teardown, it's in reverse; the innermost (Context) teardown blocks are executed, then the outer (Describe) blocks.

For now, the code allows you to define multiple blocks in the same scope, and they are executed in the order they were defined.

BeforeEach and AfterEach blocks can be defined anywhere within a Context or Describe block; they are parsed and loaded before the body of the Context / Describe is executed.  This is different from how PowerShell code normally behaves, but was a desired feature in the initial discussion.
CodeCoverage of files containing DSC Configurations

DSC's use of dynamic keywords screws with the code coverage breakpoint-based implementation quite a bit.
This commit gets it working, more or less, by ignoring commands in the file which do not trigger breakpoints even when they're executed (based on trial and error.)
Small update

Revised new code slightly so most of it is only executed on PowerShell v4+.  Dynamic keywords didn't exist in v3.0, and executing IsChildOfHashtableDynamicKeyword might have caused errors when StrictMode is enabled.
Merge pull request #158 from dlwyatt/SetupTeardown

Add initial implementation of BeforeEach / AfterEach
Add beforeeach aftereach changelog
Merge pull request #163 from dlwyatt/CoverageOfConfiguration

CodeCoverage of files containing DSC Configurations
CodeCoverage of files containing DSC Configurations changelog
Revert "CodeCoverage of files containing DSC Configurations changelog"

This reverts commit ff03f95ca0d12629cac16637cee0e1ea10c1ab77.
Revert "Add beforeeach aftereach changelog"

This reverts commit 3f04e42a8781b046778e7a94e42fd8f65eedcccd.
Update chanegelog
Change formatting to comply with rules discussed in #161
Removed EnableLegacyExpectations switch

Actual legacy expectations functionality was removed back in commit cdcb7d6 , but the switch parameter was still defined on the Invoke-Pester command.
Rolling back some earlier Pester Scope changes

Per discussions with @nohwnd, the idea of having "It" be its own Pester scope (clearing Mocks and TestDrive contents the same way Context and Describe do) feels a bit awkward in practice.  We're starting to roll back those changes until we find the right balance; for now, Mocks are still affected by It scopes, but TestDrive has reverted back to Pester 2.0 behavior (only rolling back TestDrive contents when exiting a Context or Describe block.)

Also, default behavior of Assert-MockCalled has changed to be more in line with Pester 2.0 behavior, possibly allowing old test scripts to function without any modifications.  The default value for the Scope parameter is now either Context or Describe, depending on whether there is a currently-active Context block.  You can still pass in -Scope <Describe | Context | It> to override this behavior, if desired.

Tests of these bits have been updated to match the new behavior.  Possibly more changes coming along these lines, once we've tested this revision a bit.
Invoke-Pester tests path fix.

At some point while working on the early 3.0 beta code, we changed from executing *.Tests.ps1 with Invoke-Pester to just *Tests.ps1 .  I'm not sure why this was done, but it represents an unnecessary breaking change (and a bug, considering that New-Fixture still assumes that tests file will end in ".Tests.ps1", and the script under test will be named identically without the ".Tests" portion.)

Reverted this filter back to "*.Tests.ps1".
Merge pull request #164 from dlwyatt/ScopeBehaviorChanges

Rolling back some earlier Pester Scope changes
Merge pull request #165 from dlwyatt/LegacyExpectationsCleanup

Legacy expectations cleanup