Change made by: - running "gvt fetch" on each of the packages mentioned in Godeps/Godeps.json - `rm -rf Godeps` - tweaking the build scripts to not mention Godeps - tweaking the build scripts to test `./lib/...`, `./cmd/...` explicitly (to avoid testing vendor) - tweaking the build scripts to not juggle GOPATH for Godeps and instead set GO15VENDOREXPERIMENT. This also results in some updated packages at the same time I bet. Building with Go 1.3 and 1.4 still *works* but won't use our vendored dependencies - the user needs to have the actual packages in their GOPATH then, which they'll get with a normal "go get". Building with Go 1.6+ will get our vendored dependencies by default even when not using our build script, which is nice. By doing this we gain some freedom in that we can pick and choose manually what to include in vendor, as it's not based on just dependency analysis of our own code. This is also a risk as we might pick up dependencies we are unaware of, as the build may work locally with those packages present in GOPATH. On the other hand the build server will detect this as it has no packages in it's GOPATH beyond what is included in the repo. Recommended tool to manage dependencies is github.com/FiloSottile/gvt.
6.8 KiB
HEAD
Improvements:
Skip(message)can be used to skip the current test.- Added
extensions/table- a Ginkgo DSL for Table Driven Tests
Bug Fixes:
- Ginkgo tests now fail when you
panic(nil)(#167)
1.2.0 5/31/2015
Improvements
ginkgo -coverpkgcalls down togo test -coverpkg(#160)ginkgo -afterSuiteHook COMMANDinvokes the passed-inCOMMANDafter a test suite completes (#152)- Relaxed requirement for Go 1.4+.
ginkgonow works with Go v1.3+ (#166)
1.2.0-beta
Ginkgo now requires Go 1.4+
Improvements:
-
Call reporters in reverse order when announcing spec completion -- allows custom reporters to emit output before the default reporter does.
-
Improved focus behavior. Now, this:
FDescribe("Some describe", func() { It("A", func() {}) FIt("B", func() {}) })will run
Bbut notA. This tends to be a common usage pattern when in the thick of writing and debugging tests. -
When
SIGINTis received, Ginkgo will emit the contents of theGinkgoWriterbefore running theAfterSuite. Useful for debugging stuck tests. -
When
--progressis set, Ginkgo will write test progress (in particular, Ginkgo will say when it is about to run a BeforeEach, AfterEach, It, etc...) to theGinkgoWriter. This is useful for debugging stuck tests and tests that generate many logs. -
Improved output when an error occurs in a setup or teardown block.
-
When
--dryRunis set, Ginkgo will walk the spec tree and emit to its reporter without actually running anything. Best paired with-vto understand which specs will run in which order. -
Add
Byto help document longIts.Bysimply writes to theGinkgoWriter. -
Add support for precompiled tests:
ginkgo build <path-to-package>will now compile the package, producing a file namedpackage.test- The compiled
package.testfile can be run directly. This runs the tests in series. - To run precompiled tests in parallel, you can run:
ginkgo -p package.test
-
Support
bootstrapping andgenerateing Agouti specs. -
ginkgo generateandginkgo bootstrapnow honor the package name already defined in a given directory -
The
ginkgoCLI ignoresSIGQUIT. Prevents its stack dump from interlacing with the underlying test suite's stack dump. -
The
ginkgoCLI now compiles tests into a temporary directory instead of the package directory. This necessitates upgrading to Go v1.4+. -
ginkgo -notifynow works on Linux
Bug Fixes:
- If --skipPackages is used and all packages are skipped, Ginkgo should exit 0.
- Fix tempfile leak when running in parallel
- Fix incorrect failure message when a panic occurs during a parallel test run
- Fixed an issue where a pending test within a focused context (or a focused test within a pending context) would skip all other tests.
- Be more consistent about handling SIGTERM as well as SIGINT
- When interupted while concurrently compiling test suites in the background, Ginkgo now cleans up the compiled artifacts.
- Fixed a long standing bug where
ginkgo -pwould hang if a process spawned by one of the Ginkgo parallel nodes does not exit. (Hooray!)
1.1.0 (8/2/2014)
No changes, just dropping the beta.
1.1.0-beta (7/22/2014)
New Features:
ginkgo watchnow monitors packages and their dependencies for changes. The depth of the dependency tree can be modified with the-depthflag.- Test suites with a programmatic focus (
FIt,FDescribe, etc...) exit with non-zero status code, evne when they pass. This allows CI systems to detect accidental commits of focused test suites. ginkgo -pruns the testsuite in parallel with an auto-detected number of nodes.ginkgo -tags=TAG_LISTpasses a list of tags down to thego buildcommand.ginkgo --failFastaborts the test suite after the first failure.ginkgo generate file_1 file_2can take multiple file arguments.- Ginkgo now summarizes any spec failures that occured at the end of the test run.
ginkgo --randomizeSuiteswill run tests suites in random order using the generated/passed-in seed.
Improvements:
ginkgo -skipPackagenow takes a comma-separated list of strings. If the relative path to a package matches one of the entries in the comma-separated list, that package is skipped.ginkgo --untilItFailsno longer recompiles between attempts.- Ginkgo now panics when a runnable node (
It,BeforeEach,JustBeforeEach,AfterEach,Measure) is nested within another runnable node. This is always a mistake. Any test suites that panic because of this change should be fixed.
Bug Fixes:
ginkgo boostrapandginkgo generateno longer fail when dealing withhyphen-separated-packages.- parallel specs are now better distributed across nodes - fixed a crashing bug where (for example) distributing 11 tests across 7 nodes would panic
1.0.0 (5/24/2014)
New Features:
- Add
GinkgoParallelNode()- shorthand forconfig.GinkgoConfig.ParallelNode
Improvements:
- When compilation fails, the compilation output is rewritten to present a correct relative path. Allows ⌘-clicking in iTerm open the file in your text editor.
--untilItFailsandginkgo watchnow generate new random seeds between test runs, unless a particular random seed is specified.
Bug Fixes:
-covernow generates a correctly combined coverprofile when running with in parallel with multiple-nodes.- Print out the contents of the
GinkgoWriterwhenBeforeSuiteorAfterSuitefail. - Fix all remaining race conditions in Ginkgo's test suite.
1.0.0-beta (4/14/2014)
Breaking changes:
thirdparty/gomocktestreporteris gone. UseGinkgoT()instead- Modified the Reporter interface
watchis now a subcommand, not a flag.
DSL changes:
BeforeSuiteandAfterSuitefor setting up and tearing down test suites.AfterSuiteis triggered on interrupt (^C) as well as exit.SynchronizedBeforeSuiteandSynchronizedAfterSuitefor setting up and tearing down singleton resources across parallel nodes.
CLI changes:
watchis now a subcommand, not a flag--nodotflag can be passed toginkgo generateandginkgo bootstrapto avoid dot imports. This explicitly imports all exported identifiers in Ginkgo and Gomega. Refreshing this list can be done by runningginkgo nodot- Additional arguments can be passed to specs. Pass them after the
--separator --skipPackageflag takes a regexp and ignores any packages with package names passing said regexp.--traceflag prints out full stack traces when errors occur, not just the line at which the error occurs.
Misc:
- Start using semantic versioning
- Start maintaining changelog
Major refactor:
- Pull out Ginkgo's internal to
internal - Rename
exampleeverywhere tospec - Much more!