class EditarLancamentoPostOk(TestCase): def setUp(self): self.cadastro = SubmissaoModel(equipe=CHOICES_EQUIPES[1][0], status=CHOICES_CONDICAO[0][0], problema=CHOICES_PROBLEMAS[1][0], tempo=20) self.cadastro.save() self.cadastro.tempo = 50 self.form = SubmissaoForm(instance=self.cadastro) self.data = dict( id_lancamento=self.cadastro.pk, equipe=CHOICES_EQUIPES[4][0], status=CHOICES_CONDICAO[1][0], problema=CHOICES_PROBLEMAS[6][0], tempo=50, ) self.resp = self.client.post(r(view_in_test), self.data) def test_tempo_alterado(self): gravado = SubmissaoModel.objects.get(pk=1) self.assertEqual(50, gravado.tempo) self.assertNotEqual(20, gravado.status) def test_problema_status(self): gravado = SubmissaoModel.objects.get(pk=1) self.assertEqual(CHOICES_PROBLEMAS[6][0], gravado.problema) self.assertNotEqual(CHOICES_PROBLEMAS[1][0], gravado.problema) def test_status_alterado(self): gravado = SubmissaoModel.objects.get(pk=1) self.assertEqual(CHOICES_CONDICAO[1][0], gravado.status) self.assertNotEqual(CHOICES_CONDICAO[0][0], gravado.status) def test_equipe_alterado(self): gravado = SubmissaoModel.objects.get(pk=1) self.assertEqual(CHOICES_EQUIPES[4][0], gravado.equipe) def test_template(self): self.assertTemplateUsed(self.resp, template_post_in_ok_case) def test_200_template(self): self.assertEqual(200, self.resp.status_code) def test_csrf(self): self.assertContains(self.resp, 'csrfmiddlewaretoken') def test_context_form(self): form = self.resp.context['form'] self.assertIsInstance(form, PreSubmissaoForm) def test_html_template(self): tags = ( ('Olimpíada', 1), ('<form', 2), ('</form>', 2), ('type="submit"', 2), ) for text, count in tags: with self.subTest(): self.assertContains(self.resp, text, count)
class SubmissaoModelTest(TestCase): def setUp(self): self.status = CHOICES_CONDICAO[0][0] self.equipe = CHOICES_EQUIPES[1][0] self.problema = CHOICES_PROBLEMAS[1][0] self.cadastro = SubmissaoModel( equipe=self.equipe, status=self.status, problema=self.problema, tempo=20, ) self.cadastro.save() def test_created(self): self.assertTrue(SubmissaoModel.objects.exists()) def test_modificado_em(self): self.assertIsInstance(self.cadastro.modificado_em, datetime) def test_problema(self): problema = self.cadastro.__dict__.get('problema', '') self.assertEqual(problema, self.problema) def test_status(self): status = self.cadastro.__dict__.get('status', '') self.assertEqual(status, self.status) def test_equipe(self): equipe = self.cadastro.__dict__.get('equipe', '') self.assertEqual(equipe, self.equipe) def test_tempo(self): tempo = self.cadastro.__dict__.get('tempo', '') self.assertEqual(tempo, 20)
def setUp(self): self.cadastro = SubmissaoModel(equipe=CHOICES_EQUIPES[1][0], status=CHOICES_CONDICAO[0][0], problema=CHOICES_PROBLEMAS[1][0], tempo=20) self.cadastro.save() self.data = dict(id_lancamento=self.cadastro.pk, ) self.resp = self.client.post(r(view_in_test), self.data)
def setUp(self): self.status = CHOICES_CONDICAO[0][0] self.equipe = CHOICES_EQUIPES[1][0] self.problema = CHOICES_PROBLEMAS[1][0] self.cadastro = SubmissaoModel( equipe=self.equipe, status=self.status, problema=self.problema, tempo=20, ) self.cadastro.save()
class RemoverLancamentoPostFail(TestCase): def setUp(self): self.cadastro = SubmissaoModel(equipe=CHOICES_EQUIPES[1][0], status=CHOICES_CONDICAO[0][0], problema=CHOICES_PROBLEMAS[1][0], tempo=20) self.cadastro.save() self.data = dict(id_lancamento=self.cadastro.pk, ) self.cadastro.delete() self.resp = self.client.post(r(view_in_test), self.data) def test_template(self): self.assertTemplateUsed(self.resp, template_post_in_fail_case) def test_200_template(self): self.assertEqual(200, self.resp.status_code) def test_csrf(self): self.assertContains(self.resp, 'csrfmiddlewaretoken') def test_context_form(self): form = self.resp.context['form'] self.assertIsInstance(form, PreSubmissaoForm) def test_context_id_lancamento(self): id_lancamento = self.resp.context['id_lancamento'] self.assertIsInstance(id_lancamento, str) def test_html_template(self): tags = ( ('Olimpíada', 1), ('<form', 2), ('</form>', 2), ('type="submit"', 2), ) for text, count in tags: with self.subTest(): self.assertContains(self.resp, text, count)
def _pontuacao_por_equipe_problema(self, equipe, problema): submissao_rejeitadas = SubmissaoModel.objects.filter( equipe=equipe).filter(problema=problema).filter(status='RE') submissao_aceitas = SubmissaoModel.objects.filter( equipe=equipe).filter(problema=problema).filter(status='AC') qtd_envio_rejeitadas = submissao_rejeitadas.count() qtd_envio_aceitas = submissao_aceitas.count() qtd_envio = qtd_envio_rejeitadas + qtd_envio_aceitas tempo_total = 0 if qtd_envio_aceitas > 0: punicao = qtd_envio_rejeitadas * SubmissaoModel().get_punicao() tempo_aceito = submissao_aceitas.aggregate(Sum('tempo')) tempo1 = tempo_aceito.get('tempo__sum', '0') tempo_total = punicao + tempo1 return qtd_envio, tempo_total
def setUp(self): cad = SubmissaoModel(equipe=1, problema=2, status='RE', tempo=5) cad.save() cad = SubmissaoModel(equipe=1, problema=1, status='RE', tempo=5) cad.save() cad = SubmissaoModel(equipe=1, problema=1, status='AC', tempo=20) cad.save() cad = SubmissaoModel(equipe=1, problema=2, status='AC', tempo=55) cad.save() cad = SubmissaoModel(equipe=1, problema=5, status='RE', tempo=10) cad.save() cad = SubmissaoModel(equipe=1, problema=5, status='AC', tempo=20) cad.save() cad = SubmissaoModel(equipe=2, problema=1, status='RE', tempo=12) cad.save() cad = SubmissaoModel(equipe=5, problema=2, status='RE', tempo=20) cad.save() cad = SubmissaoModel(equipe=7, problema=1, status='AC', tempo=12) cad.save() cad = SubmissaoModel(equipe=9, problema=1, status='AC', tempo=10) cad.save() cad = SubmissaoModel(equipe=9, problema=2, status='AC', tempo=12) cad.save() cad = SubmissaoModel(equipe=9, problema=5, status='AC', tempo=12) cad.save() self.placar = Placar()
def setUp(self): cad = SubmissaoModel(equipe=1, problema=2, status='RE', tempo=5) cad.save() cad = SubmissaoModel(equipe=1, problema=1, status='RE', tempo=5) cad.save() cad = SubmissaoModel(equipe=1, problema=1, status='AC', tempo=20) cad.save() cad = SubmissaoModel(equipe=1, problema=2, status='AC', tempo=55) cad.save() cad = SubmissaoModel(equipe=1, problema=5, status='RE', tempo=10) cad.save() cad = SubmissaoModel(equipe=1, problema=5, status='AC', tempo=20) cad.save() cad = SubmissaoModel(equipe=2, problema=1, status='RE', tempo=12) cad.save() cad = SubmissaoModel(equipe=5, problema=2, status='RE', tempo=20) cad.save() cad = SubmissaoModel(equipe=7, problema=1, status='AC', tempo=12) cad.save() cad = SubmissaoModel(equipe=9, problema=1, status='AC', tempo=10) cad.save() cad = SubmissaoModel(equipe=9, problema=2, status='AC', tempo=12) cad.save() cad = SubmissaoModel(equipe=9, problema=5, status='AC', tempo=12) cad.save() self.client = Client() self.resp = self.client.get(r(view_in_test))