private function _sendAndReceive($file, $type)
 {
     $snapchat = new Snapchat($this->users[1]['name'], $this->users[1]['pass']);
     $this->assertNotEquals($snapchat->auth_token, FALSE, 'Login failed for test user 1.');
     $id = $snapchat->upload($type, file_get_contents($file));
     $this->assertEquals(is_string($id), TRUE, ($type == Snapchat::MEDIA_IMAGE ? 'Image' : 'Video') . ' upload failed.');
     $result = $snapchat->send($id, array($this->users[2]['name']));
     $this->assertEquals($result, TRUE, 'Media send failed.');
     // TODO
     $this->assertEquals($snapchat->clearFeed(), TRUE, 'Failed to clear the feed of test user 1.');
     $this->assertEquals($snapchat->logout(), TRUE, 'Logout failed for test user 1.');
     $snapchat = new Snapchat($this->users[2]['name'], $this->users[2]['pass']);
     $this->assertNotEquals($snapchat->auth_token, FALSE, 'Login failed for test user 2.');
     $snaps = $snapchat->getSnaps();
     $this->assertNotEquals($snaps, FALSE, 'Failed to get snap list.');
     foreach ($snaps as $snap) {
         if ($snap->status == Snapchat::STATUS_DELIVERED && strcmp($snap->recipient, $snapchat->username) == 0) {
             $data = $snapchat->getMedia($snap->id);
             $this->assertEquals($snapchat->markSnapViewed($snap->id), TRUE, 'User 2 marked snap viewed.');
             $this->assertEquals($snapchat->markSnapShot($snap->id), TRUE, 'User 2 marked screenshot.');
             $this->assertEquals(is_string($data), TRUE);
         }
     }
     $this->assertEquals($snapchat->clearFeed(), TRUE, 'Failed to clear the feed of test user 2.');
     $this->assertEquals($snapchat->logout(), TRUE, 'Logout failed for test user 2.');
 }