Ejemplo n.º 1
0
    def test_get_object(self, rf):
        project = factories.ProjectFactory()
        request = rf.get('/')
        feed = feeds.url_feed()
        obj = feed.get_object(request, project.project_slug)

        assert obj == project
Ejemplo n.º 2
0
    def test_item_pubdate(self):
        project = factories.ProjectFactory()
        surt = factories.SURTFactory(url_project=project)
        feed = feeds.url_feed()
        item_pubdate = feed.item_pubdate(surt)

        assert item_pubdate == surt.date
Ejemplo n.º 3
0
    def test_link(self, rf):
        project = factories.ProjectFactory(project_slug='test_project')
        request = rf.get('/')
        feed = feeds.url_feed()
        feed.get_object(request, project.project_slug)
        link = feed.link(project)

        assert link == '/nomination/test_project/feed/urls/'
Ejemplo n.º 4
0
    def test_item_link(self, rf):
        project = factories.ProjectFactory(project_slug='test_project')
        surt = factories.SURTFactory(url_project=project, entity='http://www.example.com')
        request = rf.get('/')

        feed = feeds.url_feed()
        feed.get_object(request, project.project_slug)
        item_link = feed.item_link(surt)

        assert item_link == '/nomination/test_project/url/http://www.example.com/'
Ejemplo n.º 5
0
    def test_item_title(self, rf):
        project = factories.ProjectFactory()
        surt = factories.SURTFactory(url_project=project)
        url = factories.URLFactory(url_project=project, entity=surt.entity, attribute='Site_Name')
        request = rf.get('/')

        feed = feeds.url_feed()
        feed.get_object(request, project.project_slug)
        item_title = feed.item_title(surt)

        assert item_title == url.value
Ejemplo n.º 6
0
    def test_item_description_returns_entity(self, rf):
        """If the URL has no description, return just the URL itself."""
        project = factories.ProjectFactory()
        surt = factories.SURTFactory(url_project=project)
        request = rf.get('/')

        feed = feeds.url_feed()
        feed.get_object(request, project.project_slug)
        item_description = feed.item_description(surt)

        assert item_description == surt.entity
Ejemplo n.º 7
0
    def test_item_title_returns_entity(self, rf):
        """If the URL has no site name or title on record, return the URL."""
        project = factories.ProjectFactory()
        surt = factories.SURTFactory(url_project=project)
        request = rf.get('/')

        feed = feeds.url_feed()
        feed.get_object(request, project.project_slug)
        item_title = feed.item_title(surt)

        assert item_title == surt.entity
Ejemplo n.º 8
0
    def test_items_returns_sorted_surts(self):
        """Items returned should be sorted by item.date"""
        project = factories.ProjectFactory()
        surts = factories.SURTFactory.create_batch(2, url_project=project)
        # Adjust dates to reverse the sorted order of the SURTs.
        surts[1].date -= timedelta(days=3)

        feed = feeds.url_feed()
        items = feed.items(project)

        assert items[0] == surts[1]
        assert items[1] == surts[0]
Ejemplo n.º 9
0
    def test_items_returns_only_project_surts(self):
        project = factories.ProjectFactory()
        surts = factories.SURTFactory.create_batch(3, url_project=project)
        factories.URLFactory.create_batch(3, url_project=project)
        factories.SURTFactory.create_batch(3)

        feed = feeds.url_feed()
        items = feed.items(project)

        assert len(items) == 3
        for surt in items:
            assert surt in surts
Ejemplo n.º 10
0
    def test_item_title_returns_url_title(self, rf):
        """If the URL has no site name on record, return the title."""
        project = factories.ProjectFactory()
        surt = factories.SURTFactory(url_project=project)
        url = factories.URLFactory(url_project=project, entity=surt.entity, attribute='Title')
        request = rf.get('/')

        feed = feeds.url_feed()
        feed.get_object(request, project.project_slug)
        item_title = feed.item_title(surt)

        assert item_title == url.value
Ejemplo n.º 11
0
    def test_item_description(self, rf):
        project = factories.ProjectFactory()
        surt = factories.SURTFactory(url_project=project, entity='www.example.com')
        factories.URLFactory(
            url_project=project,
            entity=surt.entity,
            attribute='Description',
            value='Home Page'
        )
        request = rf.get('/')

        feed = feeds.url_feed()
        feed.get_object(request, project.project_slug)
        item_description = feed.item_description(surt)

        assert item_description == 'www.example.com - Home Page'
Ejemplo n.º 12
0
    url(r"^$", project_listing, name='project_listing'),
    url(r"^robots.txt$", robot_ban, name='robot_ban'),
    url(r"^about/$", nomination_about, name='nomination_about'),
    url(r"^help/$", nomination_help, name='nomination_help'),
    #url(r"^about/$", include('django.contrib.flatpages.urls'), name='nomination_about'),
    #url(r"^help/$", include('django.contrib.flatpages.urls'), name='nomination_help'),
    url(r"([^/]+)/lookup/$", url_lookup, name='url_lookup'),
    url(r"([^/]+)/search.json$", search_json, name='search_json'),
    url(r"([^/]+)/browse/([^/]+)/browse.json$", browse_json, name='browse_json'),
    url(r"([^/]+)/reports/projectdump/$", project_dump, name='project_dump'),
    url(r"([^/]+)/reports/urls/score/$", url_score_report, name='url_score_report'),
    url(r"([^/]+)/reports/urls/nomination/$", url_nomination_report, name='url_nomination_report'),
    url(r"([^/]+)/reports/urls/date/$", url_date_report, name='url_date_report'),
    url(r"([^/]+)/reports/urls/$", url_report, name='url_report'),
    url(r"([^/]+)/reports/surts/$", surt_report, name='surt_report'),
    url(r"([^/]+)/reports/metadata/(nominator|institution)/$", nominator_report, name='nominator_report'),
    url(r"([^/]+)/reports/metadata/(nominator|institution)/([^/]+)/$", nominator_url_report, name='nominator_url_report'),
    url(r"([^/]+)/reports/metadata/([^/]+)/$", field_report, name='field_report'),
    #commented out line below for line under that in case user input value contains '/'
    #url(r"([^/]+)/reports/metadata/([^/]+)/([^/]+)/$", value_report, name='value_report'),
    url(r"([^/]+)/reports/metadata/([^/]+)/((?:.|\s)+)/$", value_report, name='value_report'),
    url(r"([^/]+)/reports/$", reports_view, name='reports_view'),
    url(r"^(?P<slug>[^/]+)/url/(?P<url_entity>[\w\W]+)/$", url_listing, name='url_listing'),
    url(r"^(?P<slug>[^/]+)/surt/(?P<surt>[\w\W]+)/$", url_surt, name='url_surt'),
    url(r"([^/]+)/add/$", url_add, name='url_add'),
    url(r"([^/]+)/about/$", project_about, name='project_about'),
    url(r"([^/]+)/feed/nominations/$", nomination_feed(), name='nomination_feed'),
    url(r"([^/]+)/feed/urls/$", url_feed(), name='url_feed'),
    url(r"([^/]+)/$", project_urls, name='project_urls'),
)
Ejemplo n.º 13
0
    def test_subtitle(self):
        project = factories.ProjectFactory(project_name='Test Project')
        feed = feeds.url_feed()
        subtitle = feed.subtitle(project)

        assert subtitle == 'RSS feed for the most recent URLs added to Test Project.'
Ejemplo n.º 14
0
    def test_title(self):
        project = factories.ProjectFactory(project_name='Test Project')
        feed = feeds.url_feed()
        title = feed.title(project)

        assert title == 'Latest URLs for Test Project'
Ejemplo n.º 15
0
    def test_get_object_raises_404(self, rf):
        request = rf.get('/')
        feed = feeds.url_feed()

        with pytest.raises(Http404):
            feed.get_object(request, '')