public function testToFromArray()
 {
     $key = 'akey';
     $secret = 'asecret';
     $keySecretConfig = new KeySecretConfig(new KeySecret($key, $secret), true, false, true);
     $this->assertEquals($keySecretConfig, KeySecretConfig::fromArray($keySecretConfig->toArray()));
 }
 /**
  * @param array $data array(
  *                        array(
  *                            'credential' => array(
  *                                'key' => 'key1',
  *                                'secret' => 'secret1'
  *                            ),
  *                            'active' => false
  *                        ),
  *                        array(
  *                            'credential' => array(
  *                                'key' => 'key2',
  *                                'secret' => 'secret2'
  *                            )
  *                        )
  *                    )
  *
  * @return KeySecretsConfig
  *
  * @throws InvalidArgumentException
  */
 public static function fromArray(array $data)
 {
     $keySecretsConfig = array();
     foreach ($data as $keySecretConfigArr) {
         if (!is_array($keySecretConfigArr)) {
             throw new InvalidArgumentException(sprintf('Key secrets config expecting array got "%s"', gettype($keySecretConfigArr)));
         }
         $keySecretsConfig[] = KeySecretConfig::fromArray($keySecretConfigArr);
     }
     return new static($keySecretsConfig);
 }