Skip to content

Commit e38d7c3

Browse files
author
Michael Lundbøl
committed
Configuration opject knows wether it has been configured correctly
1 parent f43bcbd commit e38d7c3

File tree

2 files changed

+38
-0
lines changed

2 files changed

+38
-0
lines changed

src/ClientConfig.php

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -75,4 +75,19 @@ public function getVersion(): string
7575
{
7676
return $this->version;
7777
}
78+
79+
/**
80+
* @return bool
81+
*/
82+
public function isFullyConfigured(): bool
83+
{
84+
return count(array_filter([
85+
$this->version,
86+
$this->clientId,
87+
$this->clientSecret,
88+
$this->loginUrl
89+
], function ($value) {
90+
return empty($value);
91+
})) === 0;
92+
}
7893
}

tests/ClientConfigTest.php

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,4 +23,27 @@ public function client_config_data_can_be_accessed()
2323
$this->assertEquals('clientSecret', $sfClientConfig->getClientSecret());
2424
$this->assertEquals('v37.0', $sfClientConfig->getVersion());
2525
}
26+
27+
/** @test */
28+
public function client_config_knows_if_all_values_have_been_set()
29+
{
30+
$sfClientConfig = new \Napp\Salesforce\ClientConfig('', 'clientId', 'clientSecret', 'v37.0');
31+
32+
$this->assertFalse($sfClientConfig->isFullyConfigured());
33+
34+
$sfClientConfig = new \Napp\Salesforce\ClientConfig('hello', '', 'clientSecret', 'v37.0');
35+
$this->assertFalse($sfClientConfig->isFullyConfigured());
36+
37+
$sfClientConfig = new \Napp\Salesforce\ClientConfig('hello', 'testing', '', 'v37.0');
38+
$this->assertFalse($sfClientConfig->isFullyConfigured());
39+
40+
$sfClientConfig = new \Napp\Salesforce\ClientConfig('hello', 'clientId', 'clientSecret', '');
41+
$this->assertFalse($sfClientConfig->isFullyConfigured());
42+
43+
$sfClientConfig = new \Napp\Salesforce\ClientConfig('hello', 'clientId', 'clientSecret', 'v37.0');
44+
$this->assertTrue($sfClientConfig->isFullyConfigured());
45+
46+
$sfClientConfig = new \Napp\Salesforce\ClientConfig('', '', '', '');
47+
$this->assertFalse($sfClientConfig->isFullyConfigured());
48+
}
2649
}

0 commit comments

Comments
 (0)