Skip to content

Commit

Permalink
Add langlib tests
Browse files Browse the repository at this point in the history
  • Loading branch information
HindujaB committed Oct 7, 2024
1 parent c5a9a6b commit 43e784b
Showing 1 changed file with 32 additions and 0 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -68,6 +68,24 @@ type Foo6 record {
string x3;
};

public type EndpointSecurity record {
BasicEndpointSecurity|APIKeyEndpointSecurity securityType?;
};

public type BasicEndpointSecurity record {
string secretName;
string userNameKey;
};

public type APIKeyEndpointSecurity record {
string secretName;
string apiKeyNameKey;
};

public type EndpointConfiguration record {
EndpointSecurity endpointSecurity?;
};

function testFromJsonWithTypeRecord2() {
string str = "{\"name\":\"Name\",\"age\":35}";
json j = <json>checkpanic str.fromJsonString();
Expand Down Expand Up @@ -410,6 +428,20 @@ function testFromJsonStringWithTypeRecord() {
assertEquality(studentOrError is Student3, true);
Student3 student = checkpanic studentOrError;
assertEquality(student.name, "Name");

string security = string `{"securityType":{"secretName":"backend-creds","userNameKey":"username"}}`;
EndpointSecurity|error securityOrError = security.fromJsonStringWithType();
assertEquality(securityOrError is EndpointSecurity, true);
EndpointSecurity epSecurity = <EndpointSecurity> checkpanic securityOrError;
assertEquality(epSecurity.securityType.toString(), "{\"secretName\":\"backend-creds\",\"userNameKey\":\"username\"}");

string epConfig = string `{"endpoint":{},"endpointSecurity":{"securityType":{"secretName":"backend-creds","userNameKey":"username"}}}`;
EndpointConfiguration|error epConfigOrError = epConfig.fromJsonStringWithType();
assertEquality(epConfigOrError is EndpointConfiguration, true);
EndpointConfiguration epConfiguration = <EndpointConfiguration> checkpanic epConfigOrError;
assertEquality(epConfiguration.endpointSecurity.toString(), string `{"securityType":{"secretName":"backend-creds","userNameKey":"username"}}`);
anydata ep = epConfiguration["endpoint"];
assertEquality(ep.toString(), "{}");
}

function testFromJsonStringWithAmbiguousType() {
Expand Down

0 comments on commit 43e784b

Please sign in to comment.