Exemplo n.º 1
0
 def testSessionInclusion(self):
     session1,session2=Session(),Session()
     self._conf.addSession(session1)
     self._conf.addSession(session2)
     contrib1=Contribution()
     self._conf.addContribution(contrib1)
     contrib1.setTitle("debug")
     contrib1.setSession(session1)
     self.assert_(self._conf.hasContribution(contrib1))
     self.assert_(session1.hasContribution(contrib1))
     self.assert_(not session2.hasContribution(contrib1))
     contrib1.setSession(session2)
     self.assert_(self._conf.hasContribution(contrib1))
     self.assert_(not session1.hasContribution(contrib1))
     self.assert_(session2.hasContribution(contrib1))
     contrib1.setSession(None)
     self.assert_(self._conf.hasContribution(contrib1))
     self.assert_(not session1.hasContribution(contrib1))
     self.assert_(not session2.hasContribution(contrib1))
     contrib1.setSession(session1)
     self.assert_(self._conf.hasContribution(contrib1))
     self.assert_(session1.hasContribution(contrib1))
     self.assert_(not session2.hasContribution(contrib1))
     self._conf.removeContribution(contrib1)
     self.assert_(not self._conf.hasContribution(contrib1))
     self.assert_(not session1.hasContribution(contrib1))
     self.assert_(contrib1 not in session1.getContributionList())
     self.assert_(not session2.hasContribution(contrib1))
     self.assert_(contrib1 not in session2.getContributionList())
Exemplo n.º 2
0
 def testSessions(self):
     s1 = Session()
     self._conf.addSession(s1)
     sd = datetime(2004, 01, 01, 10, 00, tzinfo=timezone('UTC'))
     ed = datetime(2004, 01, 01, 16, 00, tzinfo=timezone('UTC'))
     s1.setDates(sd, ed)
     slot1 = SessionSlot(s1)
     s1.addSlot(slot1)
     slot1.setStartDate(
         datetime(2004, 01, 01, 10, 00, tzinfo=timezone('UTC')))
Exemplo n.º 3
0
 def testAddRemoveSessions(self):
     s1, s2 = Session(), Session()
     self._conf.addSession(s1)
     self._conf.addSession(s2)
     self.assert_(s1 in self._conf.getSessionList())
     self.assert_(s1 == self._conf.getSessionById(s1.getId()))
     self.assert_(s2 in self._conf.getSessionList())
     self.assert_(s2 == self._conf.getSessionById(s2.getId()))
     self._conf.removeSession(s1)
     self.assert_(s1 not in self._conf.getSessionList())
     self.assert_(None == self._conf.getSessionById(s1.getId()))
     self.assert_(s2 in self._conf.getSessionList())
     self.assert_(s2 == self._conf.getSessionById(s2.getId()))
     c1, c2, c3 = Contribution(), Contribution(), Contribution()
     self._conf.addSession(s1)
     s1.addContribution(c1)
     s1.addContribution(c2)
     s2.addContribution(c3)
     self.assert_(s1 in self._conf.getSessionList())
     self.assert_(s1 == self._conf.getSessionById(s1.getId()))
     self.assert_(s2 in self._conf.getSessionList())
     self.assert_(s2 == self._conf.getSessionById(s2.getId()))
     self.assert_(c1 in self._conf.getContributionList())
     self.assert_(c2 in self._conf.getContributionList())
     self.assert_(c3 in self._conf.getContributionList())
     self.assert_(c1 in s1.getContributionList())
     self.assert_(c2 in s1.getContributionList())
     self.assert_(c3 in s2.getContributionList())
     self._conf.removeSession(s1)
     self.assert_(s1 not in self._conf.getSessionList())
     self.assert_(s2 in self._conf.getSessionList())
     self.assert_(c1 in self._conf.getContributionList())
     self.assert_(c2 in self._conf.getContributionList())
     self.assert_(c3 in self._conf.getContributionList())
     self.assert_(c1 not in s1.getContributionList())
     self.assert_(c1.getSession() == None)
     self.assert_(c2.getSession() == None)
     self.assert_(c2 not in s1.getContributionList())
     self.assert_(c3 in s2.getContributionList())
Exemplo n.º 4
0
 def testBasicWithdrawal(self):
     c1,c2=Contribution(),Contribution()
     auth1,auth2=ContributionParticipation(),ContributionParticipation()
     self._conf.addContribution(c1)
     self._conf.addContribution(c2)
     auth1.setFirstName("a")
     auth1.setFamilyName("a")
     auth1.setEmail("a")
     auth2.setFirstName("b")
     auth2.setFamilyName("b")
     auth2.setEmail("b")
     c1.addPrimaryAuthor(auth1)
     c2.addPrimaryAuthor(auth2)
     s1=Session()
     sd=datetime(2004, 01, 01, 12, 00, tzinfo=timezone("UTC"))
     ed=datetime(2004, 01, 01, 19, 00, tzinfo=timezone("UTC"))
     s1.setDates(sd,ed)
     slot1=SessionSlot(s1)
     self._conf.addSession(s1)
     s1.addSlot(slot1)
     s1.addContribution(c1)
     s1.addContribution(c2)
     slot1.getSchedule().addEntry(c1.getSchEntry())
     slot1.getSchedule().addEntry(c2.getSchEntry())
     self.assert_(c1.isScheduled())
     self.assert_(c2.isScheduled())
     authIdx=self._conf.getAuthorIndex()
     self.assert_(auth1 in authIdx.getParticipations()[0])
     self.assert_(auth2 in authIdx.getParticipations()[1])
     c1.withdraw(self._creator,"test")
     self.assert_(not c1.isScheduled())
     self.assert_(c2.isScheduled())
     self.assert_(auth1 not in authIdx.getParticipations()[0])
     self.assert_(auth2 in authIdx.getParticipations()[0])
     auth1.setFirstName("aa")
     self.assert_(auth1 not in authIdx.getParticipations()[0])
     self.assert_(auth2 in authIdx.getParticipations()[0])
     auth3,auth4=ContributionParticipation(),ContributionParticipation()
     auth3.setFirstName("c")
     auth3.setFamilyName("c")
     auth3.setEmail("c")
     auth4.setFirstName("d")
     auth4.setFamilyName("d")
     auth4.setEmail("d")
     c1.addPrimaryAuthor(auth3)
     c2.addPrimaryAuthor(auth4)
     self.assert_(auth2 in authIdx.getParticipations()[0])
     self.assert_(auth4 in authIdx.getParticipations()[1])
     self.assertRaises(MaKaCError,slot1.getSchedule().addEntry,c1.getSchEntry())
Exemplo n.º 5
0
    def setUp(self):

        # create a context, for storing autoOps
        ContextManager.create()
        ContextManager.set('autoOps', [])

        a = Avatar()
        a.setId("creator")
        self._conf = ConferenceFacade(a)
        self._conf.setId('a')
        self._conf.setTimezone('UTC')

        self._conf.setDates(
            datetime(2009, 9, 21, 16, 0, 0, tzinfo=timezone("UTC")),
            datetime(2009, 9, 21, 19, 0, 0, tzinfo=timezone("UTC")))

        self._slot1_sDate = datetime(2009,
                                     9,
                                     21,
                                     17,
                                     0,
                                     0,
                                     tzinfo=timezone("UTC"))
        self._slot1_eDate = datetime(2009,
                                     9,
                                     21,
                                     18,
                                     0,
                                     0,
                                     tzinfo=timezone("UTC"))
        self._slot2_sDate = datetime(2009,
                                     9,
                                     21,
                                     18,
                                     0,
                                     0,
                                     tzinfo=timezone("UTC"))
        self._slot2_eDate = datetime(2009,
                                     9,
                                     21,
                                     19,
                                     0,
                                     0,
                                     tzinfo=timezone("UTC"))

        self._slot2_laterDate = datetime(2009,
                                         9,
                                         21,
                                         20,
                                         0,
                                         0,
                                         tzinfo=timezone("UTC"))

        self._session1 = Session()
        self._session1.setValues({
            'sDate': self._slot1_sDate,
            'eDate': self._slot1_eDate
        })

        self._conf.addSession(self._session1)

        self._slot1 = self._session1.getSlotById(0)
        self._slot2 = SessionSlot(self._session1)

        self._slot2.setValues({
            'sDate': self._slot2_sDate,
            'eDate': self._slot2_eDate
        })

        self._session1.addSlot(self._slot2)
Exemplo n.º 6
0
    def setUp(self):
        '''
        Create a conference, 0
        Add 2 contributions to this conference, 0 and 1
        To contribution 0 - Add 2 speakers, person1 and person2
        To contribution 1 - Add 1 speaker, person1
        '''
        super(TestElectronicAgreement, self).setUp()

        self._startDBReq()

        self.falseSession = FalseSession()
        # Create few users
        self._creator = Avatar({"name": "God", "email": "*****@*****.**"})
        self._creator.setId("creator")
        # Set God as admin
        AdminList.getInstance().getList().append(self._creator)

        self.person1 = Avatar({"name": "giuseppe", "email": "*****@*****.**"})
        self.person1.setId("spk1")
        self.person2 = Avatar({"name": "gabriele", "email": "*****@*****.**"})
        self.person1.setId("spk2")
        self.person3 = Avatar({"name": "lorenzo", "email": "*****@*****.**"})
        self.person1.setId("spk3")
        self.person4 = Avatar({"name": "silvio", "email": "*****@*****.**"})
        self.person1.setId("spk4")

        ah = AvatarHolder()
        ah.add(self.person1)
        ah.add(self.person2)
        ah.add(self.person3)
        ah.add(self.person4)

        # Create a conference
        category = conference.CategoryManager().getById('0')
        self._conf = category.newConference(self._creator)
        self._conf.setTimezone('UTC')
        sd = datetime(2011, 06, 01, 10, 00, tzinfo=timezone("UTC"))
        ed = datetime(2011, 06, 05, 10, 00, tzinfo=timezone("UTC"))
        self._conf.setDates(
            sd,
            ed,
        )
        ch = ConferenceHolder()
        ch.add(self._conf)

        # Create contributions and add to the conference
        c1, c2 = Contribution(), Contribution()
        self.speaker1, self.speaker2 = ContributionParticipation(
        ), ContributionParticipation()

        self.speaker1.setDataFromAvatar(self.person1)
        self.speaker2.setDataFromAvatar(self.person2)

        self._conf.addContribution(c2)
        self._conf.addContribution(c1)

        # Add speakers to contributions
        c1.addPrimaryAuthor(self.speaker1)
        c2.addPrimaryAuthor(self.speaker2)
        c1.addSpeaker(self.speaker1)
        c2.addSpeaker(self.speaker1)
        c2.addSpeaker(self.speaker2)

        self._conf.enableSessionSlots()

        # Create session and schedule the contributions
        s1 = Session()
        sd = datetime(2011, 06, 02, 12, 00, tzinfo=timezone("UTC"))
        ed = datetime(2011, 06, 02, 19, 00, tzinfo=timezone("UTC"))
        s1.setDates(sd, ed)

        slot1 = SessionSlot(s1)
        self._conf.addSession(s1)
        slot1.setValues({"sDate": sd})
        s1.addSlot(slot1)

        s1.addContribution(c1)
        s1.addContribution(c2)
        slot1.getSchedule().addEntry(c1.getSchEntry())
        slot1.getSchedule().addEntry(c2.getSchEntry())

        self.createAndAcceptBooking()
        self._stopDBReq()
Exemplo n.º 7
0
 def testSessions(self):
     s1 = Session()
     s1.setDates(datetime(2004, 01, 01, 10, 00, tzinfo=timezone('UTC')),
                 datetime(2004, 01, 01, 12, 00, tzinfo=timezone('UTC')))
Exemplo n.º 8
0
    """
    def setUp(self):
        a = Avatar()
        a.setId("creator")
        self._conf = Conference(a)
        self._conf.setTimezone('UTC')
        sd = datetime(2004, 01, 01, 10, 00, tzinfo=timezone('UTC'))
        ed = datetime(2004, 01, 05, 10, 00, tzinfo=timezone('UTC'))
        self._conf.setDates(sd, ed)

    def testSessions(self):
        s1 = Session()
        s1.setDates(datetime(2004, 01, 01, 10, 00, tzinfo=timezone('UTC')),
                    datetime(2004, 01, 01, 12, 00, tzinfo=timezone('UTC')))
        self._conf.addSession(s1)
        s2 = Session()
        s2.setDates(datetime(2004, 01, 01, 15, 00, tzinfo=timezone('UTC')),
                    datetime(2004, 01, 01, 18, 00, tzinfo=timezone('UTC')))
        self._conf.addSession(s2)
        #checks that modifying conference dates which does not affect to
        #   sessions is allowed
        self._conf.setStartDate(
            datetime(2004, 01, 01, 9, 00, tzinfo=timezone('UTC')))
        self._conf.setEndDate(
            datetime(2004, 01, 01, 19, 00, tzinfo=timezone('UTC')))
        #if a session is affected an error should be reported
        #self.assertRaises(MaKaCError,self._conf.setStartDate,datetime(2004, 01, 01, 10, 01, tzinfo=timezone('UTC')))
        #self.assertRaises(MaKaCError,self._conf.setEndDate,datetime(2004, 01, 01, 17, 00, tzinfo=timezone('UTC')))

    def testEntries(self):
        c1, c2 = Contribution(), Contribution()
Exemplo n.º 9
0
 def testSorting( self ):
     from MaKaC.conference import Contribution, ContributionType, Session, Track
     from MaKaC.webinterface.common import contribFilters
     from MaKaC.common.filters import SimpleFilter
     contrib1 = Contribution()
     contrib2 = Contribution()
     contrib3 = Contribution()
     self._conf.addContribution( contrib1 )
     self._conf.addContribution( contrib2 )
     self._conf.addContribution( contrib3 )
     # Sorting by ID
     sortingCrit = contribFilters.SortingCriteria( ["number"] )
     f = SimpleFilter( None, sortingCrit )
     contribList = f.apply(self._conf.getContributionList())
     self.assert_( len(contribList) == 3 )
     self.assert_( contribList[0] == contrib1 )
     self.assert_( contribList[1] == contrib2 )
     self.assert_( contribList[2] == contrib3 )
     #Sorting by Date
     contrib1.setStartDate(datetime(2004, 5, 1, 10, 30,tzinfo=timezone('UTC')))
     contrib2.setStartDate(datetime(2003, 5, 1, 10, 30,tzinfo=timezone('UTC')))
     sortingCrit = contribFilters.SortingCriteria( ["date"] )
     f = SimpleFilter( None, sortingCrit )
     contribList = f.apply(self._conf.getContributionList())
     self.assert_( len(contribList) == 3 )
     self.assert_( contribList[0] == contrib2 )
     self.assert_( contribList[1] == contrib1 )
     self.assert_( contribList[2] == contrib3 )
     # Sorting by Contribution Type
     contribType1 = ContributionType("oral presentation", "no description", self._conf)
     contribType2 = ContributionType("poster", "no description", self._conf)
     contrib1.setType(contribType1)
     contrib2.setType(contribType2)
     sortingCrit = contribFilters.SortingCriteria( ["type"] )
     f = SimpleFilter( None, sortingCrit )
     contribList = f.apply(self._conf.getContributionList())
     self.assert_( len(contribList) == 3 )
     self.assert_( contribList[0] == contrib1 )
     self.assert_( contribList[1] == contrib2 )
     self.assert_( contribList[2] == contrib3 )
     # Sorting by Session
     session1 = Session()
     self._conf.addSession(session1)
     session2 = Session()
     self._conf.addSession(session2)
     contrib1.setSession(session1)
     contrib2.setSession(session2)
     sortingCrit = contribFilters.SortingCriteria( ["session"] )
     f = SimpleFilter( None, sortingCrit )
     contribList = f.apply(self._conf.getContributionList())
     self.assert_( len(contribList) == 3 )
     self.assert_(contrib1 in contribList)
     self.assert_(contrib2 in contribList)
     self.assert_(contrib3 in contribList)
     # Sorting by Track
     track1 = Track()
     track1.setTitle("3")
     track1.setConference(self._conf)
     track2 = Track()
     track2.setTitle("1")
     track2.setConference(self._conf)
     contrib1.setTrack(track1)
     contrib2.setTrack(track2)
     sortingCrit = contribFilters.SortingCriteria( ["track"] )
     f = SimpleFilter( None, sortingCrit )
     contribList = f.apply(self._conf.getContributionList())
     self.assert_( len(contribList) == 3 )
     self.assert_( contribList[0] == contrib2 )
     self.assert_( contribList[1] == contrib1 )
     self.assert_( contribList[2] == contrib3 )