/**
  * Initialize testing object
  *
  * @uses Init
  * @uses \ReflectionClass
  */
 public function setUp()
 {
     $this->reflection = new \ReflectionClass('ULogin\\Parser');
     $this->data['array'] = Parser::map(['vk' => true, 'google' => true, 'linkedin' => true]);
     $this->data['int'] = Parser::map(['vk', 'google', 'linkedin']);
     $this->data['string'] = Parser::map('vk,google,linkedin');
 }
 /**
  * Allows you to add authentication providers in the list of available.
  *
  * @param mixed $providers as ('provider' => true, 'provider' => false) or string separated by comma
  * @example <code>
  *                         $this->setProviders([
  *                         'vkontakte'     =>  true,
  *                         'odnoklassniki' =>  true,
  *                         'mailru'        =>  true,
  *                         'facebook'      =>  true,
  *                         'twitter'       =>  false,  // in drop down
  *                         'google'        =>  false,  // in drop down
  *                         'yandex'        =>  false,  // in drop down
  *                         'livejournal'   =>  false,  // in drop down
  *                         'openid'        =>  false   // in drop down
  *                         ]);
  *
  *          $this->setProviders('vkontakte=true,odnoklassniki=true,mailru=true,openid=false');
  *          </code>
  * @return Init
  */
 public function setProviders($providers)
 {
     $array = Parser::map($providers);
     // collection data
     if (empty($array['required']) === false) {
         $this->requiredProviders = implode(',', $array['required']);
     }
     if (empty($array['hidden']) === false) {
         $this->hiddenProviders = implode(',', $array['hidden']);
     }
     return $this;
 }