Skip to content

Commit d598982

Browse files
committed
refactor: Remove unnecessary createInstance function
1 parent a99970f commit d598982

5 files changed

Lines changed: 40 additions & 47 deletions

File tree

README.md

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -62,14 +62,14 @@ The SDK can be initialized by passing [datafile](https://featurevisor.com/docs/b
6262
```php
6363
<?php
6464

65-
use function Featurevisor\createInstance;
65+
use Featurevisor\Featurevisor;
6666

6767
$datafileUrl = "https://cdn.yoursite.com/datafile.json";
6868

6969
$datafileContent = file_get_contents($datafileUrl);
7070
$datafileContent = json_decode($datafileContent, true);
7171

72-
$f = createInstance([
72+
$f = Featurevisor::createInstance([
7373
"datafile" => $datafileContent
7474
]);
7575
```
@@ -107,9 +107,9 @@ Context can be passed to SDK instance in various different ways, depending on yo
107107
You can set context at the time of initialization:
108108

109109
```php
110-
use function Featurevisor\createInstance;
110+
use Featurevisor\Featurevisor;
111111

112-
$f = createInstance([
112+
$f = Featurevisor::createInstance([
113113
"context" => [
114114
"deviceId" => "123",
115115
"country" => "nl",
@@ -278,9 +278,9 @@ For the lifecycle of the SDK instance in your application, you can set some feat
278278
### Initialize with sticky
279279

280280
```php
281-
use function Featurevisor\createInstance;
281+
use Featurevisor\Featurevisor;
282282

283-
$f = createInstance([
283+
$f = Featurevisor::createInstance([
284284
"sticky" => [
285285
"myFeatureKey" => [
286286
"enabled" => true,
@@ -363,10 +363,10 @@ If you choose `debug` level to make the logs more verbose, you can set it at the
363363
Setting `debug` level will print out all logs, including `info`, `warning`, and `error` levels.
364364

365365
```php
366-
use function Featurevisor\createInstance;
366+
use Featurevisor\Featurevisor;
367367
use function Featurevisor\createLogger;
368368

369-
$f = createInstance([
369+
$f = Featurevisor::createInstance([
370370
"logger" => createLogger([
371371
"level" => "debug",
372372
]),
@@ -376,7 +376,7 @@ $f = createInstance([
376376
Alternatively, you can also set `logLevel` directly:
377377

378378
```php
379-
$f = createInstance([
379+
$f = Featurevisor::createInstance([
380380
"logLevel" => "debug",
381381
]);
382382
```
@@ -392,10 +392,10 @@ $f->setLogLevel("debug");
392392
You can also pass your own log handler, if you do not wish to print the logs to the console:
393393

394394
```php
395-
use function Featurevisor\createInstance;
395+
use Featurevisor\Featurevisor;
396396
use function Featurevisor\createLogger;
397397

398-
$f = createInstance([
398+
$f = Featurevisor::createInstance([
399399
"logger" => createLogger([
400400
"level" => "info",
401401
"handler" => function ($level, $message, $details) {
@@ -566,9 +566,9 @@ $myCustomHook = [
566566
You can register hooks at the time of SDK initialization:
567567

568568
```php
569-
use function Featurevisor\createInstance;
569+
use Featurevisor\Featurevisor;
570570

571-
$f = createInstance([
571+
$f = Featurevisor::createInstance([
572572
'hooks' => [
573573
$myCustomHook
574574
],

featurevisor

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,8 @@
44
require __DIR__ . '/vendor/autoload.php';
55

66
use Featurevisor\DatafileReader;
7+
use Featurevisor\Featurevisor;
78
use Psr\Log\LogLevel;
8-
use function Featurevisor\createInstance;
99
use function Featurevisor\createLogger;
1010

1111
/**
@@ -304,7 +304,7 @@ function test(array $cliOptions) {
304304
$sdkInstancesByEnvironment = [];
305305
foreach ($environments as $environment) {
306306
$datafile = $datafilesByEnvironment[$environment];
307-
$sdkInstancesByEnvironment[$environment] = createInstance([
307+
$sdkInstancesByEnvironment[$environment] = Featurevisor::createInstance([
308308
'datafile' => $datafile,
309309
'logger' => createLogger([
310310
'level' => $level,
@@ -343,7 +343,7 @@ function test(array $cliOptions) {
343343
// If "at" parameter is provided, create a new SDK instance with the specific hook
344344
if (isset($assertion["at"])) {
345345
$datafile = $datafilesByEnvironment[$environment];
346-
$f = createInstance([
346+
$f = Featurevisor::createInstance([
347347
'datafile' => $datafile,
348348
'logger' => createLogger([
349349
'level' => $level,
@@ -420,7 +420,7 @@ function benchmark(array $cliOptions) {
420420
$level = getLoggerLevel($cliOptions);
421421
$datafilesByEnvironment = buildDatafiles($featurevisorProjectPath, [$cliOptions['environment']]);
422422

423-
$f = createInstance([
423+
$f = Featurevisor::createInstance([
424424
'datafile' => $datafilesByEnvironment[$cliOptions['environment']],
425425
'logger' => createLogger([
426426
'level' => $level,
@@ -481,7 +481,7 @@ function assessDistribution(array $cliOptions) {
481481
$datafilesByEnvironment = buildDatafiles($featurevisorProjectPath, [$cliOptions['environment']]);
482482
$level = getLoggerLevel($cliOptions);
483483

484-
$f = createInstance([
484+
$f = Featurevisor::createInstance([
485485
'datafile' => $datafilesByEnvironment[$cliOptions['environment']],
486486
'logger' => createLogger([
487487
'level' => $level,

src/functions.php

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2,11 +2,6 @@
22

33
namespace Featurevisor;
44

5-
function createInstance(array $options = []): Featurevisor
6-
{
7-
return Featurevisor::createInstance($options);
8-
}
9-
105
function createLogger(array $options = []): Logger
116
{
127
return new Logger($options);

tests/ChildTest.php

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,13 +2,12 @@
22

33
namespace Featurevisor\Tests;
44

5+
use Featurevisor\Featurevisor;
56
use PHPUnit\Framework\TestCase;
67

7-
use function Featurevisor\createInstance;
8-
98
class ChildTest extends TestCase {
109
public function testCreateChildInstanceAndAllBehaviors() {
11-
$f = createInstance([
10+
$f = Featurevisor::createInstance([
1211
'datafile' => [
1312
'schemaVersion' => '2',
1413
'revision' => '1.0',
Lines changed: 20 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -2,17 +2,16 @@
22

33
namespace Featurevisor\Tests;
44

5+
use Featurevisor\Featurevisor;
56
use PHPUnit\Framework\TestCase;
6-
77
use Psr\Log\LogLevel;
8-
use function Featurevisor\createInstance;
98
use function Featurevisor\createLogger;
109

11-
class InstanceTest extends TestCase
10+
class FeaturevisorTest extends TestCase
1211
{
1312
public function testShouldCreateInstanceWithDatafileContent()
1413
{
15-
$sdk = createInstance([
14+
$sdk = Featurevisor::createInstance([
1615
'datafile' => [
1716
'schemaVersion' => '2',
1817
'revision' => '1.0',
@@ -28,7 +27,7 @@ public function testShouldConfigurePlainBucketBy()
2827
{
2928
$capturedBucketKey = '';
3029

31-
$sdk = createInstance([
30+
$sdk = Featurevisor::createInstance([
3231
'datafile' => [
3332
'schemaVersion' => '2',
3433
'revision' => '1.0',
@@ -77,7 +76,7 @@ public function testShouldConfigureAndBucketBy()
7776
{
7877
$capturedBucketKey = '';
7978

80-
$sdk = createInstance([
79+
$sdk = Featurevisor::createInstance([
8180
'datafile' => [
8281
'schemaVersion' => '2',
8382
'revision' => '1.0',
@@ -126,7 +125,7 @@ public function testShouldConfigureOrBucketBy()
126125
{
127126
$capturedBucketKey = '';
128127

129-
$sdk = createInstance([
128+
$sdk = Featurevisor::createInstance([
130129
'datafile' => [
131130
'schemaVersion' => '2',
132131
'revision' => '1.0',
@@ -183,7 +182,7 @@ public function testShouldInterceptContextBeforeHook()
183182
$interceptedFeatureKey = '';
184183
$interceptedVariableKey = '';
185184

186-
$sdk = createInstance([
185+
$sdk = Featurevisor::createInstance([
187186
'datafile' => [
188187
'schemaVersion' => '2',
189188
'revision' => '1.0',
@@ -236,7 +235,7 @@ public function testShouldInterceptValueAfterHook()
236235
$interceptedFeatureKey = '';
237236
$interceptedVariableKey = '';
238237

239-
$sdk = createInstance([
238+
$sdk = Featurevisor::createInstance([
240239
'datafile' => [
241240
'schemaVersion' => '2',
242241
'revision' => '1.0',
@@ -310,7 +309,7 @@ public function testShouldInitializeWithStickyFeatures()
310309
'segments' => [],
311310
];
312311

313-
$sdk = createInstance([
312+
$sdk = Featurevisor::createInstance([
314313
'sticky' => [
315314
'test' => [
316315
'enabled' => true,
@@ -346,7 +345,7 @@ public function testShouldInitializeWithStickyFeatures()
346345

347346
public function testShouldHonourSimpleRequiredFeatures()
348347
{
349-
$sdk = createInstance([
348+
$sdk = Featurevisor::createInstance([
350349
'datafile' => [
351350
'schemaVersion' => '2',
352351
'revision' => '1.0',
@@ -385,7 +384,7 @@ public function testShouldHonourSimpleRequiredFeatures()
385384
self::assertFalse($sdk->isEnabled('myKey'));
386385

387386
// enabling required should enable the feature too
388-
$sdk2 = createInstance([
387+
$sdk2 = Featurevisor::createInstance([
389388
'datafile' => [
390389
'schemaVersion' => '2',
391390
'revision' => '1.0',
@@ -425,7 +424,7 @@ public function testShouldHonourSimpleRequiredFeatures()
425424
public function testShouldHonourRequiredFeaturesWithVariation()
426425
{
427426
// should be disabled because required has different variation
428-
$sdk = createInstance([
427+
$sdk = Featurevisor::createInstance([
429428
'datafile' => [
430429
'schemaVersion' => '2',
431430
'revision' => '1.0',
@@ -472,7 +471,7 @@ public function testShouldHonourRequiredFeaturesWithVariation()
472471
self::assertFalse($sdk->isEnabled('myKey'));
473472

474473
// child should be enabled because required has desired variation
475-
$sdk2 = createInstance([
474+
$sdk2 = Featurevisor::createInstance([
476475
'datafile' => [
477476
'schemaVersion' => '2',
478477
'revision' => '1.0',
@@ -522,7 +521,7 @@ public function testShouldEmitWarningsForDeprecatedFeature()
522521
{
523522
$deprecatedCount = 0;
524523

525-
$sdk = createInstance([
524+
$sdk = Featurevisor::createInstance([
526525
'datafile' => [
527526
'schemaVersion' => '2',
528527
'revision' => '1.0',
@@ -586,7 +585,7 @@ public function testShouldEmitWarningsForDeprecatedFeature()
586585

587586
public function testShouldCheckIfEnabledForOverriddenFlagsFromRules()
588587
{
589-
$sdk = createInstance([
588+
$sdk = Featurevisor::createInstance([
590589
'datafile' => [
591590
'schemaVersion' => '2',
592591
'revision' => '1.0',
@@ -634,7 +633,7 @@ public function testShouldCheckIfEnabledForMutuallyExclusiveFeatures()
634633
{
635634
$bucketValue = 10000;
636635

637-
$sdk = createInstance([
636+
$sdk = Featurevisor::createInstance([
638637
'hooks' => [
639638
[
640639
'name' => 'unit-test',
@@ -670,7 +669,7 @@ public function testShouldCheckIfEnabledForMutuallyExclusiveFeatures()
670669

671670
public function testShouldGetVariation()
672671
{
673-
$sdk = createInstance([
672+
$sdk = Featurevisor::createInstance([
674673
'datafile' => [
675674
'schemaVersion' => '2',
676675
'revision' => '1.0',
@@ -750,7 +749,7 @@ public function testShouldGetVariation()
750749

751750
public function testShouldGetVariable()
752751
{
753-
$sdk = createInstance([
752+
$sdk = Featurevisor::createInstance([
754753
'datafile' => [
755754
'schemaVersion' => '2',
756755
'revision' => '1.0',
@@ -1037,7 +1036,7 @@ public function testShouldGetVariable()
10371036

10381037
public function testShouldGetVariablesWithoutAnyVariations()
10391038
{
1040-
$sdk = createInstance([
1039+
$sdk = Featurevisor::createInstance([
10411040
'datafile' => [
10421041
'schemaVersion' => '2',
10431042
'revision' => '1.0',
@@ -1099,7 +1098,7 @@ public function testShouldGetVariablesWithoutAnyVariations()
10991098

11001099
public function testShouldCheckIfEnabledForIndividuallyNamedSegments()
11011100
{
1102-
$sdk = createInstance([
1101+
$sdk = Featurevisor::createInstance([
11031102
'datafile' => [
11041103
'schemaVersion' => '2',
11051104
'revision' => '1.0',

0 commit comments

Comments
 (0)