| 61 | |
| 62 | /** |
| 63 | * @group messages_new_message |
| 64 | * @group raytest |
| 65 | */ |
| 66 | public function test_messages_new_message_wp_error_generic() { |
| 67 | $u1 = $this->factory->user->create(); |
| 68 | $u2 = $this->factory->user->create(); |
| 69 | |
| 70 | // Emulate a plugin disabling messages. |
| 71 | add_action( 'messages_message_before_save', array( $this, 'remove_recipients_before_save' ) ); |
| 72 | |
| 73 | // send a private message |
| 74 | $t1 = messages_new_message( array( |
| 75 | 'sender_id' => $u1, |
| 76 | 'recipients' => array( $u2 ), |
| 77 | 'subject' => 'A new message', |
| 78 | 'content' => 'Hey there!', |
| 79 | 'error_type' => 'wp_error' |
| 80 | ) ); |
| 81 | |
| 82 | $this->assertNotEmpty( $t1->get_error_code() ); |
| 83 | |
| 84 | remove_action( 'messages_message_before_save', array( $this, 'remove_recipients_before_save' ) ); |
| 85 | } |
| 86 | |
| 87 | /** |
| 88 | * Helper method for test_messages_new_message_wp_error_generic(). |
| 89 | */ |
| 90 | public function remove_recipients_before_save( $message ) { |
| 91 | $message->recipients = array(); |
| 92 | } |