250 lines
9.6 KiB
TypeScript
250 lines
9.6 KiB
TypeScript
/**
|
|
* Converted from mocha to vitest and refactored to TypeScript by David A. Ball. (c) 2024.
|
|
*
|
|
* Copyright 2019 Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
*
|
|
* Licensed under the Apache License, Version 2.0 (the "License").
|
|
* You may not use this file except in compliance with the License.
|
|
* A copy of the License is located at
|
|
*
|
|
* http://www.apache.org/licenses/LICENSE-2.0
|
|
*
|
|
* or in the "license" file accompanying this file. This file is distributed
|
|
* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
|
|
* express or implied. See the License for the specific language governing
|
|
* permissions and limitations under the License.
|
|
*/
|
|
|
|
/**
|
|
* ProductAdvertisingAPI
|
|
* https://webservices.amazon.com/paapi5/documentation/index.html
|
|
*
|
|
*/
|
|
|
|
import * as ProductAdvertisingAPIv1 from '../../src/index.mjs';
|
|
|
|
const DUMMY_ACCESS_KEY = 'DUMMY_ACCESS_KEY';
|
|
const DUMMY_SECRET_KEY = 'DUMMY_SECRET_KEY';
|
|
const DUMMY_REGION = 'DUMMY_REGION';
|
|
const INVALID_SIGNATURE = 'InvalidSignature';
|
|
const UNRECOGNIZED_CLIENT = 'UnrecognizedClient';
|
|
const HOST = 'webservices.amazon.com';
|
|
const REGION = 'us-east-1';
|
|
|
|
let instance;
|
|
|
|
beforeEach(function() {
|
|
instance = new ProductAdvertisingAPIv1.DefaultApi();
|
|
});
|
|
|
|
var getProperty = function(object, getter, property) {
|
|
// Use getter method if present; otherwise, get the property directly.
|
|
if (typeof object[getter] === 'function')
|
|
return object[getter]();
|
|
else
|
|
return object[property];
|
|
}
|
|
|
|
// var setProperty = function(object, setter, property, value) {
|
|
// // Use setter method if present; otherwise, set the property directly.
|
|
// if (typeof object[setter] === 'function')
|
|
// object[setter](value);
|
|
// else
|
|
// object[property] = value;
|
|
// }
|
|
|
|
// describe('DefaultApi', function() {
|
|
// describe('getBrowseNodes', function() {
|
|
// it('should throw error if GetBrowseNodesRequest is not provided', function(done) {
|
|
// //var getBrowseNodesRequest = new ProductAdvertisingAPIv1.GetBrowseNodesRequest();
|
|
// try {
|
|
// instance.getBrowseNodes();
|
|
// } catch (e) {
|
|
// expect(e).to.be.a(Error);
|
|
// expect(e.message).to.be('Missing the required parameter \'getBrowseNodesRequest\' when calling getBrowseNodes');
|
|
// done();
|
|
// }
|
|
// });
|
|
|
|
// it('PA-API 5.0 call should fail with InvalidSignature error when GetBrowseNodes request has invalid region', function(done) {
|
|
// var getBrowseNodesRequest = new ProductAdvertisingAPIv1.GetBrowseNodesRequest();
|
|
// var defaultClient = ProductAdvertisingAPIv1.ApiClient.instance;
|
|
// defaultClient.accessKey = DUMMY_ACCESS_KEY;
|
|
// defaultClient.secretKey = DUMMY_SECRET_KEY;
|
|
// defaultClient.host = HOST;
|
|
// defaultClient.region = DUMMY_REGION;
|
|
|
|
// instance.getBrowseNodes(getBrowseNodesRequest).then(
|
|
// {},
|
|
// function(error) {
|
|
// expect(error['status']).to.be(401);
|
|
// expect(JSON.parse(error['response']['text'])['Errors'][0]['Code']).to.be(INVALID_SIGNATURE);
|
|
// done();
|
|
// }
|
|
// );
|
|
// });
|
|
|
|
// it('PA-API 5.0 call should fail with UnrecognizedClient error when GetBrowseNodes request has dummy credentials', function(done) {
|
|
// var getBrowseNodesRequest = new ProductAdvertisingAPIv1.GetBrowseNodesRequest();
|
|
// var defaultClient = ProductAdvertisingAPIv1.ApiClient.instance;
|
|
// defaultClient.accessKey = DUMMY_ACCESS_KEY;
|
|
// defaultClient.secretKey = DUMMY_SECRET_KEY;
|
|
// defaultClient.host = HOST;
|
|
// defaultClient.region = REGION;
|
|
|
|
// instance.getBrowseNodes(getBrowseNodesRequest).then(
|
|
// {},
|
|
// function(error) {
|
|
// expect(error['status']).to.be(401);
|
|
// expect(JSON.parse(error['response']['text'])['Errors'][0]['Code']).to.be(UNRECOGNIZED_CLIENT);
|
|
// done();
|
|
// }
|
|
// );
|
|
// });
|
|
// });
|
|
|
|
// describe('getItems', function() {
|
|
// it('should throw error if GetItemsRequest is not provided', function(done) {
|
|
// try {
|
|
// instance.getItems();
|
|
// } catch (e) {
|
|
// expect(e).to.be.a(Error);
|
|
// expect(e.message).to.be('Missing the required parameter \'getItemsRequest\' when calling getItems');
|
|
// done();
|
|
// }
|
|
// });
|
|
|
|
// it('PA-API 5.0 call should fail with InvalidSignature error when GetItems request has invalid region', function(done) {
|
|
// var getItemsRequest = new ProductAdvertisingAPIv1.GetItemsRequest();
|
|
// var defaultClient = ProductAdvertisingAPIv1.ApiClient.instance;
|
|
// defaultClient.accessKey = DUMMY_ACCESS_KEY;
|
|
// defaultClient.secretKey = DUMMY_SECRET_KEY;
|
|
// defaultClient.host = HOST;
|
|
// defaultClient.region = DUMMY_REGION;
|
|
|
|
// instance.getItems(getItemsRequest).then(
|
|
// {},
|
|
// function(error) {
|
|
// expect(error['status']).to.be(401);
|
|
// expect(JSON.parse(error['response']['text'])['Errors'][0]['Code']).to.be(INVALID_SIGNATURE);
|
|
// done();
|
|
// }
|
|
// );
|
|
// });
|
|
|
|
// it('PA-API 5.0 call should fail with UnrecognizedClient error when GetItems request has dummy credentials', function(done) {
|
|
// var getItemsRequest = new ProductAdvertisingAPIv1.GetItemsRequest();
|
|
// var defaultClient = ProductAdvertisingAPIv1.ApiClient.instance;
|
|
// defaultClient.accessKey = DUMMY_ACCESS_KEY;
|
|
// defaultClient.secretKey = DUMMY_SECRET_KEY;
|
|
// defaultClient.host = HOST;
|
|
// defaultClient.region = REGION;
|
|
|
|
// instance.getItems(getItemsRequest).then(
|
|
// {},
|
|
// function(error) {
|
|
// expect(error['status']).to.be(401);
|
|
// expect(JSON.parse(error['response']['text'])['Errors'][0]['Code']).to.be(UNRECOGNIZED_CLIENT);
|
|
// done();
|
|
// }
|
|
// );
|
|
// });
|
|
// });
|
|
|
|
// describe('getVariations', function() {
|
|
// it('should throw error if GetVariationsRequest is not provided', function(done) {
|
|
// try {
|
|
// instance.getVariations();
|
|
// } catch (e) {
|
|
// expect(e).to.be.a(Error);
|
|
// expect(e.message).to.be('Missing the required parameter \'getVariationsRequest\' when calling getVariations');
|
|
// done();
|
|
// }
|
|
// });
|
|
|
|
// it('PA-API 5.0 call should fail with InvalidSignature error when GetVariations request has invalid region', function(done) {
|
|
// var getVariationsRequest = new ProductAdvertisingAPIv1.GetVariationsRequest();
|
|
// var defaultClient = ProductAdvertisingAPIv1.ApiClient.instance;
|
|
// defaultClient.accessKey = DUMMY_ACCESS_KEY;
|
|
// defaultClient.secretKey = DUMMY_SECRET_KEY;
|
|
// defaultClient.host = HOST;
|
|
// defaultClient.region = DUMMY_REGION;
|
|
|
|
// instance.getVariations(getVariationsRequest).then(
|
|
// {},
|
|
// function(error) {
|
|
// expect(error['status']).to.be(401);
|
|
// expect(JSON.parse(error['response']['text'])['Errors'][0]['Code']).to.be(INVALID_SIGNATURE);
|
|
// done();
|
|
// }
|
|
// );
|
|
// });
|
|
|
|
// it('PA-API 5.0 call should fail with UnrecognizedClient error when GetVariations request has dummy credentials', function(done) {
|
|
// var getVariationsRequest = new ProductAdvertisingAPIv1.GetVariationsRequest();
|
|
// var defaultClient = ProductAdvertisingAPIv1.ApiClient.instance;
|
|
// defaultClient.accessKey = DUMMY_ACCESS_KEY;
|
|
// defaultClient.secretKey = DUMMY_SECRET_KEY;
|
|
// defaultClient.host = HOST;
|
|
// defaultClient.region = REGION;
|
|
|
|
// instance.getVariations(getVariationsRequest).then(
|
|
// {},
|
|
// function(error) {
|
|
// expect(error['status']).to.be(401);
|
|
// expect(JSON.parse(error['response']['text'])['Errors'][0]['Code']).to.be(UNRECOGNIZED_CLIENT);
|
|
// done();
|
|
// }
|
|
// );
|
|
// });
|
|
// });
|
|
|
|
// describe('searchItems', function() {
|
|
// it('should throw error if SearchItemsRequest is not provided', function(done) {
|
|
// try {
|
|
// instance.searchItems();
|
|
// } catch (e) {
|
|
// expect(e).to.be.a(Error);
|
|
// expect(e.message).to.be('Missing the required parameter \'searchItemsRequest\' when calling searchItems');
|
|
// done();
|
|
// }
|
|
// });
|
|
|
|
// it('PA-API 5.0 call should fail with InvalidSignature error when SearchItems request has invalid region', function(done) {
|
|
// var searchItemsRequest = new ProductAdvertisingAPIv1.SearchItemsRequest();
|
|
// var defaultClient = ProductAdvertisingAPIv1.ApiClient.instance;
|
|
// defaultClient.accessKey = DUMMY_ACCESS_KEY;
|
|
// defaultClient.secretKey = DUMMY_SECRET_KEY;
|
|
// defaultClient.host = HOST;
|
|
// defaultClient.region = DUMMY_REGION;
|
|
|
|
// instance.searchItems(searchItemsRequest).then(
|
|
// {},
|
|
// function(error) {
|
|
// expect(error['status']).to.be(401);
|
|
// expect(JSON.parse(error['response']['text'])['Errors'][0]['Code']).to.be(INVALID_SIGNATURE);
|
|
// done();
|
|
// }
|
|
// );
|
|
// });
|
|
|
|
// it('PA-API 5.0 call should fail with UnrecognizedClient error when SearchItems request has dummy credentials', function(done) {
|
|
// var searchItemsRequest = new ProductAdvertisingAPIv1.SearchItemsRequest();
|
|
// var defaultClient = ProductAdvertisingAPIv1.ApiClient.instance;
|
|
// defaultClient.accessKey = DUMMY_ACCESS_KEY;
|
|
// defaultClient.secretKey = DUMMY_SECRET_KEY;
|
|
// defaultClient.host = HOST;
|
|
// defaultClient.region = REGION;
|
|
|
|
// instance.searchItems(searchItemsRequest).then(
|
|
// {},
|
|
// function(error) {
|
|
// expect(error['status']).to.be(401);
|
|
// expect(JSON.parse(error['response']['text'])['Errors'][0]['Code']).to.be(UNRECOGNIZED_CLIENT);
|
|
// done();
|
|
// }
|
|
// );
|
|
// });
|
|
// });
|
|
// });
|