Skip to content

Commit d089fe7

Browse files
committed
NO-ISSUE Add test for audiencegroup list API
1 parent d9366ab commit d089fe7

1 file changed

Lines changed: 57 additions & 0 deletions

File tree

spec/line/bot/v2/misc_spec.rb

Lines changed: 57 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1031,4 +1031,61 @@
10311031
client.broadcast_with_http_info(broadcast_request: Line::Bot::V2::MessagingApi::BroadcastRequest.new(messages: [flex_message]))
10321032
end
10331033
end
1034+
1035+
describe 'GET /v2/bot/audienceGroup/list' do
1036+
let(:client) { Line::Bot::V2::ManageAudience::ApiClient.new(channel_access_token: 'test-channel-access-token') }
1037+
let(:response_body) do
1038+
{ "audienceGroups" => [
1039+
{
1040+
"audienceGroupId" => 1234567890123,
1041+
"createRoute" => "OA_MANAGER",
1042+
"type": "CLICK",
1043+
"description": "audienceGroup Name",
1044+
"status": "IN_PROGRESS",
1045+
"audienceCount": 8619,
1046+
"created": 1611114828,
1047+
"permission": "READ",
1048+
"isIfaAudience": false,
1049+
"expireTimestamp": 1626753228,
1050+
"requestId": "c10c3d86-f565-...",
1051+
"clickUrl": "https://example.com/"
1052+
},
1053+
{
1054+
"audienceGroupId": 2345678901234,
1055+
"createRoute": "AD_MANAGER",
1056+
"type": "APP_EVENT",
1057+
"description": "audienceGroup Name",
1058+
"status": "READY",
1059+
"audienceCount": 3368,
1060+
"created": 1608619802,
1061+
"permission": "READ",
1062+
"activated": 1610068515,
1063+
"inactiveTimestamp": 1625620516,
1064+
"isIfaAudience": false
1065+
}
1066+
],
1067+
"hasNextPage": false,
1068+
"totalCount": 2,
1069+
"readWriteAudienceGroupTotalCount": 0,
1070+
"size": 40,
1071+
"page": 1}.to_json
1072+
end
1073+
let(:response_code) { 200 }
1074+
1075+
it 'query parameter is encoded' do
1076+
stub_request(:get, "https://api.line.me/v2/bot/audienceGroup/list?size=40&page=1&description=audienceGroup%20Name")
1077+
.with(
1078+
headers: {
1079+
'Authorization' => "Bearer test-channel-access-token"
1080+
}
1081+
)
1082+
.to_return(status: response_code, body: response_body, headers: { 'Content-Type' => 'application/json' })
1083+
1084+
body, status_code, headers = client.get_audience_groups_with_http_info(page: 1, size: 40, description: 'audienceGroup Name')
1085+
1086+
expect(status_code).to eq(200)
1087+
expect(body.audience_groups.size).to eq(2)
1088+
expect(body.audience_groups[0].description).to eq('audienceGroup Name')
1089+
end
1090+
end
10341091
end

0 commit comments

Comments
 (0)