static Calendar *createCalendar( Project &p ) { Calendar *c = new Calendar(); c->setDefault( true ); QTime t1( 9, 0, 0 ); QTime t2 ( 17, 0, 0 ); int length = t1.msecsTo( t2 ); for ( int i=1; i <= 7; ++i ) { CalendarDay *d = c->weekday( i ); d->setState( CalendarDay::Working ); d->addInterval( t1, length ); } p.addCalendar( c ); return c; }
void ResourceModelTester::initTestCase() { m_project = new Project(); m_project->setName( "P1" ); m_project->setId( m_project->uniqueNodeId() ); m_project->registerNodeId( m_project ); DateTime targetstart = DateTime( QDate::currentDate(), QTime(0,0,0) ); DateTime targetend = DateTime( targetstart.addDays( 3 ) ); m_project->setConstraintStartTime( targetstart ); m_project->setConstraintEndTime( targetend); // standard worktime defines 8 hour day as default QVERIFY( m_project->standardWorktime() ); QCOMPARE( m_project->standardWorktime()->day(), 8.0 ); m_calendar = new Calendar( "Test" ); m_calendar->setDefault( true ); QTime t1( 9, 0, 0 ); QTime t2 ( 17, 0, 0 ); int length = t1.msecsTo( t2 ); for ( int i=1; i <= 7; ++i ) { CalendarDay *d = m_calendar->weekday( i ); d->setState( CalendarDay::Working ); d->addInterval( t1, length ); } m_project->addCalendar( m_calendar ); ResourceGroup *g = new ResourceGroup(); g->setName( "G1" ); m_project->addResourceGroup( g ); m_resource = new Resource(); m_resource->setName( "R1" ); m_resource->setCalendar( m_calendar ); m_project->addResource( g, m_resource ); m_task = m_project->createTask(); m_task->setName( "T1" ); m_project->addTask( m_task, m_project ); m_task->estimate()->setUnit( Duration::Unit_h ); m_task->estimate()->setExpectedEstimate( 8.0 ); m_task->estimate()->setType( Estimate::Type_Effort ); ResourceGroupRequest *gr = new ResourceGroupRequest( g ); gr->addResourceRequest( new ResourceRequest( m_resource, 100 ) ); m_task->addRequest( gr ); m_model.setProject( m_project ); QModelIndex idx; int rows = m_model.rowCount( idx ); QCOMPARE( rows, 1 ); idx = m_model.index( 0, 0, idx ); QCOMPARE( g->name(), m_model.data( idx ).toString() ); rows = m_model.rowCount( idx ); QCOMPARE( rows, 1 ); idx = m_model.index( 0, 0, idx ); QCOMPARE( m_resource->name(), m_model.data( idx ).toString() ); idx = m_model.parent( idx ); QCOMPARE( g->name(), m_model.data( idx ).toString() ); }