All Versions
107
Latest Version
Avg Release Cycle
40 days
Latest Release
233 days ago

Changelog History
Page 2

  • v4.15.0 Changes

    This version was accidentally published as 4.15.1 due to an intermittent problem with NuGet publishing.

  • v4.14.7 Changes

    October 14, 2020

    🔄 Changed

    • 📚 Mocks created by DefaultValue.Mock now inherit SetupAllProperties from their "parent" mock (like it says in the XML documentation) (@stakx, #1074)

    🛠 Fixed

    • Setup not triggered due to VB.NET transparently inserting superfluous type conversions into a setup expression (@InteXX, #1067)
    • 🤡 Nested mocks created by Mock.Of<T>() no longer have their properties stubbed since version 4.14.0 (@vruss, @1071)
    • Verify fails for recursive setups not explicitly marked as Verifiable (@killergege, #1073)
    • 🤡 Mock.Of<> fails for COM interop types that are annotated with a [CompilerGenerated] custom attribute (@killergege, #1072)
  • v4.14.6 Changes

    September 30, 2020

    🛠 Fixed

    • 🤡 Regression since 4.14.0: setting nested non-overridable properties via Mock.Of (@mariotee, #1039)
  • v4.14.5 Changes

    July 01, 2020

    🛠 Fixed

    • Regression since version 4.11.0: VerifySet fails with NullReferenceException for write-only indexers (@Epicycle23, #1036)
  • v4.14.4 Changes

    June 24, 2020

    🛠 Fixed

    • Regression: NullReferenceException on subsequent setup if expression contains null reference (@IanYates83, #1031)
  • v4.14.3 Changes

    June 18, 2020

    🛠 Fixed

    • 🤡 Regression, Part II: Verify behavior change using DefaultValue.Mock (@DesrosiersC, #1024)
  • v4.14.2 Changes

    June 16, 2020

    🛠 Fixed

    • 🤡 Regression: Verify behavior change using DefaultValue.Mock (@DesrosiersC, #1024)
  • v4.14.1 Changes

    April 28, 2020

    ➕ Added

    • 🆕 New SetupSequence verbs .PassAsync() and .ThrowsAsync(...) for async methods with void return type (@fuzzybair, #993)

    🛠 Fixed

    • 🤡 StackOverflowException on VerifyAll when mocked method returns mocked object (@hotchkj, #1012)
  • v4.14.0 Changes

    April 24, 2020

    ➕ Added

    • A mock's setups can now be inspected and individually verified via the new Mock.Setups collection and IInvocation.MatchingSetup property (@stakx, #984-#987, #989, #995, #999)

    • New .Protected().Setup and Protected().Verify method overloads to deal with generic methods (@JmlSaul, #967)

    • Two new public methods in Times: bool Validate(int count) and string ToString() (@stakx, 975)

    🔄 Changed

    • Attempts to mark conditionals setup as verifiable are now considered an error, since conditional setups are ignored during verification. Calls to .Verifiable() on conditional setups are no-ops and can be safely removed. (@stakx, #997)

    • When matching invocations against setups, captured variables nested inside expression trees are now evaluated. Their values likely matter more than their identities. (@stakx, #1000)

    🛠 Fixed

    • Regression: Restored Capture.In use in mock.Verify(expression, ...) to extract arguments of previously recorded invocations. (@vgriph, #968; @stakx, #974)

    • Consistency: When mocking a class C whose constructor invokes one of its virtual members, Mock.Of<C>() now operates like new Mock<C>(): a record of such invocations is retained in the mock's Invocations collection (@stakx, #980)

    • After updating Moq from 4.10.1 to 4.11, mocking NHibernate session throws a System.NullReferenceException (@ronenfe, #955)

  • v4.13.1 Changes

    October 19, 2019

    🛠 Fixed

    • SetupAllProperties does not recognize property as read-write if only setter is overridden (@stakx, #886)

    • 🤡 Regression: InvalidCastException caused by Moq erroneously reusing a cached auto-mocked (DefaultValue.Mock) return value for a different generic method instantiation (@BrunoJuchli, #932)

    • AmbiguousMatchException when setting up the property, that hides another one (@ishatalkin, #939)

    • 🤡 ArgumentException ("Interface not found") when setting up object.ToString on an interface mock (@vslynko, #942)

    • 🤡 Cannot "return" to original mocked type after downcasting with Mock.Get and then upcasting with mock.As<> (@pjquirk, #943)

    • params arrays in recursive setup expressions are matched by reference equality instead of by structural equality (@danielcweber, #946)

    • 🤡 mock.SetupProperty throws NullReferenceException when called for partially overridden property (@stakx, #951)