summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--chimere/templatetags/chimere_tags.py4
-rw-r--r--chimere/tests.py16
2 files changed, 17 insertions, 3 deletions
diff --git a/chimere/templatetags/chimere_tags.py b/chimere/templatetags/chimere_tags.py
index 854e0de..b345adf 100644
--- a/chimere/templatetags/chimere_tags.py
+++ b/chimere/templatetags/chimere_tags.py
@@ -61,8 +61,8 @@ def display_news(context, display=False):
# Retrieve active markers
today = date.today()
after = today + timedelta(settings.CHIMERE_DAYS_BEFORE_EVENT)
- news += list(Marker.objects.filter(status='A', end_date__gte=today,
- start_date__lte=after))
+ news += list(Marker.objects.filter(status='A', start_date__lte=after
+ ).filter(Q(end_date__gte=today)|Q(end_date__isnull=True)))
news.sort(key=lambda x:x.date, reverse=True)
context_data['news_lst'] = news
return context_data
diff --git a/chimere/tests.py b/chimere/tests.py
index 78a83cc..68a3cdf 100644
--- a/chimere/tests.py
+++ b/chimere/tests.py
@@ -9,11 +9,13 @@ test_dir_path = os.path.dirname(test_path) + os.sep
from django.conf import settings
from django.core.urlresolvers import reverse
+from django.template import Context
from django.test import TestCase
from chimere.models import Area, Icon, Importer, Category, SubCategory, Marker,\
- Route
+ Route, News
from chimere.forms import MarkerForm
+from chimere.templatetags.chimere_tags import display_news
from chimere.utils import ShapefileManager
def area_setup():
@@ -208,3 +210,15 @@ class DynamicCategoryTest(TestCase):
cats = self.area.getCategories(status='A', filter_available=True)
self.assertEqual(len(cats), 1)
+class NewsTest(TestCase):
+ def setUp(self):
+ self.markers = marker_setup()
+ self.news = []
+ self.news.append(News.objects.create(title=u"Test news 1",
+ available=True))
+ self.news.append(News.objects.create(title=u"Test news 2",
+ available=False))
+
+ def test_news_display(self):
+ context = display_news(Context({}))
+ self.assertEqual(len(context['news_lst']), 2)