示例#1
0
    def test_thumbnail_url(self):
        photo = make(Photo, pk=1, file=gen_image_field())

        name = 'thumbnail-{name}'.format(name=os.path.basename(photo.file.name))
        path = os.path.join(settings.MEDIA_ROOT, 'photos', name)
        url = posixpath.join(settings.MEDIA_URL, 'photos', name)

        if os.path.exists(path):
            os.remove(path)

        self.assertEqual(photo.thumbnail_url, url)
        self.assertTrue(os.path.exists(path))

        # Now we want to make sure subsequent calls to the thumbnail_url
        # do not recreate the image (since that would be expensive).

        flag_text = 'this should not be overwritten!'
        with open(path, 'w') as f:
            f.write(flag_text)

        self.assertEqual(photo.thumbnail_url, url)
        with open(path) as f:
            self.assertEqual(f.read(), flag_text)

        os.remove(path)
示例#2
0
 def test_additional_speaker(self):
     speaker2 = mommy.make(Speaker, photo=gen_image_field())
     mommy.make(AdditionalSpeaker,
                proposalbase=self.proposal,
                speaker=speaker2,
                status=AdditionalSpeaker.SPEAKING_STATUS_ACCEPTED)
     response = self.client.get(reverse('pybay_speakers_list'))
     self.assertCountEqual(response.context['speakers'],
                           [self.speaker, speaker2])
示例#3
0
    def test_get_active_speaker_by_slug(self):
        s1 = mommy.make(Speaker, name="Lorem Ipsum 1", photo=gen_image_field())
        s2 = mommy.make(Speaker, name="Lorem Ipsum 2", photo=gen_image_field())
        s3 = mommy.make(Speaker, name="Lorem Ipsum 3", photo=gen_image_field())

        kind = mommy.make(ProposalKind)
        p2 = TalkProposal.objects.create(
            title='test this title',
            kind=kind,
            speaker=s2,
            audience_level=1,
        )
        mommy.make(ProposalResult, proposal=p2, status='accepted')
        self.assertEquals(
            get_accepted_speaker_by_slug(s2.name_slug),
            s2,
        )
        with self.assertRaises(Speaker.DoesNotExist):
            get_accepted_speaker_by_slug(s1.name_slug)
示例#4
0
 def setUp(self):
     kind = mommy.make(ProposalKind)
     self.speaker = mommy.make(Speaker, photo=gen_image_field())
     self.proposal = TalkProposal.objects.create(
         title='test this title',
         kind=kind,
         speaker=self.speaker,
         audience_level=1,
     )
     proposal_result = mommy.make(ProposalResult,
                                  proposal=self.proposal,
                                  status='accepted')
示例#5
0
 def test_create(self):
     data = {
         'avatar': gen_image_field(),
         'country': self.country_random.id,
         'first_name': gen_string(max_length=10),
         'last_name': gen_string(max_length=10),
         'password': gen_string(max_length=10),
         'paypal_email': gen_email(),
         'username': gen_email()
     }
     response = self.client.post(self.proxies_list_url, data)
     self.assertEqual(response.status_code, status.HTTP_201_CREATED)
示例#6
0
    def test_edit_photo(self):
        photo = make(Photo, pk=1, file=gen_image_field(), taken_on=now())

        response = self.client.get(reverse('admin-edit-photo', args=(photo.pk,)))
        self.assertEqual(response.status_code, 200)

        # edit the photo
        data = response.context['form'].initial
        data['caption'] = "whatever"
        response = self.client.post(reverse('admin-edit-photo', args=(photo.pk,)), data)
        # the response should be valid, so a redirect should happen
        self.assertEqual(response.status_code, 302)

        # make sure the caption got updated
        photo = Photo.objects.get(pk=1)
        self.assertEqual(photo.caption, data['caption'])
示例#7
0
 def test_get_slug(self):
     self.speaker = mommy.make(Speaker,
                               name="Lorem Ipsum",
                               photo=gen_image_field())
     self.assertEquals(self.speaker.name_slug, "lorem-ipsum")
示例#8
0
 def test_url(self):
     # make sure the URL path is valid
     photo = make(Photo, pk=1, file=gen_image_field())
     self.assertEqual(photo.url, "/media/photos/%s" % os.path.basename(photo.file.name))