Example #1
0
 def test_creation(self):
   fb = FractionBank()
   fb.name = "Bank 1"
   fb.date_created = datetime.date(2012,03,07)
   fb.save()
   fbs = FractionBank.objects.all()
   fb = fbs[0]
   self.assertEquals(fb.name,"Bank 1")
   self.assertEquals(fb.date_created,datetime.date(2012,03,07))
Example #2
0
 def test_creation(self):
   fb = FractionBank()
   fb.name = "Bank 1"
   fb.date_created = datetime.date(2012,03,07)
   fb.save()
   fqb = FractionQuestionBank()
   fqb.name = "Addition 100"
   fqb.fraction_bank = fb
   fqb.date_created = datetime.date(2012,03,07)
   fqb.save()
   fqb = FractionQuestionBank.objects.all()[0]
   self.assertEquals(fqb.fraction_bank.name,'Bank 1')
Example #3
0
 def test_creation(self):
   fb = FractionBank()
   fb.name = "Bank 1"
   fb.date_created = datetime.date(2012,03,07)
   fb.save()
   oper = Oper.objects.get(pk=1)
   fbqs = createFraction(1,oper)
   fbq = fbqs[0]
   fbq.save()
   fbf = FractionBankFraction()
   fbf.fraction_bank = fb
   fbf.fraction = fbq
   fbf.save()
   fbfs = FractionBankFraction.objects.all()
   fbf = fbfs[0]
   self.assertEquals(fbf.fraction_bank.name,"Bank 1")
   self.assertEquals(fbf.fraction,fbq)
Example #4
0
 def test_add_identical_items(self):
   fb = FractionBank()
   fb.name = "Bank 0 to 4"
   fb.date_created = datetime.date(2012,03,07)
   fb.save()
   st = 0
   en = 4
   i = fb.fill(st,en)
   fbfs = FractionBankFraction.objects.all()
   
   fqb = FractionQuestionBank()
   fqb.name = "Addition 2"
   fqb.fraction_bank = fb
   fqb.date_created = datetime.date(2012,03,07)
   fqb.save()
   
   fq = FractionQuestion()
   fq.f1 = fbfs[0].fraction
   fq.f2 = fbfs[1].fraction
   oper = Oper.objects.get(pk=1)
   ans = fq.f1.oper(fq.f2,oper)
   ans.save()
   oper = Oper.objects.get(pk=1)     
   fq.oper = oper
   fq.answer = ans
   fq.save()
   
   #Add question once           
   fqb.add_question(fq)
   #Try and add same again
   fqb.add_question(fq)
   #Should fail gracefully and only one question in bank
   fbq = FractionBankQuestion.objects.all()
   self.assertEquals(len(fbq),1)
Example #5
0
 def test_creation(self):
   fb = FractionBank()
   fb.name = "Bank 1"
   fb.date_created = datetime.date(2012,03,07)
   fb.save()
   st = 0
   en = 10
   i = fb.fill(st,en)
   fbfs = FractionBankFraction.objects.all()
   
   fqb = FractionQuestionBank()
   fqb.name = "Addition 100"
   fqb.fraction_bank = fb
   fqb.date_created = datetime.date(2012,03,07)
   fqb.save()
   
   fq = FractionQuestion()
   fq.f1 = fbfs[0].fraction
   fq.f2 = fbfs[1].fraction
   oper = Oper.objects.get(pk=1)
   ans = fq.f1.oper(fq.f2,oper)
   ans.save()
   oper = Oper.objects.get(pk=1)      
   fq.oper = oper
   fq.answer = ans
   fq.save()
   
   fbq = FractionBankQuestion()
   fbq.fraction_question_bank = fqb
   fbq.question = fq
   fbq.save()
   
   fbq = FractionBankQuestion.objects.all()[0]
   self.assertEquals(fbq.question.answer,ans)
Example #6
0
 def test_generate_question(self):
   fb = FractionBank()
   fb.name = "Bank 1"
   fb.date_created = datetime.date(2012,03,07)
   fb.save()
   st = 0
   en = 9
   i = fb.fill(st,en)
   oper = Oper.objects.get(pk=1)     
   q = fb.generate_question(oper)
   self.assertEquals(isinstance(q, FractionQuestion),True)
   #test denominator
   self.assertNotEqual(q.answer.denom, q.f1.denom * q.f2.denom)
   self.assertNotEqual(q.f1.denom, q.f2.denom)	  
Example #7
0
 def test_fill_bank(self):
   fb = FractionBank()
   fb.name = "Bank 1"
   fb.date_created = datetime.date(2012,03,07)
   fb.save()
   st = 0
   en = 10
   i = fb.fill(st,en)
   print i
   fb = FractionBankFraction.objects.all()
   self.assertEquals(len(fb),i)
Example #8
0
 def test_add_random_questions(self):
   fb = FractionBank()
   fb.name = "Bank 0 to 9"
   fb.date_created = datetime.date(2012,03,07)
   fb.save()
   st = 0
   en = 9
   i = fb.fill(st,en)    
   fqb = FractionQuestionBank()
   fqb.name = "Addition"
   fqb.fraction_bank = fb
   fqb.date_created = datetime.date(2012,03,07)
   fqb.save()
   oper = Oper.objects.get(pk=1)      
   n = 5
   fqb.add_n_questions(n,oper)
   fbq = FractionBankQuestion.objects.all()
   self.assertEquals(len(fbq),n)
Example #9
0
 def test_fill_bank_with_negatives(self):
   fb = FractionBank()
   fb.name = "Bank 1"
   fb.date_created = datetime.date(2012,03,07)
   fb.save()
   st = 0
   en = 10
   fb.fill(st,en)
   
   fbn = FractionBank()
   fbn.name = "Bank 2"
   fbn.date_created = datetime.date(2012,03,07)
   fbn.save()
   st = 0
   en = 10
   fbn.fill(st,en,True)
   
   fb1 = FractionBankFraction.objects.filter(fraction_bank=fb)
   fb2 = FractionBankFraction.objects.filter(fraction_bank=fbn)
   
   self.assertEquals(2 * len(fb1),len(fb2))