[Tutor] unittest and private methods
Kent Johnson
kent37 at tds.net
Sat Jan 21 13:13:12 CET 2006
lemeia wrote:
> kent wrote:
>>Rereading your mail another possibility comes to mind. It sounds like
>>extractTo() is a general-purpose function that is used for a specific
>>purpose by the module you are testing. Why not extract extractTo to a
>>utility module? Then you can test it as much as you like in the unit
>>tests for the utility and you can reuse it in other code if the need
>>arises. Almost all of my projects have 'util' packages containing
>>collections of miscellaneous useful stuff. The utils have their own unit
>>tests and get included as needed in other modules and projects.
>>
>> This makes sense to me and I hadn't thought of that in all honesty.
>> I
get so involved in object orientated design, I sometimes forget about
the convenience of a few general functions to "help out". Would I lose
my OO membership card though?
No, not at all, in fact you jeopardize your OO membership if you use it
where it is not needed ;)
But seriously, one of the strengths of Python is that I can write OO
code where appropriate, I can write procedural code when I don't need
the extra power of classes, and I can write straight-line code when my
needs are very simple, I can write in a functional style too. I can even
mix the four styles in a single module if I want to.
So go ahead and make a utility module, or a public helper function at
global scope in the same module as your class.
Kent
More information about the Tutor
mailing list