source: trunk/test/unit/dbnp/studycapturing/StudyTests.groovy

Last change on this file was 1588, checked in by s.h.sikkema@…, 11 years ago

Fixed tests (except webtests); cleaned up Example{Studies,Templates}.groovy; decapitalized injected services; made 'transactional' properties static

  • Property svn:keywords set to Rev Author Date
File size: 1.9 KB
Line 
1package dbnp.studycapturing
2
3import grails.test.*
4
5class StudyTests extends GrailsUnitTestCase {
6
7    protected void setUp() {
8        super.setUp()
9    }
10
11    protected void tearDown() {
12        super.tearDown()
13    }
14
15    protected void assertCollectionEquals( Collection set1, Collection set2 ) {
16        set1.each {
17            assert it in set2;
18        }
19        set2.each {
20            assert it in set1;
21        }
22
23    }
24
25    void testGetOrphanEvents() {
26        def events = [];
27        10.times {
28            events[ it ] = new Event(
29                id: it,
30                startTime: 3600,
31                endTime: 3800
32            )
33            println( 'Created event ' + it );
34        }
35        def evGroup1 = new EventGroup(
36            name: 'group1',
37            events: events[0..4]
38        )
39        def evGroup2 = new EventGroup(
40            name: 'group2',
41            events: events[3..6]
42        )
43
44        // No events should give no orphan events
45        def study1 = new Study( title: 'Studytitle 1', events: [], eventGroups: [] );
46        assert study1.getOrphanEvents().size() == 0;
47
48        // Not even with a group
49        study1.eventGroups = [ evGroup1 ];
50        assert study1.getOrphanEvents().size() == 0;
51
52        // Events 0..4 are part of evGroup1
53        study1.events = events[0..8];
54        println(  study1.getOrphanEvents().id )
55        println(  events[ 5..8].id )
56       
57        assertCollectionEquals( study1.getOrphanEvents(), events[ 5..8 ] );
58
59        // Remove the evGroup
60        study1.eventGroups = [];
61        assertCollectionEquals( study1.getOrphanEvents(), events[ 0..8 ] );
62
63        // Add multiple groups
64        study1.eventGroups = [ evGroup1, evGroup2 ];
65        assertCollectionEquals( study1.getOrphanEvents(), events[ 7..8 ] );
66
67        // Remove events again
68        study1.events = [];
69        assert study1.getOrphanEvents().size() == 0;
70    }
71}
Note: See TracBrowser for help on using the repository browser.