EduploneTest/types EduploneTestingEnvironment.py,1.23,1.24

"Fabian K." <[email protected]>
Newsgroups gmane.comp.web.zope.eduplone.cvs
Message-ID <[email protected]>
Update of /cvsroot/eduplone/EduploneTest/types
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv21913

Modified Files:
	EduploneTestingEnvironment.py 
Log Message:
Added some spaces to increase readability

Index: EduploneTestingEnvironment.py
===================================================================
RCS file: /cvsroot/eduplone/EduploneTest/types/EduploneTestingEnvironment.py,v
retrieving revision 1.23
retrieving revision 1.24
diff -C2 -d -r1.23 -r1.24
*** EduploneTestingEnvironment.py	16 Nov 2004 01:03:16 -0000	1.23
--- EduploneTestingEnvironment.py	2 Jan 2005 22:46:27 -0000	1.24
***************
*** 376,380 ****
      def sequence_getLast(self, currentQuestion):
          """ """
!         counter=0
          for i in self.objectIds():
              counter += 1
--- 376,380 ----
      def sequence_getLast(self, currentQuestion):
          """ """
!         counter = 0
          for i in self.objectIds():
              counter += 1
***************
*** 394,398 ****
      def sequence_getNext(self, currentQuestion):
          """ """
!         counter=0
          for i in self.objectIds():
              counter += 1
--- 394,398 ----
      def sequence_getNext(self, currentQuestion):
          """ """
!         counter = 0
          for i in self.objectIds():
              counter += 1
***************
*** 404,409 ****
  
          else:
!             nextId=self.objectIds()[counter]
!             if nextId=='users':
                  return self.sequence_getNext('users')
  
--- 404,409 ----
  
          else:
!             nextId = self.objectIds()[counter]
!             if nextId == 'users':
                  return self.sequence_getNext('users')
  
***************
*** 413,417 ****
      def sequence_getPosition(self, currentQuestion):
          """ returns position of currentQuestion within fixedObjectValues """
!         counter=0
          for i in self.fixedObjectValues():
              counter += 1
--- 413,417 ----
      def sequence_getPosition(self, currentQuestion):
          """ returns position of currentQuestion within fixedObjectValues """
!         counter = 0
          for i in self.fixedObjectValues():
              counter += 1
***************
*** 428,433 ****
      def user_isMember(self):
          """ """
!         if self.getCurrentUser().getId() in self.users.objectIds(): return 1
!         return 0
  
  
--- 428,435 ----
      def user_isMember(self):
          """ """
!         if self.getCurrentUser().getId() in self.users.objectIds():
! 	    return 1
! 	else:
! 	    return 0
  
  
***************
*** 449,453 ****
          questionid = REQUEST.form['qId']
          self.saveQuestionAnswers(REQUEST)
!         nextId=self.sequence_getNext(questionid)
          if nextId not in  ['users', -1]:
              return self[self.sequence_getNext(questionid)].view()
--- 451,455 ----
          questionid = REQUEST.form['qId']
          self.saveQuestionAnswers(REQUEST)
!         nextId = self.sequence_getNext(questionid)
          if nextId not in  ['users', -1]:
              return self[self.sequence_getNext(questionid)].view()
***************
*** 466,470 ****
             possible/correct answers"""
  
!         result=[]
          for objAnswer in self[questionId].objectValues():
              if not (objAnswer.aq_parent.meta_type=='eduplone Matching' and not objAnswer.getChallenge()):
--- 468,472 ----
             possible/correct answers"""
  
!         result = []
          for objAnswer in self[questionId].objectValues():
              if not (objAnswer.aq_parent.meta_type=='eduplone Matching' and not objAnswer.getChallenge()):
***************
*** 478,482 ****
              So we need to filter the TaskItems to return correct amount of
              possible/correct answers"""
!         result=[]
          for objAnswer in self[questionId].objectValues():
              if not (objAnswer.aq_parent.meta_type=='eduplone Matching' and not objAnswer.getChallenge()):
--- 480,484 ----
              So we need to filter the TaskItems to return correct amount of
              possible/correct answers"""
!         result = []
          for objAnswer in self[questionId].objectValues():
              if not (objAnswer.aq_parent.meta_type=='eduplone Matching' and not objAnswer.getChallenge()):
***************
*** 489,493 ****
      def _getCorrectAnswers(self, questionId): ##not needed anymore ?
          """ """
!         result={}
  
          for objAnswer in self._filteredAnswerValues(questionId):
--- 491,495 ----
      def _getCorrectAnswers(self, questionId): ##not needed anymore ?
          """ """
!         result = {}
  
          for objAnswer in self._filteredAnswerValues(questionId):
***************
*** 496,502 ****
                  #if type(cAnswer) != []:cAnswer=[cAnswer]
                  if objAnswer.meta_type=='eduplone SingleChoiceAnswer' and objAnswer.getCorrectAnswer()==True:
!                     result[objAnswer.getId()]=objAnswer.getId()
                  else:
!                     result[objAnswer.getId()]=cAnswer
          return result
  
--- 498,504 ----
                  #if type(cAnswer) != []:cAnswer=[cAnswer]
                  if objAnswer.meta_type=='eduplone SingleChoiceAnswer' and objAnswer.getCorrectAnswer()==True:
!                     result[objAnswer.getId()] = objAnswer.getId()
                  else:
!                     result[objAnswer.getId()] = cAnswer
          return result
  
***************
*** 504,516 ****
      def _getCorrectAnswer(self, questionId, answerId):
          """ """
!         objQ=self[questionId]
!         objA=self[questionId][answerId]
!         mType=objQ.meta_type
  
          #the evil typeswitch....
!         cAnswer=[]
  
          if mType in ['eduplone SingleChoice']:
! 	    if objA.getCorrectAnswer()==True:
          	cAnswer.append(objA.getId())
  
--- 506,518 ----
      def _getCorrectAnswer(self, questionId, answerId):
          """ """
!         objQ = self[questionId]
!         objA = self[questionId][answerId]
!         mType = objQ.meta_type
  
          #the evil typeswitch....
!         cAnswer = []
  
          if mType in ['eduplone SingleChoice']:
! 	    if objA.getCorrectAnswer() == True:
          	cAnswer.append(objA.getId())
  
***************
*** 519,526 ****
  
          if mType in ['eduplone TextTask', 'eduplone FillGap']:
!             if type(objA.getCorrectAnswer())==type(''):
                  cAnswer.append(objA.getCorrectAnswer)
              else:
!                 cAnswer=objA.getCorrectAnswer()
  
          if mType in ['eduplone FreeText']:
--- 521,528 ----
  
          if mType in ['eduplone TextTask', 'eduplone FillGap']:
!             if type(objA.getCorrectAnswer()) == type(''):
                  cAnswer.append(objA.getCorrectAnswer)
              else:
!                 cAnswer = objA.getCorrectAnswer()
  
          if mType in ['eduplone FreeText']:
***************
*** 536,543 ****
             and false (0), if not. well.
          """
!         if uAnswer == 'on' : uAnswer = 'True'#1 #checkboxes....
          if uAnswer == 'off' or uAnswer =='' : uAnswer = 'False'
  
!         cAnswer=self._getCorrectAnswer(questionId,answerId)
  	
  	#if self[questionId].meta_type=='eduplone SingleChoice':
--- 538,545 ----
             and false (0), if not. well.
          """
!         if uAnswer == 'on' : uAnswer = 'True'  #1 #checkboxes....
          if uAnswer == 'off' or uAnswer =='' : uAnswer = 'False'
  
!         cAnswer = self._getCorrectAnswer(questionId,answerId)
  	
  	#if self[questionId].meta_type=='eduplone SingleChoice':
***************
*** 553,573 ****
      def evalFreeTextAnswer(self, questionId, uAnswer, detail=0):
          """ """
! 	cAnswer=self._getCorrectAnswer(questionId, questionId)
! 	if detail==0:
      	    for i in cAnswer:
!         	uAnswer=uAnswer.replace(i, '<font color="orange">' + i + '</font>')
      	    return uAnswer
! 	elif detail==1 or detail==2:
! 	    ret={}
  	    for i in cAnswer:	
  		if i in uAnswer: 
! 		    ret[i]=1
! 		else: ret[i]=0
  		
!     	    if detail==2:
  		for AnswerObj in self.filteredAnswerValues(questionId):
! 		    ret[AnswerObj.getId()]=0
  		    for i in AnswerObj.getCorrectAnswer():
! 			if ret[i]==1:  ret[AnswerObj.getId()]=1
  	    return ret		
  
--- 555,577 ----
      def evalFreeTextAnswer(self, questionId, uAnswer, detail=0):
          """ """
! 	cAnswer = self._getCorrectAnswer(questionId, questionId)
! 	if detail == 0:
      	    for i in cAnswer:
!         	uAnswer = uAnswer.replace(i, '<font color="orange">' + i + '</font>')
      	    return uAnswer
! 	elif detail == 1 or detail == 2:
! 	    ret = {}
  	    for i in cAnswer:	
  		if i in uAnswer: 
! 		    ret[i] = 1
! 		else:
! 		    ret[i] = 0
  		
!     	    if detail == 2:
  		for AnswerObj in self.filteredAnswerValues(questionId):
! 		    ret[AnswerObj.getId()] = 0
  		    for i in AnswerObj.getCorrectAnswer():
! 			if ret[i] == 1:
! 			    ret[AnswerObj.getId()] = 1
  	    return ret		
  
***************
*** 581,588 ****
              return self.users[userId]._scoreOverride[questionId]
  
!         questionScore=self[questionId].getScore()
!         possibleAnswers=self._filteredAnswerValues(questionId)
  
!         if len(possibleAnswers)==0 :
              return 0 #there is no answer for a question;
  		     #this should be checked, before actually running a test, i think...
--- 585,592 ----
              return self.users[userId]._scoreOverride[questionId]
  
!         questionScore = self[questionId].getScore()
!         possibleAnswers = self._filteredAnswerValues(questionId)
  
!         if len(possibleAnswers) == 0 :
              return 0 #there is no answer for a question;
  		     #this should be checked, before actually running a test, i think...
***************
*** 593,597 ****
              ##print '-TextTask:'
              if uAnswer.has_key(questionId):
!                 uAnswer=uAnswer[questionId]
                  if self.evalAnswer(questionId, possibleAnswers[0].getId(), uAnswer):
                      return questionScore
--- 597,601 ----
              ##print '-TextTask:'
              if uAnswer.has_key(questionId):
!                 uAnswer = uAnswer[questionId]
                  if self.evalAnswer(questionId, possibleAnswers[0].getId(), uAnswer):
                      return questionScore
***************
*** 600,606 ****
          if self[questionId].meta_type in ['eduplone FreeText']:
              #print '-FreeText'
! 	    correctAnswers=0
  	    for i in possibleAnswers: #answer-object
! 		inText=0
  		for ii in i.getCorrectAnswer():#alternatives of correctAnswer (i.e. different spelling...)
  		    if uAnswer.has_key(questionId):
--- 604,610 ----
          if self[questionId].meta_type in ['eduplone FreeText']:
              #print '-FreeText'
! 	    correctAnswers = 0
  	    for i in possibleAnswers: #answer-object
! 		inText = 0
  		for ii in i.getCorrectAnswer():#alternatives of correctAnswer (i.e. different spelling...)
  		    if uAnswer.has_key(questionId):
***************
*** 609,618 ****
  		correctAnswers += inText
  
! 	    wrongAnswers=len(possibleAnswers)-correctAnswers
  	    return (float(questionScore)/float(len(possibleAnswers))) * correctAnswers
  
          if self[questionId].meta_type in ['eduplone FillGap']:
              #print '-FillGap'
! 	    correctAnswers=0
              for a in possibleAnswers:
  		uAnswer=self.users[userId].getSingleAnswer(questionId, a.getId())
--- 613,622 ----
  		correctAnswers += inText
  
! 	    wrongAnswers = len(possibleAnswers)-correctAnswers
  	    return (float(questionScore)/float(len(possibleAnswers))) * correctAnswers
  
          if self[questionId].meta_type in ['eduplone FillGap']:
              #print '-FillGap'
! 	    correctAnswers = 0
              for a in possibleAnswers:
  		uAnswer=self.users[userId].getSingleAnswer(questionId, a.getId())
***************
*** 624,634 ****
              ##print '-SingleChoice'
              if uAnswer.has_key(questionId):
!                 if self[questionId][uAnswer[questionId]].getCorrectAnswer()==1: return questionScore
!             return 0
  
          #print '-NoneText:'
!         correctAnswers=0
          for a in possibleAnswers:
!             uAnswer=self.users[userId].getSingleAnswer(questionId, a.getId())
              if self.evalAnswer(questionId, a.getId(), uAnswer):
                  correctAnswers +=1
--- 628,640 ----
              ##print '-SingleChoice'
              if uAnswer.has_key(questionId):
!                 if self[questionId][uAnswer[questionId]].getCorrectAnswer()==1:
! 		    return questionScore
! 	    else:
!         	return 0
  
          #print '-NoneText:'
!         correctAnswers = 0
          for a in possibleAnswers:
!             uAnswer = self.users[userId].getSingleAnswer(questionId, a.getId())
              if self.evalAnswer(questionId, a.getId(), uAnswer):
                  correctAnswers +=1
***************
*** 640,644 ****
      def score_CalculateTotal(self, userId):
          """ calculates user-score for a single question """
!         totalscore=0
          for i in self.fixedObjectValues():
              totalscore += self.score_CalculateQuestion(i.getId(), userId)
--- 646,650 ----
      def score_CalculateTotal(self, userId):
          """ calculates user-score for a single question """
!         totalscore = 0
          for i in self.fixedObjectValues():
              totalscore += self.score_CalculateQuestion(i.getId(), userId)
***************
*** 657,661 ****
  	score_percent = int(self.getUserScoreInPercent(userId))
          score_percent = int(self.getUserScoreInPercent(userId))
! 	counter=15
  	gAttr='grades_de_' + str(counter)
  
--- 663,667 ----
  	score_percent = int(self.getUserScoreInPercent(userId))
          score_percent = int(self.getUserScoreInPercent(userId))
! 	counter = 15
  	gAttr='grades_de_' + str(counter)
  
***************
*** 669,673 ****
      def getTotalAvailableScore(self):
          """ sums up the available points """
!         TotalScore=0
          for obj in self.objectValues():
             if obj.id != 'users':
--- 675,679 ----
      def getTotalAvailableScore(self):
          """ sums up the available points """
!         TotalScore = 0
          for obj in self.objectValues():
             if obj.id != 'users':
***************
*** 675,678 ****
--- 681,689 ----
  
          return str(TotalScore)
+ 	
+ 	
+     def blubb(self):
+ 	""" """
+ 	return self.rolesSeeContentsView
  
  
***************
*** 702,708 ****
      	    it sets user's state to '1' (waiting for verification/dismissal)
  	"""
! 	flag=2 #default: user registers directly as member
  	if self.verifymembership: 
! 	    flag=1 #if not said otherwise
  	self.users._addTestMembers([str(self.getCurrentUser())], flag)
      	self.users = self.users
--- 713,719 ----
      	    it sets user's state to '1' (waiting for verification/dismissal)
  	"""
! 	flag = 2 #default: user registers directly as member
  	if self.verifymembership: 
! 	    flag = 1 #if not said otherwise
  	self.users._addTestMembers([str(self.getCurrentUser())], flag)
      	self.users = self.users



-------------------------------------------------------
The SF.Net email is sponsored by: Beat the post-holiday blues
Get a FREE limited edition SourceForge.net t-shirt from ThinkGeek.
It's fun and FREE -- well, almost....http://www.thinkgeek.com/sfshirt
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.