+
Skip to content

2.2.0

Compare
Choose a tag to compare
@nigelcharman nigelcharman released this 14 Jul 10:11
· 192 commits to master since this release

New Features

The new features are:

Individual examples can also be ignored by marking up the example in the specification with a status of Ignored. For example, using Markdown format:

### [Header text](- "example name c:status=Ignored")

or in HTML:

<div c:example="my-example" c:status="Ignored">

Fixes

  • #264 - Fix for issues #246 and #262 - Example listeners are passed the wrong example fixture instance when a specification contains multiple examples.

API changes for extensions

This release introduces a number of API changes.

These changes won't impact users of Concordion directly, but may impact extension users and creators. If you are using an affected extension, you will be notified on startup of Concordion via a message to the stderr console.

If you are using the following extensions, they will need to be upgraded:

concordion-executeonlyif-extension

Will need upgrading to version 0.3.0 (or later)

concordion-run-totals-extension

Will need upgrading to version 1.2.0 (or later)

concordion-embed-extension

Uses APIs that are now deprecated, should be upgraded to version 1.2.0 (or later) before Concordion 3.0.0.

concordion-excel-extension

Uses APIs that are now deprecated, should be upgraded to version 2.1.0 (or later) before Concordion 3.0.0

concordion-screenshot-extension

Uses APIs that are now deprecated, should be upgraded to version 1.3.0 (or later) before Concordion 3.0.0

API changes

The following public APIs have been changed:

org.concordion.Concordion

  • Parameter 5 of public Concordion(java.util.List, org.concordion.api.SpecificationLocator, org.concordion.api.SpecificationReader, org.concordion.api.EvaluatorFactory, org.concordion.api.Fixture) has changed its type to org.concordion.api.FixtureDeclarations
  • The deprecated constructor public Concordion(org.concordion.api.SpecificationLocator, org.concordion.api.SpecificationReader, org.concordion.api.EvaluatorFactory, org.concordion.api.Fixture) has been removed
  • Parameter 1 of public void checkValidStatus(org.concordion.api.Fixture) has changed its type to org.concordion.api.FixtureDeclarations
  • Parameter 1 of public java.util.List getExampleNames(org.concordion.api.Fixture) has changed its type to org.concordion.api.FixtureDeclarations
  • In method public boolean hasExampleCommands(org.concordion.api.Fixture) the Fixture argument has been removed

org.concordion.api.AbstractCommandDecorator,
org.concordion.api.Command,
org.concordion.api.CommandCall,
org.concordion.api.CommandCallList

  • The setup, execute and verify methods now take an additional argument of type org.concordion.api.Fixture

org.concordion.api.CommandCallList

  • The processSequentially method now takes an additional argument of type org.concordion.api.Fixture

org.concordion.api.EvaluatorFactory

  • The argument of the createEvaluator method has changed type from java.lang.Object toorg.concordion.api.Fixture

org.concordion.api.Fixture

  • Removed org.concordion.api.FixtureDeclarations from the set of implemented interfaces, along with the methods List getClassHierarchyParentFirst(), List getClassPathRoots(), Class getFixtureClass(), String getFixturePathWithoutSuffix(), org.concordion.internal.FixtureType getFixtureType() and public String getSpecificationDescription()

org.concordion.api.FixtureDeclarations

  • Added String getDescription(), Class getFixtureClass() and String getFixturePathWithoutSuffix()

org.concordion.api.ResultSummary

  • The assertIsSatisfied, print and printCountsToString methods all take a org.concordion.api.FixtureDeclarations parameter in-place of org.concordion.api.Fixture
  • The deprecated versions of these methods have been removed

org.concordion.api.Specification

  • Added 'String getDescription()' method
  • void process(org.concordion.api.Evaluator, org.concordion.api.ResultRecorder) now takes an additional parameter of type org.concordion.api.Fixture

org.concordion.api.SpecificationByExample

  • String getSpecificationDescription() and void setFixture(org.concordion.api.Fixture) have been removed
  • void processExample(org.concordion.api.Evaluator, java.lang.String, org.concordion.api.ResultRecorder) now takes an additional parameter of type org.concordion.api.Fixture

org.concordion.api.SpecificationLocator

  • Parameter 1 of org.concordion.api.Resource locateSpecification(java.lang.Object, java.lang.String) has changed its type to org.concordion.api.FixtureDeclarations
  • Method public org.concordion.api.Resource locateSpecification(java.lang.Object) has been removed

org.concordion.api.SpecificationLocatorWithType

  • Class org.concordion.api.SpecificationLocatorWithType removed

org.concordion.api.extension.ConcordionExtender

  • Method 'public org.concordion.api.extension.ConcordionExtender withImplementationStatusModifier(org.concordion.api.ImplementationStatusModifier)' has been added

org.concordion.api.listener.ExampleEvent,
org.concordion.api.listener.OuterExampleEvent

  • Method 'public ExampleEvent(java.lang.String, org.concordion.api.Element, org.concordion.api.ResultSummary)' has a new parameter of type org.concordion.api.Fixture
  • Method 'public org.concordion.api.Fixture getFixture()' has been added

The other internal changes should not affect users who are using Concordion as-is, or who are using the Extension mechanism, but are potentially breaking for users who are extending the Concordion code base directly. See changes between Concordion 2.1.3 and 2.2.0.

点击 这是indexloc提供的php浏览器服务,不要输入任何密码和下载