RudeMocks

The latest news on the RudeMocks C++ mocking framework.

RudeMocks header image 1

UnitTest++ Support

February 29th, 2012 by Martin Ecker · 2 Comments

The unit tests of RudeMocks can now also be built and run with the UnitTest++ unit testing framework. Grab the latest drop from the git repository from SourceForge.

Pocket

→ 2 CommentsTags: News

Stripped-Down Version of Boost Added

February 23rd, 2012 by Martin Ecker · No Comments

A stripped-down version of all the dependencies that RudeMocks has on various Boost libraries is now checked into the git repository in the external/Boost folder. This makes it easier to compile RudeMocks straight out of the box without having to hunt down any external dependencies. You can still build against an official Boost distribution after making a minor change to the project files to use a different include directory.

Note that RudeMocks exclusively uses header-only libraries from Boost. The RudeMocks unit test project, however, requires the Boost.Test library, which is not header-only and needs to be built into a library file. The checked in version of Boost provides convenient Visual Studio projects

RudeMocks now also has full Visual C++ 10/Visual Studio 2010 and Visual C++ 11/Visual Studio 11 support.

Pocket

→ No CommentsTags: News

Subversion Repository Migrated to Git

February 20th, 2012 by Martin Ecker · No Comments

The RudeMocks Subversion repository has been fully migrated to Git (including the history). I’ve started using Git for all my other projects in favor of Subversion and so it was only a natural progression to also migrate the RudeMocks project over.

The Git repository URL is git://rudemocks.git.sourceforge.net/gitroot/rudemocks/rudemocks.

More information on the Git repository can be found on the SourceForge page: https://sourceforge.net/scm/?type=git&group_id=204128

You can browse the Git repository online here: http://rudemocks.git.sourceforge.net/git/gitweb-index.cgi

 

 

Pocket

→ No CommentsTags: News

Beta Coming Soon 2 – New Subversion Snapshot

March 13th, 2008 by Martin Ecker · No Comments

Well, those few weeks in my last post have turned into a few months, mostly due to me going back home for vacation over Christmas and New Year’s and now due to heavy workload at work. But do not fret, the beta is still coming and I have not stopped working on RudeMocks. There are still some issues to work out with exception handling with gcc. Unfortunately, I’m having a hard time debugging this stuff since I’m not really used to using gdb, and I have to say it really sucks compared to Visual Studio’s debugger. So once work slows down a bit again hopefully in two to four weeks, expect a beta release.

However, I have posted a new Subversion snapshot of the current work branch. There are numerous bug fixes, a number of new unit tests, Visual Studio 2008 (Visual C++ 9.0) support, explicit syntax support for stubs, and some other things I’m forgetting. Go grab it from the SourceForge project page.

There’s also a new snapshot of the version of Boost that I use to build it. This is a fairly recent Subversion snapshot of the Boost repository with custom-made Visual Studio 2005/2008 build files. Grab it here. This is a complete repository snapshot that additionally contains the custom build files and the library/DLL files.

Pocket

→ No CommentsTags: News

Beta Coming Soon

November 14th, 2007 by Martin Ecker · No Comments

A first public beta of RudeMocks will be available soonish, i.e. in about a week or two. I’m still hammering out the last issues. In particular, some of the samples assert with the gcc build. Unfortunately it’s really a pain to debug with gdb, even with a nice front end as provided by the CodeBlocks IDE. It crashes quite often or doesn’t properly show me the call stack when an assert occurs. Looking at the disassembly sometimes takes forever.

It’s incredible how much the Microsoft Visual Studio debugger blows the entire competition out of the water. IMHO it is by far (and we’re talking light years here) the best C++ debugger.

Apart from that I’m also trying to get RudeMocks to work on the Xbox360, which is almost complete and working, but very likely won’t ever be released to the public due to NDAs 🙁

Pocket

→ No CommentsTags: News

GCC Support Added

October 14th, 2007 by Martin Ecker · No Comments

RudeMocks now also supports the MingW GCC compiler on Windows and x86 processors. Build files for the CodeBlocks IDE are provided. You will need a recent nightly snapshot to use them, though. The latest CodeBlocks release candidate will not do the trick. With GCC support, a Linux port should be fairly straightforward. Only the MemoryUnprotector class needs to be implemented for RudeMocks to run on Linux/x86.

Unfortunately, there’s no news on the virtual inheritance support front. Implementing this, especially with MSVC, has proven to be fairly difficult. The only good and clean way of supporting virtual inheritance that I’ve found so far is by having the client create a proper instance of the class using virtual inheritance and then transforming it into a mock.

Pocket

→ No CommentsTags: News

New Snapshot in Subversion

September 14th, 2007 by Martin Ecker · No Comments

I’ve just uploaded a new snapshot of the code to Subversion. New features include proper support for multiple inheritance even with ambiguous functions multiply inherited from the same base class of a base class (sounds complicated, but that’s what it is), the Throw() function option to make mocked functions throw expected exceptions during replay, and support for out and in-out reference and pointer arguments.  The project now has more than 400 unit tests, which I think is pretty good for a rather small, but nevertheless fairly complex project. Once I finally manage to have virtual inheritance sorted out (assuming I can actually support it properly) I will release a packaged RudeMocks version 1.0. So stay tuned!

Pocket

→ No CommentsTags: News

Source Code in Subversion

September 8th, 2007 by Martin Ecker · No Comments

SourceForge fixed the Subversion migration feature and so the entire source code of RudeMocks including the history is now available in the SourceForge Subversion repository. For instructions on how to get the files from Subversion see here. You will still need a current snapshot of Boost, which you can download here, or get directly from the Boost Subversion repository.

Note that for various reasons development will continue in my local Subversion repository. From time to time, I will update the SourceForge repository with the latest snapshot. Also, I intend to release a version 1.0 via the SourceForge file release system some time soon (probably once I’ve figured out how to support virtual inheritance, if at all possible). Furthermore, a gcc 4.x port is in the works.

Pocket

→ No CommentsTags: News

First Code Snapshot Released

September 6th, 2007 by Martin Ecker · No Comments

A first code snapshot of RudeMocks has been made available in form of a .rar archive instead of in Subversion because SourceForge currently has problems importing Subversion repository dumps. You can get the archive here. This is only a temporary solution until SourceForge fixes repository migration at which point my local RudeMocks repository will be imported as a whole into the SourceForge Subversion repository.

Also, you will need a very recent version of Boost, which RudeMocks depends on. Note that the current official Boost release does not yet have some of the libraries used by RudeMocks, such as Boost.Fusion. Therefore you will either need to get the head revision from the Boost repository or grab this archive here, which is the snapshot that I’m currently using. It contains pre-built Visual C++ 8.0 binaries of Boost.Test, which is the unit-testing framework used for the RudeMocks unit tests.

Preliminary documentation is available here.

Pocket

→ No CommentsTags: News

RudeMocks Goes Live!

August 29th, 2007 by Martin Ecker · No Comments

RudeMocks is a C++ mocking framework that allows you to easily mock classes and free functions. It supports a record & replay model to set up expectations in a natural syntax by directly calling the function that should be mocked with expected arguments. An initial snapshot of the source code will be provided shortly in the Subversion repository.

Pocket

→ No CommentsTags: News