remove unneccessary convert method
This commit is contained in:
parent
29ee7babb1
commit
880608ed64
@ -25,14 +25,4 @@ abstract class Model
|
|||||||
{
|
{
|
||||||
$this->connection = $connection;
|
$this->connection = $connection;
|
||||||
}
|
}
|
||||||
|
|
||||||
protected function convertDataArrayToUrlParameters(array $data): array
|
|
||||||
{
|
|
||||||
$urlFields = [];
|
|
||||||
foreach (array_filter($data) as $key => $value) {
|
|
||||||
$urlFields['fields['.$key.']'] = $value;
|
|
||||||
}
|
|
||||||
|
|
||||||
return $urlFields;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
@ -82,16 +82,15 @@ class Subscriber extends Model
|
|||||||
'subscriber.json',
|
'subscriber.json',
|
||||||
[
|
[
|
||||||
RequestOptions::FORM_PARAMS => array_filter(
|
RequestOptions::FORM_PARAMS => array_filter(
|
||||||
array_merge(
|
|
||||||
$this->convertDataArrayToUrlParameters($fields ?? []),
|
|
||||||
[
|
[
|
||||||
'email' => trim($mailAddress),
|
'email' => trim($mailAddress),
|
||||||
'listid' => trim($listId ?? ''),
|
'listid' => trim($listId ?? ''),
|
||||||
'tagid' => trim($tagId ?? ''),
|
'tagid' => trim($tagId ?? ''),
|
||||||
'fields' => array_filter($fields ?? []),
|
'fields' => array_filter(
|
||||||
|
array_map('trim', $fields ?? [])
|
||||||
|
),
|
||||||
'smsnumber' => trim($smsNumber ?? ''),
|
'smsnumber' => trim($smsNumber ?? ''),
|
||||||
]
|
]
|
||||||
)
|
|
||||||
),
|
),
|
||||||
]
|
]
|
||||||
)
|
)
|
||||||
@ -127,12 +126,14 @@ class Subscriber extends Model
|
|||||||
'POST',
|
'POST',
|
||||||
'subscriber/tag.json',
|
'subscriber/tag.json',
|
||||||
[
|
[
|
||||||
RequestOptions::FORM_PARAMS => [
|
RequestOptions::FORM_PARAMS => array_filter(
|
||||||
|
[
|
||||||
'email' => trim($mailAddress),
|
'email' => trim($mailAddress),
|
||||||
'tagids' => implode(',', array_filter(
|
'tagids' => array_filter(
|
||||||
array_map('trim', $tagIds)
|
array_map('trim', $tagIds)
|
||||||
)),
|
),
|
||||||
],
|
]
|
||||||
|
),
|
||||||
]
|
]
|
||||||
)
|
)
|
||||||
);
|
);
|
||||||
@ -189,13 +190,13 @@ class Subscriber extends Model
|
|||||||
'subscriber/'.urlencode(trim($subscriberId)).'.json',
|
'subscriber/'.urlencode(trim($subscriberId)).'.json',
|
||||||
[
|
[
|
||||||
RequestOptions::FORM_PARAMS => array_filter(
|
RequestOptions::FORM_PARAMS => array_filter(
|
||||||
array_merge(
|
|
||||||
$this->convertDataArrayToUrlParameters($fields ?? []),
|
|
||||||
[
|
[
|
||||||
'newemail' => trim($newEmail ?? ''),
|
'newemail' => trim($newEmail ?? ''),
|
||||||
'newsmsnumber' => trim($newSmsNumber ?? ''),
|
'newsmsnumber' => trim($newSmsNumber ?? ''),
|
||||||
|
'fields' => array_filter(
|
||||||
|
array_map('trim', $fields ?? [])
|
||||||
|
),
|
||||||
]
|
]
|
||||||
)
|
|
||||||
),
|
),
|
||||||
]
|
]
|
||||||
)
|
)
|
||||||
@ -219,22 +220,26 @@ class Subscriber extends Model
|
|||||||
/**
|
/**
|
||||||
* @throws BaseException
|
* @throws BaseException
|
||||||
*/
|
*/
|
||||||
public function signin(string $apikey, string $emailAddress, ?array $fields = null, ?string $smsNumber = null): string
|
public function signin(
|
||||||
{
|
string $apikey,
|
||||||
|
string $emailAddress,
|
||||||
|
?array $fields = null,
|
||||||
|
?string $smsNumber = null
|
||||||
|
): string {
|
||||||
return current(
|
return current(
|
||||||
$this->connection->requestAndParse(
|
$this->connection->requestAndParse(
|
||||||
'POST',
|
'POST',
|
||||||
'subscriber/signin.json',
|
'subscriber/signin.json',
|
||||||
[
|
[
|
||||||
RequestOptions::FORM_PARAMS => array_filter(
|
RequestOptions::FORM_PARAMS => array_filter(
|
||||||
array_merge(
|
|
||||||
$this->convertDataArrayToUrlParameters($fields ?? []),
|
|
||||||
[
|
[
|
||||||
'apikey' => trim($apikey),
|
'apikey' => trim($apikey),
|
||||||
'email' => trim($emailAddress),
|
'email' => trim($emailAddress),
|
||||||
'smsnumber' => trim($smsNumber ?? ''),
|
'smsnumber' => trim($smsNumber ?? ''),
|
||||||
|
'fields' => array_filter(
|
||||||
|
array_map('trim', $fields ?? [])
|
||||||
|
),
|
||||||
]
|
]
|
||||||
)
|
|
||||||
),
|
),
|
||||||
]
|
]
|
||||||
)
|
)
|
||||||
|
@ -240,9 +240,16 @@ class SubscriberTest extends IntegrationTestCase
|
|||||||
$this->callMethod(
|
$this->callMethod(
|
||||||
$sut,
|
$sut,
|
||||||
'subscribe',
|
'subscribe',
|
||||||
['testsubscriber@mydomain.com']
|
['testsubscriber@mydomain.com', '1234567', '2345678', ['field1' => 'abcd', 'field2' => 'efgh']]
|
||||||
)
|
)
|
||||||
);
|
);
|
||||||
|
|
||||||
|
/** @var RequestInterface $request */
|
||||||
|
$request = current($this->getHistoryContainer())['request'];
|
||||||
|
$requestFormParams = $request->getBody()->getContents();
|
||||||
|
$this->assertMatchesRegularExpression('/fields%5Bfield1%5D=abcd/m', $requestFormParams);
|
||||||
|
$this->assertMatchesRegularExpression('/fields%5Bfield2%5D=efgh/m', $requestFormParams);
|
||||||
|
$this->assertMatchesRegularExpression('/email=testsubscriber%40mydomain.com/m', $requestFormParams);
|
||||||
}
|
}
|
||||||
|
|
||||||
public static function subscribeDataProvider(): Generator
|
public static function subscribeDataProvider(): Generator
|
||||||
@ -342,6 +349,13 @@ class SubscriberTest extends IntegrationTestCase
|
|||||||
['testsubscriber@mydomain.com', ['2354758', ' 2354858']]
|
['testsubscriber@mydomain.com', ['2354758', ' 2354858']]
|
||||||
)
|
)
|
||||||
);
|
);
|
||||||
|
|
||||||
|
/** @var RequestInterface $request */
|
||||||
|
$request = current($this->getHistoryContainer())['request'];
|
||||||
|
$requestFormParams = $request->getBody()->getContents();
|
||||||
|
$this->assertMatchesRegularExpression('/tagids%5B0%5D=2354758/m', $requestFormParams);
|
||||||
|
$this->assertMatchesRegularExpression('/tagids%5B1%5D=2354858/m', $requestFormParams);
|
||||||
|
$this->assertMatchesRegularExpression('/email=testsubscriber%40mydomain.com/m', $requestFormParams);
|
||||||
}
|
}
|
||||||
|
|
||||||
public static function tagDataProvider(): Generator
|
public static function tagDataProvider(): Generator
|
||||||
@ -508,9 +522,16 @@ class SubscriberTest extends IntegrationTestCase
|
|||||||
$this->callMethod(
|
$this->callMethod(
|
||||||
$sut,
|
$sut,
|
||||||
'signin',
|
'signin',
|
||||||
['7gefzp8255z8z8469', 'subsriber@mydomain.com']
|
['7gefzp8255z8z8469', 'subsriber@mydomain.com', ['field1' => 'abcd', 'field2' => 'efgh']]
|
||||||
)
|
)
|
||||||
);
|
);
|
||||||
|
|
||||||
|
/** @var RequestInterface $request */
|
||||||
|
$request = current($this->getHistoryContainer())['request'];
|
||||||
|
$requestFormParams = $request->getBody()->getContents();
|
||||||
|
$this->assertMatchesRegularExpression('/fields%5Bfield1%5D=abcd/m', $requestFormParams);
|
||||||
|
$this->assertMatchesRegularExpression('/fields%5Bfield2%5D=efgh/m', $requestFormParams);
|
||||||
|
$this->assertMatchesRegularExpression('/apikey=7gefzp8255z8z8469/m', $requestFormParams);
|
||||||
}
|
}
|
||||||
|
|
||||||
public static function signinDataProvider(): Generator
|
public static function signinDataProvider(): Generator
|
||||||
@ -670,25 +691,4 @@ class SubscriberTest extends IntegrationTestCase
|
|||||||
['myMailAddress']
|
['myMailAddress']
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* @test
|
|
||||||
* @throws ReflectionException
|
|
||||||
* @covers \D3\KlicktippPhpClient\Resources\Model::convertDataArrayToUrlParameters
|
|
||||||
*/
|
|
||||||
public function testConvertDataArrayToUrlParameters()
|
|
||||||
{
|
|
||||||
$sut = $this->getMockBuilder(Subscriber::class)
|
|
||||||
->disableOriginalConstructor()
|
|
||||||
->getMock();
|
|
||||||
|
|
||||||
$this->assertSame(
|
|
||||||
['fields[field1]' => 'value1'],
|
|
||||||
$this->callMethod(
|
|
||||||
$sut,
|
|
||||||
'convertDataArrayToUrlParameters',
|
|
||||||
[['field1' => 'value1']]
|
|
||||||
)
|
|
||||||
);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user