From: Olof-Joachim Frahm Date: Tue, 6 Jan 2015 14:01:40 +0000 (+0100) Subject: Add post about CL-MOCK. X-Git-Url: http://repo.macrolet.net/gitweb/?a=commitdiff_plain;h=d4118a63c482e07ca006389ff0f099bbea8452ce;p=blog.git Add post about CL-MOCK. --- diff --git a/cl-mock.post b/cl-mock.post new file mode 100644 index 0000000..05f61b6 --- /dev/null +++ b/cl-mock.post @@ -0,0 +1,29 @@ +;;;;; +title: A mocking library for Common Lisp +tags: lisp +date: 2015-01-06 14:52:47+01:00 +format: md +;;;;; + +After some time thinking about and rewriting the library in a subtly +different approaches, [`CL-MOCK`](https://github.com/Ferada/cl-mock) now +looks good to me as a version one. + +I've removed all mentions of generic functions for now, as first of all +I'm unsure if functionality to dynamically rebind methods is even +necessary, and second, because doing that is complicated by the details +of that protocol. Which means that specifying which method to override +is a bit hairy and I really want a good syntax before I let that stuff +loose. So it'll have to wait until I figure out a good way to do that. +Since it should be easily added to the existing frontend, it will very +probably be done with some overloading of existing functions / macros +(e.g. with a `:method` specifier or so). + +I'm hoping to test all of this and possibly investigate the generic +function issue on some other library. At the moment my single more +complex example is a replacement for the +[`DRAKMA`](http://www.weitz.de/drakma/) `HTTP-REQUEST` call, which +worked surprisingly well and might even make it into a new test suite. +The benefit is obviously the improved reliability of not having to have +a running network connection for testing libraries against a (HTTP) +server.