diff --git a/privatemsg.test b/privatemsg.test index ebe6d7a..9887f9b 100644 --- a/privatemsg.test +++ b/privatemsg.test @@ -889,6 +889,46 @@ class PrivatemsgTestCase extends PrivatemsgBaseTestCase { $this->assertEqual(count($autocomplete), 1, t('Autocomplete object contains one suggestion.')); $this->assertEqual($autocomplete[strip_tags($user4->name) . ', '], strip_tags($user4->name)); } + + /** + * Confirm that autocomplete shows potential recipients and not blocked users. + */ + function testAutocompletePotentialRecipients() { + $current = $this->drupalCreateUser(array('receive privatemsg', 'write privatemsg')); + // Create 11 users, only the last of which can receive messages. + $user1 = $this->drupalCreateUser(); + $user2 = $this->drupalCreateUser(); + $user3 = $this->drupalCreateUser(); + $user4 = $this->drupalCreateUser(); + $user5 = $this->drupalCreateUser(); + $user6 = $this->drupalCreateUser(); + $user7 = $this->drupalCreateUser(); + $user8 = $this->drupalCreateUser(); + $user9 = $this->drupalCreateUser(); + $user10 = $this->drupalCreateUser(); + $user11 = $this->drupalCreateUser(array('receive privatemsg', 'write privatemsg')); + + $this->drupalLogin($current); + + // Use specific names to be able to test for specific name combinations. + user_save($current, array('name' => 'whatever')); + user_save($user1, array('name' => 'aaaa')); + user_save($user2, array('name' => 'aaab')); + user_save($user3, array('name' => 'aaac')); + user_save($user4, array('name' => 'aaad')); + user_save($user5, array('name' => 'aaae')); + user_save($user6, array('name' => 'aaaf')); + user_save($user7, array('name' => 'aaag')); + user_save($user8, array('name' => 'aaah')); + user_save($user9, array('name' => 'aaai')); + user_save($user10, array('name' => 'aaaj')); + user_save($user11, array('name' => 'aaak')); + + $json = $this->drupalGet('messages/autocomplete/aa'); + $autocomplete = (array)json_decode($json); + $this->assertEqual(count($autocomplete), 1, t('Autocomplete object contains one suggestion.')); + $this->assertEqual($autocomplete['aaak, '], 'aaak'); + } } /**