[racket-dev] [racket] Disable/Enable Tests

From: Robby Findler (robby at eecs.northwestern.edu)
Date: Tue Nov 29 09:38:50 EST 2011

If I put two -above's in a row does that push past the previous -below?  :)

In all seriousness, this seems like a way for students to get confused
about what their programs are or aren't doing. It seems easy to lose
track of where the aboves and belows are.

If I understand correctly, this is not a performance issue, but an
issue of keeping track of which test cases are the interesting ones
while working on one part of a program. That is, we want a mechanism
to focus in on a section of the program and its test cases.

If that's correct, then I think we have two better routes to pursue:

  - multi-file programs

  - better support in the GUI for showing us only some of the test
results (perhaps something to focus in on test cases that test
specific functions or something like that).

Robby

On Tue, Nov 29, 2011 at 7:03 AM, Matthias Felleisen
<matthias at ccs.neu.edu> wrote:
>
> I see two sequences:
>
> -below ;; disables up to
>
> -above ;; here; disables up to -below and re-enables tests
>
> or
>
> -above ;; disables everything up to here and enables tests up to
>
> -below ;; here; disables tests below.
>
> Anything else? -- Matthias
>
>
>
> On Nov 28, 2011, at 10:09 PM, Robby Findler wrote:
>
>> Those two seem like they can combine in strange ways.
>>
>> Robby
>>
>> On Mon, Nov 28, 2011 at 9:08 PM, Matthias Felleisen
>> <matthias at ccs.neu.edu> wrote:
>>>
>>> I can see adding both disable-tests-above and disable-tests-below.
>>>
>>>
>>> On Nov 28, 2011, at 3:44 PM, Vincent St-Amour wrote:
>>>
>>>> At Mon, 28 Nov 2011 11:54:06 -0500,
>>>> Matthias Felleisen wrote:
>>>>> I propose
>>>>>
>>>>> 1. to remove the menu and its functionality
>>>>> 2. to add a macro disable-tests-below
>>>>> 3. and be prepared to add a macro enable-tests-below.
>>>>
>>>> `disable-tests-below' makes it easy to accidentally skip running tests
>>>> altogether.
>>>>
>>>> Consider this scenario:
>>>> - A student works on an assignment, one problem at a time.
>>>> - Once a problem is done, he doesn't touch the code anymore, and
>>>>  wants to disable the tests.
>>>> - With `disable-tests-below', he needs to add it at the top of the
>>>>  file, and to add `enable-tests-below' before the problem he's now
>>>>  working on.
>>>> - If he forgets to add `enable-tests-below', no tests get run at all.
>>>>
>>>> `disable-tests-above' would accomodate this workflow better. If the
>>>> student forgets to move it as he solves problems, then more tests get
>>>> run. No problem. That sounds like a better default to me.
>>>>
>>>> However, I'm a bit uncomfortable with `disable-tests-above' affecting
>>>> the behavior of what comes before it. It may lead to confusing
>>>> situations.
>>>>
>>>> A region-based solution also sounds good. Especially since (I assume)
>>>> only a small number of tests are actually expensive.
>>>>
>>>> Vincent
>>>
>>>
>
>



Posted on the dev mailing list.