All Versions
16
Latest Version
Avg Release Cycle
140 days
Latest Release
329 days ago

Changelog History
Page 1

  • v2.3.0

    March 01, 2019

    ➕ Added

    • 👍 Allows more control over factory definitions ([#333])
    • ➕ Adds ability to reset specific sequences ([#331])

    📄 Docs

    • ➕ Adds additional callbacks for functions with default params ([#319])
  • v2.2.2

    November 05, 2018
    • ➕ Adds support for Ecto 3.0 (#301)
  • v2.2.1

    October 24, 2018

    🛠 Fixed

    • 🛠 Fixes sequence typespec (#278)

    ✂ Removed

    • ✂ Removed fields_for/2 function that would raise an error since 1.0.0 (#287)

    📄 Docs

    • ➕ Adds example for derived attribute (#264)
    • ➕ Adds example for dependent factory (#239)
  • v2.2.0

    March 13, 2018

    ➕ Added

    • ➕ Adds support for using lists in sequences (#227).

    🛠 Fixed

    • Elixir 1.6.x changed the behavior of Regex.split/3 which caused factory names to break. Added a fix in (#275).
  • v2.1.0

    August 31, 2017

    ➕ Added

    🛠 Fixed

    👌 Improved

    • 📚 Miscellaneous documentation improvements.
  • v2.0.0

    March 03, 2017

    ➕ Added

    • Cast all values before insert (#149)

    For example, this means that if you have field :equity, :decimal in your schema, you can set the value to 0 in your factory and it will automatically cast the value to a Decimal.

    • Add string_params_for, which is useful for controller specs. (#168)
    • ➕ Add Sequence.reset/0 for resetting sequences between tests. (#151)

    🔄 Changed

    • params_* functions now drop fields with nil values (#148)
    • Don't delete has_manys from params_* functions (#174)

    🛠 Fixed

    • 🛠 Fix an issue where values on embedded associations would not be cast (#200)
    • Only drop autogenerated ids (#147)
    • 🛠 Fix an issue where setting an association to nil would break insert (#193)
    • 🛠 Fix an issue where unbuild has_many through associations were not removed in params_* functions (#192)
  • v1.0.2

    July 01, 2016

    📚 Minor documentation fixes

  • v1.0.1

    June 24, 2016

    Small change to the error generated when a factory definition is not found (#142)

  • v1.0.0

    June 24, 2016

    ⬆️ A lot has changed but we tried to make upgrading as simple as possible.

    ⬆️ To upgrade: In mix.exs change the version to "~> 1.0" and run mix ⚡️ deps.get. Once you've updated, run mix test and ExMachina will raise errors that show you what needs to change to work with 1.0.0.

    🛠 Fixed

    • 🛠 Fix compilation issues under OTP 19 (#138)
    • Raise helpful error when trying to insert twice (#128)

    ➕ Added

    • ➕ Add Sequence.next/1 for quickly creating sequences. Example: sequence("username") will generate "username1", then "username2" (#84)
    • Raise if passing invalid keys to structs (#99)
    • Add params_with_assocs (#124)

    🔄 Changed

    • Rename fields_for to params_for (#98)
    • If using ExMachina with Ecto, use insert, insert_list and insert_pair instead of create_*
    • Instead of defining a custom save_record, you can now implement an ExMachina.Strategy. See the documentation on hex.pm for more info (#102)
    • 👀 Define factory as user_factory instead of factory(:user) (#110). See PR and related issue for details on why this was changed.
    • params_for no longer returns the primary key (#123)
  • v0.6.2

    September 12, 2016