larry-discuss team mailing list archive
-
larry-discuss team
-
Mailing list archive
-
Message #00043
Re: stream lining signature of assert_larry_equal
On Fri, Feb 5, 2010 at 7:28 AM, Keith Goodman <kwgoodman@xxxxxxxxx> wrote:
> On Fri, Feb 5, 2010 at 7:24 AM, <josef.pktd@xxxxxxxxx> wrote:
>> The current signature
>>
>> assert_larry_equal(actual, desired, msg='', dtype=True, original=None,
>> noreference=True, nocopy=False)
>>
>> has 3 keywords, original, noreference, nocopy for the option to check
>> whether a larry is a view or a copy.
>>
>> This makes 8 binary options, only 3 are relevant cases, the other 5
>> combinations raise errors or are redundant. This was quite confusing
>> when I used the tests, since I often forgot to use, reset a keyword,
>> e.g. nocopy=True also requires setting noreference = False
>>
>> I think a more compact signature would be
>> assert_larry_equal(actual, desired, msg='', dtype=True, original=None,
>> noref=True)
>>
>> if not original is None:
>> if noref:
>> check noreference
>> else:
>> check nocopy
>>
>> otherwise don't do any reference/copy check
>>
>> the presence of original would indicate that we want the view check,
>> `noref` would tell which one.
>
> This is how larry gets improved---with cleaning like that.
>
> I'll make the change in the trunk.
I changed the function signature as you suggested. I also changed
noref to iscopy. The change in the kw name will mess up your unit
tests :(
And I change the name of assert_noreference to assert_iscopy and
assert_nocopy to assert_isview.
Follow ups
References