Esempio n. 1
0
    def setUp(self):
        self.emails = ["*****@*****.**", "*****@*****.**"]

        self.agency = Agency(name='Agency With Offices',
                             zip_code=20404,
                             emails=self.emails)
        self.agency.save()

        self.office = Office(agency=self.agency,
                             name='Office 1',
                             zip_code=20404,
                             emails=self.emails)
        self.office.save()

        self.office2 = Office(agency=self.agency,
                              name='Office 2',
                              zip_code=20404,
                              emails=self.emails)
        self.office2.save()

        self.agency2 = Agency(name='Agency Without Offices',
                              zip_code=20009,
                              emails=self.emails)
        self.agency2.save()

        self.requester = Requester.objects.create(first_name='Alice',
                                                  last_name='Bobson',
                                                  email='*****@*****.**')
        self.request = FOIARequest.objects.create(
            requester=self.requester,
            office=self.office,
            date_end=date.today(),
            request_body='All the cheese')
Esempio n. 2
0
    def test_agency_save(self):
        agency = Agency(name='Department of Transportation')
        agency.save()

        retrieved = Agency.objects.get(pk=agency.pk)
        self.assertEqual(
            'Agency: Department of Transportation', str(retrieved))
        self.assertEqual(retrieved.slug, 'department-of-transportation')
Esempio n. 3
0
 def test_common_requests_field(self):
     """Verify that we can treat a JSONField as a list"""
     agency = Agency(name='Dr. Suess',
                     common_requests=['Thing one', 'Thing two', 'Red Fish'])
     agency.save()
     # Serialized to the DB and back again
     retrieved = Agency.objects.get(pk=agency.pk)
     self.assertEqual(retrieved.common_requests,
                      ['Thing one', 'Thing two', 'Red Fish'])
     agency.delete()
Esempio n. 4
0
    def test_office_save(self):
        agency = Agency(name='Department of Commerce')
        agency.save()

        office = Office(name='Commerce Is FUNdamental', agency=agency)
        office.save()
        retrieved = Office.objects.get(pk=office.pk)

        self.assertEqual(retrieved.office_slug, 'commerce-is-fundamental')
        self.assertEqual(
            retrieved.slug, 'department-of-commerce--commerce-is-fundamental')
 def setUp(self):
     self.emails = ["*****@*****.**", "*****@*****.**"]
     self.agency = Agency(name='Agency With Offices',
                          zip_code=20404,
                          emails=self.emails)
     self.agency.save()
     self.office = Office(agency=self.agency,
                          name='Office 1',
                          zip_code=20404,
                          emails=self.emails)
     self.office.save()
Esempio n. 6
0
    def test_no_email(self):
        """ For agencies without their own request form, and without an email
        address, do not display a FOIA request form. """

        a = Agency(name="Broadcasting Board of Governors", slug="brodcasting")
        a.save()

        response = self.client.get(
            reverse('contact_landing', args=['broadcasting']))
        self.assertTrue(200, response.status_code)
        content = response.content.decode('utf-8')
        self.assertTrue('Request online' not in content)
Esempio n. 7
0
    def test_agency_preparer(self):
        """ Test the preparer that deals with just the unique Agency fields.
        """

        agency = Agency(name='agency-name',
                        description='agency-description',
                        abbreviation='AN',
                        slug='agency-slug')
        fields_preparer = agency_preparer()
        ap = fields_preparer.prepare(agency)
        self.assertEqual('agency-name', ap['name'])
        self.assertEqual('agency-description', ap['description'])
        self.assertEqual('AN', ap['abbreviation'])
        self.assertEqual('agency-slug', ap['slug'])
    def setUp(self):
        self.emails = ["*****@*****.**", "*****@*****.**"]
        self.agency = Agency(name='Agency With Offices',
                             zip_code=20404,
                             emails=self.emails)
        self.agency.save()
        self.office = Office(agency=self.agency,
                             name='Office 1',
                             zip_code=20404,
                             emails=self.emails)
        self.office.save()

        # Turn off SHOW_WEBFORM
        settings.SHOW_WEBFORM = False
        self.reload_urls()
Esempio n. 9
0
    def test_statstest_save(self):
        """ Confirm obj saves and validate number handling. """
        agency = Agency(name='Department of Homeland Security')
        agency.save()

        stats = Stats(
            agency=agency,
            year=2014,
            stat_type='S',
            median=1.26,
        )
        stats.save()

        retrieved = Stats.objects.get(pk=stats.pk)
        self.assertEqual(retrieved.median, 1.26)
        self.assertEqual(retrieved.less_than_one, False)
    def test_create_request_no_email(self):
        """ Try to submit a request to an agency that has no online form, and
        no email address. This should fail with the appropriate HTTP status
        code. """

        a = Agency(name="Broadcasting Board of Governors", slug="broadcasting")
        a.save()

        c = Client()

        data = {
            'agency': 'broadcasting',
            'first_name': 'Joe',
            'last_name': 'Public',
            'email': '*****@*****.**',
            'body': 'I want documents about palm trees.'
        }
        data_string = json.dumps(data)
        response = c.post('/api/request/',
                          content_type="application.json",
                          data=data_string)
        self.assertEqual(400, response.status_code)