瀏覽代碼

Move iconEmoji param upfront since Slack was never in a stable release

Jordi Boggiano 11 年之前
父節點
當前提交
d2ec7648d0
共有 2 個文件被更改,包括 11 次插入10 次删除
  1. 10 9
      src/Monolog/Handler/SlackHandler.php
  2. 1 1
      tests/Monolog/Handler/SlackHandlerTest.php

+ 10 - 9
src/Monolog/Handler/SlackHandler.php

@@ -52,14 +52,15 @@ class SlackHandler extends SocketHandler
     private $useAttachment;
 
     /**
-     * @param string $token         Slack API token
-     * @param string $channel       Slack channel (encoded ID or name)
-     * @param string $username      Name of a bot
-     * @param bool   $useAttachment Whether the message should be added to Slack as attachment (plain text otherwise)
-     * @param int    $level         The minimum logging level at which this handler will be triggered
-     * @param bool   $bubble        Whether the messages that are handled can bubble up the stack or not
+     * @param string      $token         Slack API token
+     * @param string      $channel       Slack channel (encoded ID or name)
+     * @param string      $username      Name of a bot
+     * @param bool        $useAttachment Whether the message should be added to Slack as attachment (plain text otherwise)
+     * @param string|null $iconEmoji     The emoji name to use (or null)
+     * @param int         $level         The minimum logging level at which this handler will be triggered
+     * @param bool        $bubble        Whether the messages that are handled can bubble up the stack or not
      */
-    public function __construct($token, $channel, $username = 'Monolog', $useAttachment = true, $level = Logger::CRITICAL, $bubble = true, $iconEmoji = null)
+    public function __construct($token, $channel, $username = 'Monolog', $useAttachment = true, $iconEmoji = null, $level = Logger::CRITICAL, $bubble = true)
     {
         if (!extension_loaded('openssl')) {
             throw new MissingExtensionException('The OpenSSL PHP extension is required to use the SlackHandler');
@@ -70,7 +71,7 @@ class SlackHandler extends SocketHandler
         $this->token = $token;
         $this->channel = $channel;
         $this->username = $username;
-        $this->iconEmoji = $iconEmoji;
+        $this->iconEmoji = trim($iconEmoji, ':');
         $this->useAttachment = $useAttachment;
     }
 
@@ -128,7 +129,7 @@ class SlackHandler extends SocketHandler
             $dataArray['text'] = $record['message'];
         }
 
-        if ($this->iconEmoji !== null) {
+        if ($this->iconEmoji) {
             $dataArray['icon_emoji'] = ":{$this->iconEmoji}:";
         }
 

+ 1 - 1
tests/Monolog/Handler/SlackHandlerTest.php

@@ -106,7 +106,7 @@ class SlackHandlerTest extends TestCase
 
     private function createHandler($token = 'myToken', $channel = 'channel1', $username = 'Monolog', $useAttachment = true, $iconEmoji = null)
     {
-        $constructorArgs = array($token, $channel, $username, $useAttachment, Logger::DEBUG, true, $iconEmoji);
+        $constructorArgs = array($token, $channel, $username, $useAttachment, $iconEmoji, Logger::DEBUG, true);
         $this->res = fopen('php://memory', 'a');
         $this->handler = $this->getMock(
             '\Monolog\Handler\SlackHandler',