./devel/ruby-flexmock, Flexible mock object library for Ruby unit testing

[ CVSweb ] [ Homepage ] [ RSS ] [ Required by ] [ Add to tracker ]


Branch: CURRENT, Version: 3.0.1, Package name: ruby32-flexmock-3.0.1, Maintainer: pkgsrc-users

FlexMock is a flexible mocking library for use in unit testing and
behavior specification. Mocks are defined with a fluent API that
makes mock specifications easy to read and easy to remember.


Required to run:
[lang/ruby24-base]

Required to build:
[pkgtools/cwrappers]

Master sites:

Filesize: 68 KB

Version history: (Expand)


CVS history: (Expand)


   2024-09-18 17:09:33 by Takahiro Kambe | Files touched by this commit (2) | Package updated
Log message:
devel/ruby-flexmock: update to 3.0.1

3.0.0 (2024-07-18)

* Added keyword argument and explicit proc support.  Keyword argument
  support is Ruby 3.0+ only, getting the support to work on Ruby 2.7 deemed
  to be too complicated.  See the release notes for 2.4 below for
  information about how migration can be done smoothly

* with now expects all expected keyword arguments to be explicitly given in
  a natural way, for instance:

	mock.should_receive(:m).with("some", "args", with: 42)

  The values given to the arguments can be any matcher valid for the
  positional arguments

* note that not giving any keyword arguments to with is interpreted as a
  negative (no keyword arguments are expected), and will fail if some
  arguments are given.  Call with_any_kw_args after the with if you do not
  desire validation of keyword arguments:

	mock.should_receive(:m).with("some", "args").with_any_kw_args

* for more complex matches, pass a match object to the with_kw_args method.
  For instance, to match only some keyword arguments, do

	mock.should_receive(:m).with("some", \ 
"args").with_kw_args(hsh(with: 42))

* this release also makes matching procs explicit.  Instead of passing Proc
  at the end of with as in 2.x, call with_block or with_no_block.  If
  neither are called, flexmock won't validate either way (ignore whether or
  not a block was given).  The default is to not match blocks, that is
  working

* The default is to assume that blocks are optional (i.e. flexmock will
  match either way).  Nonetheless, the method with_optional_block is
  implemented to help migration from flexmock 2.4.0 (but is a no-op).

3.0.1 (2024-09-09)

* fix: handling of blocks in pass_thru (v3.0)
   2023-08-26 15:29:48 by Takahiro Kambe | Files touched by this commit (3) | Package updated
Log message:
devel/ruby-flexmock: update to 2.3.8

2.3.8 (2023-08-13)

* remove executable flag on all lib ruby files
* in partial mocks, find the original method through metaprogramming
* CI: Drop unused Travis sudo: false directive
* Gemfile: use https for RubyGems.org
* update required ruby version to 2.2, and update Travis ruby versions
* CI: Use JRuby in the matrix
* update the links in doc/
* README: Use SVG badges
* fix: spelling of Minitest
* chore: run tests through GitHub actions
* Fixes support for minitest >= 5.19
   2021-10-26 12:20:11 by Nia Alarie | Files touched by this commit (3016)
Log message:
archivers: Replace RMD160 checksums with BLAKE2s checksums

All checksums have been double-checked against existing RMD160 and
SHA512 hashes

Could not be committed due to merge conflict:
devel/py-traitlets/distinfo

The following distfiles were unfetchable (note: some may be only fetched
conditionally):

./devel/pvs/distinfo pvs-3.2-solaris.tgz
./devel/eclipse/distinfo eclipse-sourceBuild-srcIncluded-3.0.1.zip
   2021-10-07 15:44:44 by Nia Alarie | Files touched by this commit (3017)
Log message:
devel: Remove SHA1 hashes for distfiles
   2018-02-28 17:46:02 by Takahiro Kambe | Files touched by this commit (2) | Package updated
Log message:
devel/ruby-flexmock: update to 2.3.6

* fix interaction between based partials, signature matching and 'explicitly'
   2017-03-13 17:24:36 by Takahiro Kambe | Files touched by this commit (3)
Log message:
Update ruby-flexmock to 2.3.5.

2.3.2

* Make test-unit make_assertion compatible with new code.

2.3.3

* Define should_expect on partial mocks as well.
* Fix unused variable

2.3.4

* Workaround Ruby 2.0.x brokenness w.r.t. singletons of classes

2.3.5

* Avoid deprecated Fixnum warnings on Ruby 2.4.0.
* Add a LICENSE.txt file.
   2016-11-01 17:49:22 by Takahiro Kambe | Files touched by this commit (2)
Log message:
Update ruby-flexmock to 2.3.1.

* fix mocking methods that are defined as private on Object
* remove test of experimental stuff I can't understand
* allow to stack verification contexts recursively using FlexMock.use
* add some missing tests
* fix stubbing the same method multiple times on a partial mock when
  partials_verify_signatures is set
* fix signature validation when the last positional argument of a call is
  a hash
* fix signature validation in presence of both keywords and blocks
   2016-10-20 16:36:17 by Takahiro Kambe | Files touched by this commit (2)
Log message:
Update ruby-flexmock to 2.3.0.

2.3.0:
 - implemented validation of call arity for partial mocks. By setting
     FlexMock.partials_verify_signatures = true
   flexmock will verify on partials that the number of arguments, and the
   keyword arguments passed to the mocked call match the existing method's
   signature

2.2.0:

 - #new_instances now mocks the #initialize method instead of mocking after the
   allocation was done. This allows to do mock methods called by #initialize
   itself. Behaviour when the allocator is explicitely provided is left
   unchanged, which means that the old behaviour is still available by passing
   :new to new_instances.