Blog

MockBox 1.3 Released

Luis Majano December 12, 2010

Spread the word

Luis Majano

December 12, 2010

Spread the word


Share your thoughts

After much inspiration during long baby duty nights, we bring you today MockBox version 1.3.  This release sports a revamp of the entire documentation structure both on the wiki and internally in the API.  This was a huge ticket for me, as I wanted to make the introduction into mocking and unit testing a little bit easier.  So hopefully, this will help out all you curious folks who want to venture down into MockLand!  So let's review it:

So we already said the documentation and API docs are brand new, great! So what else:
  • coldbox-1057 mocking argument normalization, diff expectations when name-value or positional argument calling.  This means that you can test with ordered or name-value pairs or even argument collections and MockBox will determine the right matching values for you.  If you are new to MockBox, don't worry, this was a cool fix to how MockBox matches arguments to results.
  • coldbox-1144 change all mock methods to their $ name equivalents on the MockBox CFC so they are documented like so.  This was not the case on version 1.2 where we created method aliases, this just added overhead and not a very clear mocking API.  So this was revamped and I documented the functions out of it.

New Verification Methods


Unit testing and mocking cannot be possible without behavior verification, so we expanded our mocking language to include several new methods to help you verify when these mocked methods are called.  Also remember that MockBox has call logging integrated so it can keep track of method calls and their real arguments, so you can assert them later via the $callLog() method.


$verifyCallCount becomes $times()


This is just an alias, but it is way shorter and more meaningful, which basically let's you find out how many times ALL mocked methods have been called on a target, or if you pass in the method name as an argument, then only the times that specific method was called.


$atMost() and $atLeast()



These verification methods allow you to track the minimum and maximum times ALL mocked methods have been called or if you pass in the method name, the specific method.  This is great to achieve minimum number or maximum number of calls to a specific method have to be made and then asserted.


$never() and $once()


These are great shortcuts to find out if a mocked method or ALL mocked methods have NEVER been called or they have been called exactly one time.


$reset()


This little gem provides you with a way to reset all method call counter and call loggers so you can start fresh and mock again!


This concludes our 1.3 release. We have lots of great ideas for our next version MockBox 2.0 which will includes some awesomeness when it comes down to expectations, verifications and behavior. We are already planning several features that will allow you to verify when methods with specific arguments have been called, create literal arguments instead of data, mock network failures and much more. So get ready to start working in MockLand, it truly is great to Mock!

Add Your Comment

Recent Entries

Hotfix Hell: Why Legacy ColdFusion Systems Become Operationally Fragile

Hotfix Hell: Why Legacy ColdFusion Systems Become Operationally Fragile

Many legacy CFML systems do not fail suddenly.

Instead, they slowly become fragile.

At first, the application works. Then small operational issues start appearing: unexpected slowdowns, random restarts, patches applied late at night, fixes that introduce new bugs.

Eventually teams find themselves trapped in what many engineers call “hotfix hell.”

This pattern is common in environments still running:

  • Adobe ColdFusion 2021 or earlier<...

Cristobal Escobar
Cristobal Escobar
March 09, 2026
Introducing the BoxLang IDE Plugin for IntelliJ

Introducing the BoxLang IDE Plugin for IntelliJ

The IntelliJ ecosystem is one of the most powerful development environments for JVM developers. Today, we’re excited to introduce the official BoxLang IDE plugin for IntelliJ, bringing modern BoxLang development directly into the JetBrains IDE family.

Whether you're building new BoxLang applications or maintaining existing CFML codebases, this plugin gives you first-class tooling inside IntelliJ.

...

Eric Peterson
Eric Peterson
March 06, 2026
BoxLang Is Heading to JavaLand 2026! 🚀

BoxLang Is Heading to JavaLand 2026! 🚀

We’re excited to announce that the team behind BoxLang will be attending JavaLand 2026 as Startup Sponsors!

From March 10–12, 2026, the Java community will gather at Europa-Park for one of the most unique and immersive developer conferences in Europe. With nearly 130 presentations across multiple tracks, workshops, and community activities, JavaLand brings together developers, architects, and technology leaders from across the JVM ecosystem.

For the BoxLang team, this is a fantastic opportunity to connect with the Java community and continue our mission: modernizing software development on the JVM while empowering developers with productive, flexible tools.

Maria Jose Herrera
Maria Jose Herrera
March 06, 2026