Skip to content

Commit f98fe65

Browse files
committed
Add remaining tests
1 parent 9e5ef8e commit f98fe65

15 files changed

+4779
-4548
lines changed

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
# CakePHP 3
22

3+
/.gistrun
34
/vendor/*
45
/config/app.php
56

.phpunit.result.cache

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
{"version":1,"defects":{"InspectTest::testCanUseInspect":5,"ClientTests::testCanGetHello":8,"ClientTests::testHello":8,"ClientTests::testQsValue":8,"ClientTests::testCanPostHello":8,"ClientTests::testDoesFireRequestAndResponseFilters":8,"ClientTests::testCanGetHelloWithCustomPath":8,"ClientTests::testCanPostHelloWithCustomPath":8,"ClientTests::testCanPostHelloWithCustomPathJsonObject":7,"ClientTests::testCanSendUmlauts":8,"ClientTests::testCanGetHelloWithCustomPathAsRawTypes":8,"ClientTests::testCanPostHelloAllTypes":8,"ClientTests::testCanSerializeAllTypes":5,"ClientTests::testSplitList":5,"ClientTests::testDoesHandle404Error":8,"ClientTests::testDoesHandleValidationException":8,"ClientTests::testCanSendReturnVoid":7,"ClientTests::testCanGetResponseAsRawString":8,"ClientTests::testCanGetResponseAsRawBytes":8,"ClientTests::testShouldReturnRawText":7,"ClientTests::testCanSendRawJsonAsObject":8,"ClientTests::testCanDeserializeNakedList":8,"ClientTests::testCanPutHelloAllTypes":8,"ClientTests::testCanSendAllBatchRequest":8,"ClientTests::testCanSendAllOneWayIReturnBatchRequest":7,"ClientTests::testCanGetIReturnVoidRequests":5,"ClientTests::testCanGetUsingOnlyPathInfo":8,"ClientTests::testCanHandleConnectionError":8,"ClientAuthTests::testDoesFireOnAuthenticationRequiredCallbackOn401":7,"ClientAuthTests::testCanUseOnAuthenticationRequiredToAuthClient":8,"ClientAuthTests::testCanUseOnAuthenticationRequiredToFetchToken":7,"ClientTests::testDoesHandleAuthFailure":8,"ClientAuthTests::testCanUseOnAuthenticationRequiredToFetchTokenAfterExpiredToken":8,"ClientAuthTests::testInvalidRefreshTokenThrowsRefreshTokenExceptionErrorResponse":7,"ClientUtilsTests::testQsValue":7,"ClientUtilsTests::testDoesResolveIVerbsFromRequestDtoInterfaceMarker":8,"EnumTests::testDoesSerializeHelloWithEnumEmpty":8,"EnumTests::testDoesSerializeHelloWithEnumEnumFlags":8,"EnumTests::testDoesSerializeHelloWithEnumAll":8,"EnumTests::testDoesSerializeHelloWithEnumMapAll":8,"TechStacksTests::testShouldGetTechsResponse":8,"TechStacksTests::testCanQueryAutoQueryWithRuntimeArgs":7,"TechStacksTests::testCanQueryAutoQueryWithAnonObjectAndRuntimeArgs":8,"TechStacksTests::testCanQueryWithArgsAndBaseClassProperty":7},"times":{"InspectTest::testCanUseInspect":1.118,"ClientTests::testHello":0.005,"ClientTests::testCanGetHello":0.057,"ClientTests::testQsValue":0.001,"ClientTests::testCanPostHello":0.012,"ClientTests::testCanSendUmlauts":0.035,"ClientTests::testDoesFireRequestAndResponseFilters":0.031,"ClientTests::testCanGetHelloWithCustomPath":0.032,"ClientTests::testCanGetHelloWithCustomPathAsRawTypes":0.031,"ClientTests::testCanPostHelloWithCustomPath":0.034,"ClientTests::testCanPostHelloWithCustomPathJsonObject":0.031,"ClientTests::testCanPostHelloAllTypes":0.306,"ClientTests::testCanSerializeAllTypes":0.003,"ClientTests::testCanSerializeAllCollectionTypes":0.001,"ClientTests::testSplitList":0.003,"ClientTests::testCanPutHelloAllTypes":0.036,"ClientTests::testDoesHandle404Error":0.038,"ClientTests::testDoesHandleValidationException":0.058,"ClientTests::testDoesHandleAuthFailure":0.029,"ClientTests::testCanSendReturnVoid":0.131,"ClientTests::testCanGetResponseAsRawString":0.013,"ClientTests::testCanGetResponseAsRawBytes":0.053,"ClientTests::testShouldReturnRawText":0.012,"ClientTests::testCanSendRawJsonAsObject":0.028,"ClientTests::testCanSendRawString":0.013,"ClientTests::testCanDeserializeNestedList":0.029,"ClientTests::testCanDeserializeNakedList":0.029,"ClientTests::testCanDeserializeCustomGenericResponseType":0.033,"ClientTests::testCanSendAllBatchRequest":0.036,"ClientTests::testCanSendAllOneWayIReturnBatchRequest":0.052,"ClientTests::testCanPostToEchoTypes":0.05,"ClientTests::testCanGetIReturnVoidRequests":0.013,"ClientTests::testCanPostIReturnVoidRequests":0.034,"ClientTests::testCanGetUsingOnlyPathInfo":0.033,"ClientTests::testCanGetUsingAbsoluteUrl":1.769,"ClientTests::testCanGetUsingRouteAndQueryString":0.025,"ClientTests::testCanEchoTypesUsingRoute":0.036,"ClientTests::testCanHandleConnectionError":0.043,"ClientTests::testCanHandleNakedList":0.018,"ClientAuthTests::testCanAuthWithJwt":0.252,"ClientAuthTests::testDoesFireOnAuthenticationRequiredCallbackOn401":0.121,"ClientAuthTests::testCanUseOnAuthenticationRequiredToAuthClient":0.262,"ClientAuthTests::testCanUseOnAuthenticationRequiredToFetchToken":0.227,"ClientAuthTests::testCanUseOnAuthenticationRequiredToFetchTokenAfterExpiredToken":0.221,"ClientAuthTests::testCanReauthenticateAfterAnAutoRefreshAccessToken":0.27,"ClientAuthTests::testDoesFetchAccessTokenUsingRefreshTokenCookies":0.208,"ClientAuthTests::testInvalidRefreshTokenThrowsRefreshTokenExceptionErrorResponse":0.043,"ClientAuthTests::testExpiredRefreshTokenThrowsRefreshTokenException":0.076,"ClientUtilsTests::testQsValue":0.004,"ClientUtilsTests::testDoesResolveIVerbsFromRequestDtoInterfaceMarker":0.005,"EnumTests::testDoesSerializeHelloWithEnumEmpty":0.004,"EnumTests::testDoesSerializeHelloWithEnumEnumFlags":0,"EnumTests::testDoesSerializeHelloWithEnumAll":0.004,"EnumTests::testDoesSerializeHelloWithEnumMapEmpty":0.004,"EnumTests::testDoesSerializeHelloWithEnumMapAll":0.005,"TechStacksTests::testShouldGetTechsResponse":2.192,"TechStacksTests::testShouldGetTechStacksOverview":1.995,"TechStacksTests::testShouldThrow405":1.182,"TechStacksTests::testShouldThrow401":1.149,"TechStacksTests::testCanQueryAutoQueryWithRuntimeArgs":1.077,"TechStacksTests::testCanQueryAutoQueryWithAnonObjectAndRuntimeArgs":1.096,"TechStacksTests::testCanQueryWithArgsAndBaseClassProperty":5.977}}
1+
{"version":1,"defects":{"InspectTest::testCanUseInspect":5,"ClientTests::testCanGetHello":8,"ClientTests::testHello":8,"ClientTests::testQsValue":8,"ClientTests::testCanPostHello":8,"ClientTests::testDoesFireRequestAndResponseFilters":8,"ClientTests::testCanGetHelloWithCustomPath":8,"ClientTests::testCanPostHelloWithCustomPath":8,"ClientTests::testCanPostHelloWithCustomPathJsonObject":8,"ClientTests::testCanSendUmlauts":8,"ClientTests::testCanGetHelloWithCustomPathAsRawTypes":8,"ClientTests::testCanPostHelloAllTypes":7,"ClientTests::testCanSerializeAllTypes":8,"ClientTests::testSplitList":5,"ClientTests::testDoesHandle404Error":8,"ClientTests::testDoesHandleValidationException":8,"ClientTests::testCanSendReturnVoid":8,"ClientTests::testCanGetResponseAsRawString":8,"ClientTests::testCanGetResponseAsRawBytes":8,"ClientTests::testShouldReturnRawText":8,"ClientTests::testCanSendRawJsonAsObject":8,"ClientTests::testCanDeserializeNakedList":8,"ClientTests::testCanPutHelloAllTypes":7,"ClientTests::testCanSendAllBatchRequest":8,"ClientTests::testCanSendAllOneWayIReturnBatchRequest":8,"ClientTests::testCanGetIReturnVoidRequests":8,"ClientTests::testCanGetUsingOnlyPathInfo":8,"ClientTests::testCanHandleConnectionError":8,"ClientAuthTests::testDoesFireOnAuthenticationRequiredCallbackOn401":7,"ClientAuthTests::testCanUseOnAuthenticationRequiredToAuthClient":8,"ClientAuthTests::testCanUseOnAuthenticationRequiredToFetchToken":7,"ClientTests::testDoesHandleAuthFailure":8,"ClientAuthTests::testCanUseOnAuthenticationRequiredToFetchTokenAfterExpiredToken":8,"ClientAuthTests::testInvalidRefreshTokenThrowsRefreshTokenExceptionErrorResponse":7,"ClientUtilsTests::testQsValue":7,"ClientUtilsTests::testDoesResolveIVerbsFromRequestDtoInterfaceMarker":8,"EnumTests::testDoesSerializeHelloWithEnumEmpty":8,"EnumTests::testDoesSerializeHelloWithEnumEnumFlags":8,"EnumTests::testDoesSerializeHelloWithEnumAll":8,"EnumTests::testDoesSerializeHelloWithEnumMapAll":8,"TechStacksTests::testShouldGetTechsResponse":8,"TechStacksTests::testCanQueryAutoQueryWithRuntimeArgs":7,"TechStacksTests::testCanQueryAutoQueryWithAnonObjectAndRuntimeArgs":8,"TechStacksTests::testCanQueryWithArgsAndBaseClassProperty":7,"EnumTests::testDoesSerializeHelloWithEnumMapEmpty":8,"SerializationTests::testDoesSerializeAllTypes":7,"SerializationTests::testDoesSerializeAllCollectionTypes":8,"SerializationTests::testDoesSerializeIntArray":5,"ClientTests::testCanSerializeAllCollectionTypes":8,"ClientTests::testCanSendRawString":8,"ClientTests::testCanDeserializeNestedList":8,"ClientTests::testCanDeserializeCustomGenericResponseType":8,"ClientTests::testCanPostToEchoTypes":8,"ClientTests::testCanPostIReturnVoidRequests":8,"ClientTests::testCanGetUsingAbsoluteUrl":8,"ClientTests::testCanGetUsingRouteAndQueryString":8,"ClientTests::testCanEchoTypesUsingRoute":8,"ClientTests::testCanHandleNakedList":8},"times":{"InspectTest::testCanUseInspect":1.118,"ClientTests::testHello":0.001,"ClientTests::testCanGetHello":1.153,"ClientTests::testQsValue":0.001,"ClientTests::testCanPostHello":1.153,"ClientTests::testCanSendUmlauts":1.189,"ClientTests::testDoesFireRequestAndResponseFilters":1.136,"ClientTests::testCanGetHelloWithCustomPath":1.156,"ClientTests::testCanGetHelloWithCustomPathAsRawTypes":2.343,"ClientTests::testCanPostHelloWithCustomPath":1.176,"ClientTests::testCanPostHelloWithCustomPathJsonObject":1.175,"ClientTests::testCanPostHelloAllTypes":1.152,"ClientTests::testCanSerializeAllTypes":0,"ClientTests::testCanSerializeAllCollectionTypes":0,"ClientTests::testSplitList":0.003,"ClientTests::testCanPutHelloAllTypes":1.163,"ClientTests::testDoesHandle404Error":1.15,"ClientTests::testDoesHandleValidationException":1.166,"ClientTests::testDoesHandleAuthFailure":1.181,"ClientTests::testCanSendReturnVoid":5.736,"ClientTests::testCanGetResponseAsRawString":1.191,"ClientTests::testCanGetResponseAsRawBytes":0.053,"ClientTests::testShouldReturnRawText":1.145,"ClientTests::testCanSendRawJsonAsObject":1.149,"ClientTests::testCanSendRawString":1.152,"ClientTests::testCanDeserializeNestedList":1.157,"ClientTests::testCanDeserializeNakedList":1.134,"ClientTests::testCanDeserializeCustomGenericResponseType":1.148,"ClientTests::testCanSendAllBatchRequest":1.167,"ClientTests::testCanSendAllOneWayIReturnBatchRequest":1.15,"ClientTests::testCanPostToEchoTypes":1.168,"ClientTests::testCanGetIReturnVoidRequests":1.142,"ClientTests::testCanPostIReturnVoidRequests":1.147,"ClientTests::testCanGetUsingOnlyPathInfo":1.15,"ClientTests::testCanGetUsingAbsoluteUrl":1.75,"ClientTests::testCanGetUsingRouteAndQueryString":1.169,"ClientTests::testCanEchoTypesUsingRoute":1.145,"ClientTests::testCanHandleConnectionError":0.021,"ClientTests::testCanHandleNakedList":1.184,"ClientAuthTests::testCanAuthWithJwt":2.359,"ClientAuthTests::testDoesFireOnAuthenticationRequiredCallbackOn401":2.289,"ClientAuthTests::testCanUseOnAuthenticationRequiredToAuthClient":2.321,"ClientAuthTests::testCanUseOnAuthenticationRequiredToFetchToken":3.539,"ClientAuthTests::testCanUseOnAuthenticationRequiredToFetchTokenAfterExpiredToken":4.649,"ClientAuthTests::testCanReauthenticateAfterAnAutoRefreshAccessToken":4.668,"ClientAuthTests::testDoesFetchAccessTokenUsingRefreshTokenCookies":4.64,"ClientAuthTests::testInvalidRefreshTokenThrowsRefreshTokenExceptionErrorResponse":2.345,"ClientAuthTests::testExpiredRefreshTokenThrowsRefreshTokenException":3.477,"ClientUtilsTests::testQsValue":0,"ClientUtilsTests::testDoesResolveIVerbsFromRequestDtoInterfaceMarker":0,"EnumTests::testDoesSerializeHelloWithEnumEmpty":0,"EnumTests::testDoesSerializeHelloWithEnumEnumFlags":0,"EnumTests::testDoesSerializeHelloWithEnumAll":0,"EnumTests::testDoesSerializeHelloWithEnumMapEmpty":0,"EnumTests::testDoesSerializeHelloWithEnumMapAll":0,"TechStacksTests::testShouldGetTechsResponse":1.706,"TechStacksTests::testShouldGetTechStacksOverview":1.941,"TechStacksTests::testShouldThrow405":1.139,"TechStacksTests::testShouldThrow401":1.096,"TechStacksTests::testCanQueryAutoQueryWithRuntimeArgs":1.085,"TechStacksTests::testCanQueryAutoQueryWithAnonObjectAndRuntimeArgs":1.105,"TechStacksTests::testCanQueryWithArgsAndBaseClassProperty":3.936,"InspectTests::testCanUseInspect":1.049,"SerializationTests::testDoesSerializeAllTypes":0.002,"SerializationTests::testDoesSerializeAllCollectionTypes":0.001,"SerializationTests::testDoesSerializeIntArray":0}}

composer.json

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -91,5 +91,8 @@
9191
},
9292
"require-dev": {
9393
"phpunit/phpunit": "*"
94+
},
95+
"scripts": {
96+
"test": "vendor/bin/phpunit --colors=always --configuration phpunit.xml"
9497
}
9598
}

phpunit.xml

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
<phpunit backupGlobals="false">
2+
<testsuites>
3+
<testsuite name="Tests">
4+
<directory suffix="Tests.php">tests</directory>
5+
</testsuite>
6+
</testsuites>
7+
</phpunit>

src/ByteArray.php

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,11 +6,17 @@
66

77
class ByteArray implements JsonSerializable
88
{
9-
public string $data;
9+
public ?string $data;
1010

11-
public function __construct(string $data)
11+
public function __construct(?string $data=null)
1212
{
13-
$this->data = base64_decode($data);
13+
$this->data = isset($data) ? base64_decode($data) : null;
14+
}
15+
16+
public static function fromRaw(string $data) {
17+
$to = new ByteArray();
18+
$to->data = $data;
19+
return $to;
1420
}
1521

1622
public function jsonSerialize(): mixed

src/Converter.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -153,7 +153,7 @@ function fromJson($o, TypeContext $ctx): mixed
153153

154154
function toJson($value, TypeContext $ctx): mixed
155155
{
156-
return "$value";
156+
return $value;
157157
}
158158
}
159159

@@ -166,7 +166,7 @@ function fromJson($o, TypeContext $ctx): mixed
166166

167167
function toJson($value, TypeContext $ctx): mixed
168168
{
169-
return "$value";
169+
return $value;
170170
}
171171
}
172172

tests/ClientAuthTests.php

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -52,14 +52,14 @@ class ClientAuthTests extends TestCase
5252
protected function setUp(): void
5353
{
5454
$this->client = $this->createTestClient();
55-
Log::$logger = new ConsoleLogger();
56-
Log::$levels[] = LogLevel::Debug;
55+
// Log::$logger = new ConsoleLogger();
56+
// Log::$levels[] = LogLevel::Debug;
5757
}
5858

5959
public function createTestClient(): JsonServiceClient
6060
{
61-
return new JsonServiceClient("https://localhost:5001");
62-
// return new JsonServiceClient("https://test.servicestack.net");
61+
// return new JsonServiceClient("https://localhost:5001");
62+
return new JsonServiceClient("https://test.servicestack.net");
6363
}
6464

6565
public function testCanAuthWithJwt()

0 commit comments

Comments
 (0)