Example #1
0
 /**
  * BattleNetClient constructor.
  *
  * @param string $prefix
  */
 public function __construct($prefix)
 {
     $this->prefix = $prefix;
     if (!Config::isValid()) {
         $this->throwException('Configuration not set via BattleNet\\Config.');
     }
     $this->code = 200;
     $this->message = '';
     $this->url = '';
     $this->apiKey = Config::getApiKey();
     $this->server = Config::getServer();
     $this->locale = Config::getLocale();
 }
Example #2
0
 public function saveConfig($password, Config $cfg)
 {
     if ($cfg->isValid()) {
         $asArray = $cfg->asArray();
         $asArray['loaded'] = 'yes';
         $json = JSON::encode($asArray);
         $ciphertext = Encryption::encrypt($password, $json);
         file_put_contents(self::$CONFIG_DECRYPTED, $json);
         file_put_contents(self::$CONFIG, $ciphertext);
         if (file_exists('/tmp_disk/price.json')) {
             unlink('/tmp_disk/price.json');
         }
     } else {
         throw new SetupMachineException("Configuration was invalid or incomplete");
     }
 }
Example #3
0
 /**
  * @covers \BrightNucleus\Config\Config::__construct
  * @covers \BrightNucleus\Config\Config::isValid
  */
 public function testValidation()
 {
     $unvalidated_config = new Config(ConfigTest::$test_array, null, null);
     $this->assertTrue($unvalidated_config->isValid());
     $true_validator = $this->getMockBuilder('\\BrightNucleus\\Config\\ConfigValidatorInterface')->getMock();
     $true_validator->method('isValid')->willReturn(true);
     $valid_config = new Config(ConfigTest::$test_array, null, $true_validator);
     $this->assertTrue($valid_config->isValid());
     $false_validator = $this->getMockBuilder('\\BrightNucleus\\Config\\ConfigValidatorInterface')->getMock();
     $false_validator->method('isValid')->willReturn(false);
     $this->setExpectedException('BrightNucleus\\Config\\Exception\\InvalidConfigException', 'ConfigInterface file is not valid');
     new Config(ConfigTest::$test_array, null, $false_validator);
 }