From b4b3276a5be575d6edefca1214c38c2bd0f0b4e5 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Daniel=20Calvi=C3=B1o=20S=C3=A1nchez?= <danxuliu@gmail.com>
Date: Mon, 7 Dec 2020 01:39:36 +0100
Subject: [PATCH] Add integration tests for getting guest avatars
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
---
 build/integration/features/avatar.feature       | 16 ++++++++++++++++
 build/integration/features/bootstrap/Avatar.php | 14 ++++++++++++++
 2 files changed, 30 insertions(+)

diff --git a/build/integration/features/avatar.feature b/build/integration/features/avatar.feature
index 579417844ef..f7926615c01 100644
--- a/build/integration/features/avatar.feature
+++ b/build/integration/features/avatar.feature
@@ -165,3 +165,19 @@ Feature: avatar
       | X-NC-IsCustomAvatar | 1 |
     And last avatar is a square of size 96
     And last avatar is a single "#FF0000" color
+
+
+
+  Scenario: get default guest avatar
+    When user "user0" gets avatar for guest "guest0"
+    Then The following headers should be set
+      | Content-Type | image/png |
+    And last avatar is a square of size 128
+    And last avatar is not a single color
+
+  Scenario: get default guest avatar as an anonymous user
+    When user "anonymous" gets avatar for guest "guest0"
+    Then The following headers should be set
+      | Content-Type | image/png |
+    And last avatar is a square of size 128
+    And last avatar is not a single color
diff --git a/build/integration/features/bootstrap/Avatar.php b/build/integration/features/bootstrap/Avatar.php
index 90cc36067bf..388715340c6 100644
--- a/build/integration/features/bootstrap/Avatar.php
+++ b/build/integration/features/bootstrap/Avatar.php
@@ -71,6 +71,20 @@ trait Avatar {
 		$this->getLastAvatar();
 	}
 
+	/**
+	 * @When user :user gets avatar for guest :guestAvatar
+	 *
+	 * @param string $user
+	 * @param string $guestAvatar
+	 */
+	public function userGetsAvatarForGuest(string $user, string $guestAvatar) {
+		$this->asAn($user);
+		$this->sendingToDirectUrl('GET', '/index.php/avatar/guest/' . $guestAvatar . '/128');
+		$this->theHTTPStatusCodeShouldBe('201');
+
+		$this->getLastAvatar();
+	}
+
 	/**
 	 * @When logged in user gets temporary avatar
 	 */
-- 
GitLab