Skip to content
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
refactor AutoSubmittedValue to Headers\AutoSubmitted and adding
header name to constants

Signed-off-by: Bennet Becker <[email protected]>
  • Loading branch information
bennet0496 committed Jan 3, 2023
commit 4dc09571648634d23880cc04f958d4ff3d1ace68
14 changes: 7 additions & 7 deletions lib/private/Mail/Message.php
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@
*/
namespace OC\Mail;

use OCP\Mail\AutoSubmittedValue;
use OCP\Mail\Headers\AutoSubmitted;
use OCP\Mail\IAttachment;
use OCP\Mail\IEMailTemplate;
use OCP\Mail\IMessage;
Expand Down Expand Up @@ -307,22 +307,22 @@ public function useTemplate(IEMailTemplate $emailTemplate): IMessage {
* Add the Auto-Submitted header to the email, preventing most automated
* responses to automated messages.
*
* @param AutoSubmittedValue::* $value (one of AutoSubmittedValue::NO, AutoSubmittedValue::AUTO_GENERATED, AutoSubmittedValue::AUTO_REPLIED)
* @param AutoSubmitted::VALUE_* $value (one of AutoSubmitted::VALUE_NO, AutoSubmitted::VALUE_AUTO_GENERATED, AutoSubmitted::VALUE_AUTO_REPLIED)
* @return $this
*/
public function setAutoSubmitted(string $value): IMessage {
$headers = $this->swiftMessage->getHeaders();

if ($headers->has('Auto-Submitted')) {
if ($headers->has(AutoSubmitted::HEADER)) {
// if the header already exsists, remove it.
// the value can be modified with some implementations
// of the interface \Swift_Mime_Header, however the
// interface doesn't, and this makes the static-code
// analysis unhappy.
$headers->remove('Auto-Submitted');
$headers->remove(AutoSubmitted::HEADER);
}

$headers->addTextHeader('Auto-Submitted', $value);
$headers->addTextHeader(AutoSubmitted::HEADER, $value);

return $this;
}
Expand All @@ -336,7 +336,7 @@ public function setAutoSubmitted(string $value): IMessage {
public function getAutoSubmitted(): string {
$headers = $this->swiftMessage->getHeaders();

return $headers->has('Auto-Submitted') ?
$headers->get('Auto-Submitted')->toString() : AutoSubmittedValue::NO;
return $headers->has(AutoSubmitted::HEADER) ?
$headers->get(AutoSubmitted::HEADER)->toString() : AutoSubmitted::VALUE_NO;
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
*/
namespace OCP\Mail;
namespace OCP\Mail\Headers;

/**
* Keyword values for the Auto-Submitted email header, as per RFC 3834.
Expand All @@ -35,7 +35,16 @@
*
* @since 26.0.0
*/
final class AutoSubmittedValue {
final class AutoSubmitted {

/**
* Name of the Header as used in the final message later
*
* @var string
* @since 26.0.0
*/
public const HEADER = 'Auto-Submitted';

/**
* Indicates that a message was NOT automatically generated, but was
* created by a human (or following human interaction). It is the equivalent
Expand All @@ -44,7 +53,7 @@ final class AutoSubmittedValue {
* @var string
* @since 26.0.0
*/
public const NO = 'no';
public const VALUE_NO = 'no';

/**
* Indicates that a message was generated by an automatic process, and is
Expand All @@ -53,7 +62,7 @@ final class AutoSubmittedValue {
* @var string
* @since 26.0.0
*/
public const AUTO_GENERATED = 'auto-generated';
public const VALUE_AUTO_GENERATED = 'auto-generated';

/**
* Indicates that a message was automatically generated as a direct response
Expand All @@ -62,5 +71,5 @@ final class AutoSubmittedValue {
* @var string
* @since 26.0.0
*/
public const AUTO_REPLIED = 'auto-replied';
public const VALUE_AUTO_REPLIED = 'auto-replied';
}
2 changes: 1 addition & 1 deletion lib/public/Mail/IMessage.php
Original file line number Diff line number Diff line change
Expand Up @@ -98,7 +98,7 @@ public function useTemplate(IEMailTemplate $emailTemplate): IMessage;
* Add the Auto-Submitted header to the email, preventing most automated
* responses to automated messages.
*
* @param AutoSubmittedValue::* $value (one of AutoSubmittedValue::NO, AutoSubmittedValue::AUTO_GENERATED, AutoSubmittedValue::AUTO_REPLIED)
* @param AutoSubmitted::VALUE_* $value (one of AutoSubmitted::VALUE_NO, AutoSubmitted::VALUE_AUTO_GENERATED, AutoSubmitted::VALUE_AUTO_REPLIED)
* @return IMessage
* @since 26.0.0
*/
Expand Down
14 changes: 7 additions & 7 deletions tests/lib/Mail/MessageTest.php
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
namespace Test\Mail;

use OC\Mail\Message;
use OCP\Mail\AutoSubmittedValue;
use OCP\Mail\Headers\AutoSubmitted;
use OCP\Mail\IEMailTemplate;
use Swift_Message;
use Test\TestCase;
Expand Down Expand Up @@ -285,10 +285,10 @@ public function testSetAutoSubmitted1() {
->method('remove');
$swiftMimeSimpleHeaderSet->expects($this->once())
->method('addTextHeader')
->with('Auto-Submitted', AutoSubmittedValue::AUTO_GENERATED);
->with('Auto-Submitted', AutoSubmitted::VALUE_AUTO_GENERATED);

$message = new Message($swiftMessage, false);
$message->setAutoSubmitted(AutoSubmittedValue::AUTO_GENERATED);
$message->setAutoSubmitted(AutoSubmitted::VALUE_AUTO_GENERATED);
}

public function testSetAutoSubmitted2() {
Expand All @@ -313,10 +313,10 @@ public function testSetAutoSubmitted2() {
->with('Auto-Submitted');
$swiftMimeSimpleHeaderSet->expects($this->once())
->method('addTextHeader')
->with('Auto-Submitted', AutoSubmittedValue::AUTO_GENERATED);
->with('Auto-Submitted', AutoSubmitted::VALUE_AUTO_GENERATED);

$message = new Message($swiftMessage, false);
$message->setAutoSubmitted(AutoSubmittedValue::AUTO_GENERATED);
$message->setAutoSubmitted(AutoSubmitted::VALUE_AUTO_GENERATED);
}

public function testGetAutoSubmitted1() {
Expand Down Expand Up @@ -357,7 +357,7 @@ public function testGetAutoSubmitted2() {


$swiftMessage->method('getHeaders')->willReturn($swiftMimeSimpleHeaderSet);
$swiftMimeHeader->method('toString')->willReturn(AutoSubmittedValue::AUTO_GENERATED);
$swiftMimeHeader->method('toString')->willReturn(AutoSubmitted::VALUE_AUTO_GENERATED);

$swiftMimeSimpleHeaderSet->expects($this->once())
->method('has')
Expand All @@ -368,6 +368,6 @@ public function testGetAutoSubmitted2() {
->willReturn($swiftMimeHeader);

$message = new Message($swiftMessage, false);
$this->assertSame(AutoSubmittedValue::AUTO_GENERATED, $message->getAutoSubmitted());
$this->assertSame(AutoSubmitted::VALUE_AUTO_GENERATED, $message->getAutoSubmitted());
}
}