I've recently been using common_test on several new projects and am really liking it. I ran across something today I found odd, however, and wanted to know if it was the expected behavior. I was expecting that if I have a group with no tests that group should, essentially, be ignored. This seems to be the case if the group is contained in another but not if the group is an element in the list returned by all/0. In the latter case the suite errors out with "Error in suite detected: 'Invalid reference to group [GROUP NAME] in [SUITE NAME]:all/0'". <div>
<br></div><div>Is this intentional and if so, why are sub-groups treated differently? Is there a reason its not a warning instead? For the most part I'm just curious. I do like setting up my groups sometimes ahead of writing tests and ran into this when I tried to leave a top-level group empty for a short while.</div>
<div><br></div><div>A minimal code example is below. I'm using R14B02 on OS-X with common_test 1.5.3 (I installed today off the Erlang Factory USB stick, thanks for a great conference everyone). Oh, and this is my first message to the list. Hello, all.</div>
<div><br></div><div>%% a.erl</div><div><div>-module(a).</div><div>-compile(export_all).</div><div><br></div><div>my_fun() -></div><div> 1.</div></div><div><br></div><div>%% a_SUITE.erl</div><div><div>-module(a_SUITE).</div>
<div>-compile(export_all).</div><div><br></div><div>groups() -></div><div> [{group_1,</div><div> [shuffle],</div><div> [test_1, {group, group_3}]},</div><div> {group_2,</div><div> [shuffle],</div>
<div> []}, % this empty test list causes issues if empty</div><div> {group_3,</div><div> [],[]}]. % this empty test list seems to be able to be empty</div><div><br></div><div>all() -></div><div> [</div>
<div> {group, group_1},</div><div> {group, group_2} %% If this is remove the suite won't error out</div><div> ].</div><div><br></div><div>test_1(_) -></div><div> 1 = a:my_fun().</div></div><div><br></div>
<div>>> run_test -suite a_SUITE.erl </div><div>...</div><div><div>Error in suite detected: 'Invalid reference to group group_2 in a_SUITE:all/0'</div></div><div><br></div><div>Jordan West</div><div><br></div>