Changelog History
Page 2
-
v5.3.0-beta.1 Changes
October 08, 2019๐ New
- ๐ Make Dummy ValueTuples' members Dummies, to match Tuple (#1637)
- Detect and reject an "argument constraint factory method" that produces multiple constraints (#1628)
๐ Fixed
- Fakes that wrap another object are not considered to be equal to themselves (#1630)
- ๐ป Exception thrown from argument constraint factory prevents detection of misused
A<T>._
,A<T>.Ignored
, orA<T>.That
(#1644) - ๐ป Exception thrown by argument constraint factory is wrapped in
TargetInvocationException
, notUserCallbackException
(#1646) - Exceptions thrown by "action" callbacks are wrapped in
UserCallbackException
(#1640)
โ Additional Items
- ๐ Build requires Visual Studio 2019 or Visual Studio Build Tools 2019, and tests now run against netcoreapp3.0 (#1632)
- โ Add parentheses to test method in quickstart (#1621)
- โ Pre-reduce nullable warnings (#1620)
- Check for nullity using
is null
oris object
(#1624) - Protect out and ref parameters value producer (#1625)
- Simplify type checking in
AnyCallRule
(#1626) - โก๏ธ Update Bullseye, SimpleExec, and MinVer (#1631)
- ๐ฆ Embed FakeItEasy icon in package (#1627)
- ๐ GitHub API calls fail during deployment (#1618)
๐ With special thanks for contributions to this release from:
- Soheil Alizadeh - @xsoheilalizadeh
- Adam Ralph - @adamralph
-
v5.2.0 Changes
September 05, 2019๐ New
- โ Add overloads of Invokes, ReturnsLazily, etc for methods with 5โ8 parameters (#1606)
Previously overloads handled up to 4 parameters.
โ Additional Items
- Move NUGET_API_KEY and other variables out of appveyor.yml and into environment variables (#1609)
- โก๏ธ Update Bullseye to 3.0.0-beta.3 and SimpleExec to 6.1.0-beta.1 (#1612)
- ๐ Shorten input values in build logs (#1615)
- โก๏ธ Update PublicApiGenerator to 9.3.0 (#1616)
๐ With special thanks for contributions to this release from:
- Adam Ralph - @adamralph
- โ Add overloads of Invokes, ReturnsLazily, etc for methods with 5โ8 parameters (#1606)
-
v5.1.2 Changes
August 30, 2019๐ Fixed
- ๐ป Stack overflow exception when creating second Fake of type that takes a parameter of its own type (#1603)
โ Additional Items
- ๐ Replace term "framework" with "library" in docs (#1587)
- โ Remove Source Browser badge and link (#1589)
- โก๏ธ Update SimpleExec to 6.0.0 (#1594, #1595)
- โก๏ธ Update Bullseye to 2.4.0-rc.2 (#1595, #1596)
- ๐ Fix failing test by no longer creating a fake in
WrapsAValidObjectOptionsBuilder
static constructor (#1600)
๐ With special thanks for contributions to this release from:
- Bjorn Ramakers - @Rmkrs
- Adam Ralph - @adamralph
-
v5.1.1 Changes
April 15, 2019๐ Fixed
- Calls are recorded after applying the best rule, not when received (#1583)
โ Additional Items
- ๐ Fix typo in Why was FakeItEasy created? (#1582)
- ๐ Fix deployment failure due to "The filename, directory name, or volume label syntax is incorrect." (#1576)
- โฌ๏ธ Upgrade MinVer to 1.0.0-rc.1 (#1578)
๐ With special thanks for contributions to this release from:
- Donovan Edye - @natiki
- Adam Ralph - @adamralph
-
v5.1.0 Changes
February 11, 2019๐ New
- ๐ Support for naming fakes (#1488)
- Have ReturnsNextFromSequence guard against null values (#1572)
๐ Fixed
- ๐ง Concurrent calls and (implicit or explicit) configuration changes to Fakes are not threadsafe (#1569)
โ Additional Items
- Replace readthedocs GitHub service integration with webhook (#1565)
- โฌ๏ธ Upgrade ILMerge to 3.0.21 (#1567)
- โฌ๏ธ Upgrade SimpleExec to 5.0.0-beta.1 (#1570)
- โฌ๏ธ Upgrade Minver to 1.0.0-beta.4 (#1574)
๐ With special thanks for contributions to this release from:
- Adam Ralph - @adamralph
- Rodney Richardson - @RodneyRichardson
-
v5.0.1 Changes
January 14, 2019๐ Fixed
- Raising internal events silently fails (#1560)
โ Additional Items
- ๐ Switch from licenseUrl to license in NuGet package metadata (#1556)
- โ Remove defunct .gitignore entries (#1558)
- ๐ Filter out all release issues from milestone when preparing release (#1559)
๐ With special thanks for contributions to this release from:
-
v5.0.0 Changes
January 07, 2019๐ New
- ๐ง Greatly reduced time to create, configure, call, and assert on Fakes (#1466, #1469, #1470, #1489, #1493, #1507)
- ๐ง Warn at configuration time that delegates can't call a base method (#1492)
๐ Changed
- ๐ No longer passing
IFakeObjectCallRule
toIInterceptionListener.OnAfterCallIntercepted
(#1494, #1521) - ๐ Restrict typeparams in generic Fake creation methods to reference types, and free-form delegates to
Delegate
types (#1465) - ๐ Renamed
IRepeatConfiguration
type used in fluent API toIBehaviorLifetimeConfiguration
(#1294) - Can only fake delegates accessible to DynamicProxy (#1508)
- Fakes, and custom exceptions thrown by the library, are no longer binary serializable (#1500)
โ Removed from the public API
- โ
Automatic fake injection into system under test (
InitializeFixture
) (#992) IInterceptedFakeObjectCall.AsReadOnly
(#1505)Raise.With<TEventHandler>
(#1152)
๐ UseRaise.FreeForm.With
(orRaise.FreeForm(Of TEventHandler).With
for VB) instead.- ๐ฆ Analyzer meta-package FakeItEasy.Analyzer (#1509)
๐ Use FakeItEasy.Analyzer.CSharp or FakeItEasy.Analyzer.VisualBasic instead
๐ Deprecated
Specifying call count constraints using
Repeated
(#1295)
๐ Use one of the following formats instead:A.CallTo(() => foo.Bar()).MustHaveHappened();A.CallTo(() => foo.Bar()).MustNotHaveHappened();A.CallTo(() => foo.Bar()).MustHaveHappenedOnceExactly();A.CallTo(() => foo.Bar()).MustHaveHappenedOnceOrMore();A.CallTo(() => foo.Bar()).MustHaveHappenedOnceOrLess();A.CallTo(() => foo.Bar()).MustHaveHappenedTwiceExactly();A.CallTo(() => foo.Bar()).MustHaveHappenedTwiceOrMore();A.CallTo(() => foo.Bar()).MustHaveHappenedTwiceOrLess();A.CallTo(() => foo.Bar()).MustHaveHappened(4, Times.Exactly);A.CallTo(() => foo.Bar()).MustHaveHappened(6, Times.OrMore);A.CallTo(() => foo.Bar()).MustHaveHappened(7, Times.OrLess);A.CallTo(() => foo.Bar()).MustHaveHappenedANumberOfTimesMatching(n => n % 2 == 0);
โ Additional Items
- โฌ๏ธ Drop GitFlow in favour of GitHub flow (#1487)
- ๐ Small improvements to
prepare_release
command (#1538, #1539, #1540) - ๐ Correct documentation on return value when
Invokes
is used (#1552, #1553) - Very explicitly state how to invoke custom calls for methods that take more than 4 arguments (#1496)
- Document advanced usage methods (#1474)
- Simplify ServiceLocator (#1478)
- ๐ Move most proxy generator tests to specs (#1495)
- ๐ Characterize/figure out serialization support (#1499)
- โฌ๏ธ Upgrade Bullseye to 2.3.0-beta.6 (#1464, #1471, #1524, #1528, #1531, #1534)
- โฌ๏ธ Upgrade Xbehave.Core to 2.4.0 (#1480)
- โฌ๏ธ Upgrade SimpleExec to 4.2.0 (#1502, #1531)
- โฌ๏ธ Upgrade Microsoft.NET.Test.Sdk to 15.9.0 (#1482)
- ๐ Use MinVer to generate version numbers (#1516)
- ๐จ Refactored build script (#1520, #1523)
- ๐ Show messages only (no stack trace) for exceptions during build (#1529)
- โ Remove MonoDevelop section from sln (#1533)
- โ Remove obsolete branches from the repository (#1535)
๐ With special thanks for contributions to this release from:
- Adam Ralph - @adamralph
-
v5.0.0-beta.1 Changes
December 18, 2018๐ Fixed
- Exceptions thrown by
Invokes
callbacks are wrapped inUserCallbackException
(#1543, #1547) - ๐ง Array creation within fake call configuration fails due to type mismatch (#1548)
โ Additional Items
- โฌ๏ธ Drop GitFlow in favour of GitHub flow (#1487)
- ๐ Small improvements to
prepare_release
command (#1538, #1539, #1540)
๐ With special thanks for contributions to this release from:
- Exceptions thrown by
-
v5.0.0-alpha.1 Changes
December 10, 2018๐ Changed
- ๐ No longer passing
IFakeObjectCallRule
toIInterceptionListener.OnAfterCallIntercepted
(#1494, #1521) - ๐ Restrict typeparams in generic Fake creation methods to reference types, and free-form delegates to
Delegate
types (#1465) - ๐ Renamed
IRepeatConfiguration
type used in fluent API toIBehaviorLifetimeConfiguration
(#1294) - Can only fake delegates accessible to DynamicProxy (#1508)
- Fakes, and custom exceptions thrown by the library, are no longer binary serializable (#1500)
โ Removed from the public API
- โ
Automatic fake injection into system under test (
InitializeFixture
) (#992) IInterceptedFakeObjectCall.AsReadOnly
(#1505)Raise.With<TEventHandler>
(#1152)
๐ UseRaise.FreeForm.With
(orRaise.FreeForm(Of TEventHandler).With
for VB) instead.- ๐ฆ Analyzer meta-package FakeItEasy.Analyzer (#1509)
๐ Use FakeItEasy.Analyzer.CSharp or FakeItEasy.Analyzer.VisualBasic instead
๐ Deprecated
Specifying call count constraints using
Repeated
(#1295)
๐ Use one of the following formats instead:A.CallTo(() => foo.Bar()).MustHaveHappened();A.CallTo(() => foo.Bar()).MustNotHaveHappened();A.CallTo(() => foo.Bar()).MustHaveHappenedOnceExactly();A.CallTo(() => foo.Bar()).MustHaveHappenedOnceOrMore();A.CallTo(() => foo.Bar()).MustHaveHappenedOnceOrLess();A.CallTo(() => foo.Bar()).MustHaveHappenedTwiceExactly();A.CallTo(() => foo.Bar()).MustHaveHappenedTwiceOrMore();A.CallTo(() => foo.Bar()).MustHaveHappenedTwiceOrLess();A.CallTo(() => foo.Bar()).MustHaveHappened(4, Times.Exactly);A.CallTo(() => foo.Bar()).MustHaveHappened(6, Times.OrMore);A.CallTo(() => foo.Bar()).MustHaveHappened(7, Times.OrLess);A.CallTo(() => foo.Bar()).MustHaveHappenedANumberOfTimesMatching(n => n % 2 == 0);
๐ New
- ๐ง Greatly reduced time to create, configure, call, and assert on Fakes (#1466, #1469, #1470, #1489, #1493, #1507)
- ๐ง Warn at configuration time that delegates can't call a base method (#1492)
โ Additional Items
- Document advanced usage methods (#1474)
- Simplify ServiceLocator (#1478)
- ๐ Move most proxy generator tests to specs (#1495)
- ๐ Characterize/figure out serialization support (#1499)
- โฌ๏ธ Upgrade Bullseye to 2.3.0-beta.6 (#1464, #1471, #1524, #1528, #1531, #1534)
- โฌ๏ธ Upgrade Xbehave.Core to 2.4.0 (#1480)
- โฌ๏ธ Upgrade SimpleExec to 4.2.0 (#1502, #1531)
- โฌ๏ธ Upgrade Microsoft.NET.Test.Sdk to 15.9.0 (#1482)
- ๐ Use MinVer to generate version numbers (#1516)
- ๐จ Refactored build script (#1520, #1523)
- ๐ Show messages only (no stack trace) for exceptions during build (#1529)
- โ Remove MonoDevelop section from sln (#1533)
- โ Remove obsolete branches from the repository (#1535)
๐ With special thanks for contributions to this release from:
- Adam Ralph - @adamralph
- ๐ No longer passing
-
v4.9.2 Changes
December 13, 2018