diff --git a/opentech/apply/review/tests/factories/models.py b/opentech/apply/review/tests/factories/models.py
index 2d59912a3ead56fc6f9d6389e9b221c96b212173..a6d825394a52951c3a37d9e2d409e8da67916c58 100644
--- a/opentech/apply/review/tests/factories/models.py
+++ b/opentech/apply/review/tests/factories/models.py
@@ -4,12 +4,12 @@ from opentech.apply.funds.tests.factories import ApplicationSubmissionFactory
 from opentech.apply.stream_forms.testing.factories import FormDataFactory
 from opentech.apply.users.tests.factories import StaffFactory
 
-from ...options import YES, NO, MAYBE
-from ...models import Review, ReviewForm
+from ...options import YES, NO, MAYBE, AGREE, DISAGREE
+from ...models import Review, ReviewForm, ReviewOpinion
 
 from . import blocks
 
-__all__ = ['ReviewFactory', 'ReviewFormFactory']
+__all__ = ['ReviewFactory', 'ReviewFormFactory', 'ReviewOpinionFactory']
 
 
 class ReviewFormDataFactory(FormDataFactory):
@@ -38,6 +38,19 @@ class ReviewFactory(factory.DjangoModelFactory):
     score = 0
 
 
+class ReviewOpinionFactory(factory.DjangoModelFactory):
+    class Meta:
+        model = ReviewOpinion
+
+    class Params:
+        opinion_agree = factory.Trait(opinion=AGREE)
+        opinion_disagree = factory.Trait(opinion=DISAGREE)
+
+    review = factory.SubFactory(ReviewFactory)
+    author = factory.SubFactory(StaffFactory)
+    opinion = DISAGREE
+
+
 class ReviewFormFactory(factory.DjangoModelFactory):
     class Meta:
         model = ReviewForm
diff --git a/opentech/apply/review/tests/test_views.py b/opentech/apply/review/tests/test_views.py
index d58724ff3f442a40caa974033a3cbd9c7bc92570..88114bd58dc0f37aa4f768c887b0a839e85c452f 100644
--- a/opentech/apply/review/tests/test_views.py
+++ b/opentech/apply/review/tests/test_views.py
@@ -5,7 +5,7 @@ from opentech.apply.funds.tests.factories.models import ApplicationSubmissionFac
 from opentech.apply.users.tests.factories import StaffFactory, UserFactory
 from opentech.apply.utils.testing.tests import BaseViewTestCase
 
-from .factories import ReviewFactory, ReviewFormFieldsFactory, ReviewFormFactory
+from .factories import ReviewFactory, ReviewFormFieldsFactory, ReviewFormFactory, ReviewOpinionFactory
 from ..models import Review, ReviewOpinion
 from ..options import NA, AGREE
 
@@ -208,6 +208,33 @@ class ReviewDetailTestCase(BaseViewTestCase):
         self.assertContains(response, submission.title)
         self.assertContains(response, "<p>Yes</p>")
 
+    def test_review_detail_opinion(self):
+        staff = StaffFactory()
+        submission = ApplicationSubmissionFactory(status='draft_proposal', workflow_stages=2)
+        review = ReviewFactory(submission=submission, author=self.user, recommendation_yes=True)
+        ReviewOpinionFactory(review=review, author=staff, opinion_disagree=True)
+        response = self.get_page(review)
+        self.assertContains(response, "Disagrees")
+
+
+class ReviewListTestCase(BaseViewTestCase):
+    user_factory = StaffFactory
+    url_name = 'funds:submissions:reviews:{}'
+    base_view_name = 'list'
+
+    def get_kwargs(self, instance):
+        return {'submission_pk': instance.submission.id}
+
+    def test_review_list_opinion(self):
+        staff = StaffFactory()
+        submission = ApplicationSubmissionFactory(status='draft_proposal', workflow_stages=2)
+        review = ReviewFactory(submission=submission, author=self.user, recommendation_yes=True)
+        ReviewOpinionFactory(review=review, author=staff, opinion_disagree=True)
+        response = self.get_page(review)
+        response_opinion = response.context['review_data']['opinions']['answers'][0]
+        self.assertIn("Disagrees", response_opinion)
+        self.assertIn(str(staff), response_opinion)
+
 
 class StaffReviewOpinionCase(BaseViewTestCase):
     user_factory = StaffFactory