From 9dfde037e7e32ec1773380f311d5234981f67404 Mon Sep 17 00:00:00 2001
From: Tania Fecheta <tania.fecheta@thinslices.com>
Date: Thu, 22 Nov 2018 16:56:57 +0200
Subject: [PATCH] test(authsome-helpers): add tests to check if reviewers see
 other reports

---
 .../tests/config/authsome-helpers.test.js     | 44 ++++++++++++++++++-
 1 file changed, 43 insertions(+), 1 deletion(-)

diff --git a/packages/xpub-faraday/tests/config/authsome-helpers.test.js b/packages/xpub-faraday/tests/config/authsome-helpers.test.js
index d28bfc3f2..de16758af 100644
--- a/packages/xpub-faraday/tests/config/authsome-helpers.test.js
+++ b/packages/xpub-faraday/tests/config/authsome-helpers.test.js
@@ -116,7 +116,7 @@ describe('Authsome Helpers', () => {
       const { files = {} } = result
       expect(files.coverLetter).toBeFalsy()
     })
-    it('reviewer should not see private comments', () => {
+    it('reviewer should not see private comments on the last version of the manuscript', () => {
       const { fragment } = testFixtures.fragments
       fragment.recommendations = [
         {
@@ -143,6 +143,48 @@ describe('Authsome Helpers', () => {
       expect(recommendations[0].comments[0].public).toEqual(true)
     })
 
+    it('reviewer should see other reviewers recommendations on previous version if he submitted a review on that fragment', () => {
+      const { fragment } = testFixtures.fragments
+      const { answerReviewer } = testFixtures.users
+
+      const result = ah.stripeFragmentByRole({
+        fragment,
+        role: 'reviewer',
+        isLast: false,
+        user: answerReviewer,
+      })
+      const { recommendations } = result
+      expect(recommendations).toHaveLength(7)
+    })
+
+    it('reviewer should not see other reviewers recommendations on latest fragment', () => {
+      const { fragment } = testFixtures.fragments
+      const { answerReviewer } = testFixtures.users
+
+      const result = ah.stripeFragmentByRole({
+        fragment,
+        role: 'reviewer',
+        isLast: true,
+        user: answerReviewer,
+      })
+      const { recommendations } = result
+      expect(recommendations).toHaveLength(6)
+    })
+
+    it('reviewer should not see any reviewer recommendation on previous version if he did not submit a review on that fragment', () => {
+      const { fragment } = testFixtures.fragments
+      const { inactiveReviewer } = testFixtures.users
+
+      const result = ah.stripeFragmentByRole({
+        fragment,
+        role: 'reviewer',
+        isLast: false,
+        user: inactiveReviewer,
+      })
+      const { recommendations } = result
+      expect(recommendations).toHaveLength(0)
+    })
+
     it('author should not see recommendations if a decision has not been made', () => {
       const { fragment } = testFixtures.fragments
       fragment.recommendations = [
-- 
GitLab