mirror of
https://github.com/Alfresco/alfresco-ng2-components.git
synced 2026-09-09 18:03:21 +00:00
AAE-30882 Remove superagent for fetch (#11856)
* [AAE-30882] - Remove superagent for fetch * [AAE-30882] - Fixing comments * [AAE-30882] - fixde failing unit tests * [AAE-30882] - fixde failing unit tests * [AAE-30882] - fixd sonarcloud comment
This commit is contained in:
@@ -419,24 +419,20 @@ describe('Auth', () => {
|
||||
|
||||
it('should fail if only ECM fail', (done) => {
|
||||
authResponseBpmMock.get200Response();
|
||||
authResponseEcmMock.get401Response();
|
||||
authResponseEcmMock.get401ResponseAdminCredentials();
|
||||
|
||||
alfrescoJsApi.login('admin', 'admin').then(NOOP, () => {
|
||||
done();
|
||||
});
|
||||
|
||||
authResponseEcmMock.cleanAll();
|
||||
});
|
||||
|
||||
it('should fail if only BPM fail', (done) => {
|
||||
authResponseBpmMock.get401Response();
|
||||
authResponseBpmMock.get401ResponseAdminCredentials();
|
||||
authResponseEcmMock.get201Response();
|
||||
|
||||
alfrescoJsApi.login('admin', 'admin').then(NOOP, () => {
|
||||
done();
|
||||
});
|
||||
|
||||
authResponseBpmMock.cleanAll();
|
||||
});
|
||||
});
|
||||
|
||||
|
||||
@@ -17,7 +17,7 @@
|
||||
|
||||
import assert from 'assert';
|
||||
import { ProcessAuth } from '../src';
|
||||
import { SuperagentHttpClient } from '../src/superagentHttpClient';
|
||||
import { FetchHttpClient } from '../src/fetchHttpClient';
|
||||
import { BpmAuthMock } from './mockObjects';
|
||||
|
||||
describe('Bpm Auth test', () => {
|
||||
@@ -256,16 +256,16 @@ describe('Bpm Auth test', () => {
|
||||
let setCsrfTokenCalled = false;
|
||||
|
||||
beforeEach(() => {
|
||||
originalMethod = SuperagentHttpClient.prototype.setCsrfToken;
|
||||
originalMethod = FetchHttpClient.prototype.setCsrfToken;
|
||||
setCsrfTokenCalled = false;
|
||||
|
||||
SuperagentHttpClient.prototype.setCsrfToken = () => {
|
||||
FetchHttpClient.prototype.setCsrfToken = () => {
|
||||
setCsrfTokenCalled = true;
|
||||
};
|
||||
});
|
||||
|
||||
afterEach(() => {
|
||||
SuperagentHttpClient.prototype.setCsrfToken = originalMethod;
|
||||
FetchHttpClient.prototype.setCsrfToken = originalMethod;
|
||||
setCsrfTokenCalled = false;
|
||||
});
|
||||
|
||||
|
||||
@@ -167,7 +167,7 @@ describe('Node', () => {
|
||||
nodesApi.initiateFolderSizeCalculation('b4cff62a-664d-4d45-9302-98723eac1319').then(
|
||||
() => {},
|
||||
(err) => {
|
||||
const { error } = JSON.parse(err.response.text);
|
||||
const { error } = JSON.parse(err.message);
|
||||
assert.equal(error.statusCode, 404);
|
||||
assert.equal(error.errorKey, 'framework.exception.EntityNotFound');
|
||||
assert.equal(error.briefSummary, '11207522 The entity with id: b4cff62a-664d-4d45-9302-98723eac1319 was not found');
|
||||
@@ -196,7 +196,7 @@ describe('Node', () => {
|
||||
nodesApi.getFolderSizeInfo('b4cff62a-664d-4d45-9302-98723eac1319', '5ade426e-8a04-4d50-9e42-6e8a041d50f3').then(
|
||||
() => {},
|
||||
(err) => {
|
||||
const { error } = JSON.parse(err.response.text);
|
||||
const { error } = JSON.parse(err.message);
|
||||
assert.equal(error.statusCode, 404);
|
||||
assert.equal(error.errorKey, 'jobId does not exist');
|
||||
assert.equal(error.briefSummary, '11207212 jobId does not exist');
|
||||
|
||||
@@ -60,9 +60,13 @@ describe('PeopleApi', () => {
|
||||
it('should get list of people', (done) => {
|
||||
peopleMock.get200ResponsePersons();
|
||||
|
||||
peopleApi.listPeople().then(() => {
|
||||
peopleMock.play();
|
||||
done();
|
||||
});
|
||||
peopleApi.listPeople().then(
|
||||
() => {
|
||||
done();
|
||||
},
|
||||
(err) => {
|
||||
done(new Error('listPeople rejected: ' + JSON.stringify(err)));
|
||||
}
|
||||
);
|
||||
});
|
||||
});
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,72 @@
|
||||
/*!
|
||||
* @license
|
||||
* Copyright © 2005-2025 Hyland Software, Inc. and 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.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License 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.
|
||||
*/
|
||||
|
||||
/* eslint-disable @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires, jsdoc/require-jsdoc */
|
||||
import { TextEncoder, TextDecoder } from 'util';
|
||||
|
||||
const { TestEnvironment } = require('jest-environment-jsdom');
|
||||
|
||||
const nodeGlobals = [
|
||||
'TextEncoder',
|
||||
'TextDecoder',
|
||||
'ReadableStream',
|
||||
'WritableStream',
|
||||
'TransformStream',
|
||||
'structuredClone',
|
||||
'BroadcastChannel',
|
||||
'MessagePort',
|
||||
'MessageChannel',
|
||||
'Blob',
|
||||
'File',
|
||||
'FormData',
|
||||
'EventTarget',
|
||||
'Event',
|
||||
'AbortController',
|
||||
'AbortSignal'
|
||||
];
|
||||
|
||||
class JSDOMFetchEnvironment extends TestEnvironment {
|
||||
constructor(config: any, context: any) {
|
||||
super(config, context);
|
||||
|
||||
if (!this.global.TextEncoder) {
|
||||
this.global.TextEncoder = TextEncoder;
|
||||
}
|
||||
if (!this.global.TextDecoder) {
|
||||
this.global.TextDecoder = TextDecoder as any;
|
||||
}
|
||||
|
||||
try {
|
||||
const streams = require('stream/web');
|
||||
for (const name of ['ReadableStream', 'WritableStream', 'TransformStream']) {
|
||||
if (!this.global[name] && streams[name]) {
|
||||
this.global[name] = streams[name];
|
||||
}
|
||||
}
|
||||
} catch {
|
||||
/* stream/web not available */
|
||||
}
|
||||
|
||||
for (const name of nodeGlobals) {
|
||||
if (!this.global[name] && (globalThis as any)[name]) {
|
||||
this.global[name] = (globalThis as any)[name];
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
module.exports = JSDOMFetchEnvironment;
|
||||
@@ -15,7 +15,96 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import nock from 'nock';
|
||||
/* eslint-disable no-underscore-dangle, jsdoc/require-jsdoc */
|
||||
import { MockAgent, Interceptable, fetch as undiciFetch } from 'undici';
|
||||
|
||||
export function getGlobalMockAgent(): MockAgent {
|
||||
if (!(global as any).__mockAgent__) {
|
||||
const agent = new MockAgent();
|
||||
agent.disableNetConnect();
|
||||
(global as any).__mockAgent__ = agent;
|
||||
}
|
||||
const agent: MockAgent = (global as any).__mockAgent__;
|
||||
(process as any).__test_fetch__ = (input: any, init?: any) => undiciFetch(input, { ...init, dispatcher: agent });
|
||||
return agent;
|
||||
}
|
||||
|
||||
export function resetGlobalMockAgent(): void {
|
||||
const agent = (global as any).__mockAgent__;
|
||||
if (agent) {
|
||||
agent.close();
|
||||
(global as any).__mockAgent__ = undefined;
|
||||
}
|
||||
delete (process as any).__test_fetch__;
|
||||
}
|
||||
|
||||
interface MockReplyChain {
|
||||
reply(statusCode: number, body?: any, headers?: Record<string, string>): void;
|
||||
}
|
||||
|
||||
interface MockQueryable {
|
||||
query(params: Record<string, string>): MockReplyChain;
|
||||
reply(statusCode: number, body?: any, headers?: Record<string, string>): void;
|
||||
}
|
||||
|
||||
interface MockInterceptor {
|
||||
get(path: string, body?: any): MockQueryable;
|
||||
post(path: string, body?: any): MockQueryable;
|
||||
put(path: string, body?: any): MockQueryable;
|
||||
delete(path: string, body?: any): MockQueryable;
|
||||
}
|
||||
|
||||
function buildQueryString(params: Record<string, string>): string {
|
||||
const sp = new URLSearchParams();
|
||||
for (const [key, value] of Object.entries(params)) {
|
||||
sp.append(key, value);
|
||||
}
|
||||
return sp.toString();
|
||||
}
|
||||
|
||||
// cspell:ignore Interceptable
|
||||
function createInterceptor(pool: Interceptable): MockInterceptor {
|
||||
const doIntercept = (method: string, path: string, body?: any): MockReplyChain => ({
|
||||
reply(statusCode: number, responseBody?: any, headers?: Record<string, string>) {
|
||||
const interceptOpts: any = { path, method };
|
||||
if (body && method !== 'GET' && method !== 'DELETE') {
|
||||
interceptOpts.body = typeof body === 'string' ? body : JSON.stringify(body);
|
||||
}
|
||||
const responseHeaders = { 'content-type': 'application/json', ...headers };
|
||||
const replyBody =
|
||||
responseBody === undefined || responseBody === ''
|
||||
? ''
|
||||
: typeof responseBody === 'string'
|
||||
? responseBody
|
||||
: JSON.stringify(responseBody);
|
||||
pool.intercept(interceptOpts).reply(statusCode, replyBody, { headers: responseHeaders });
|
||||
}
|
||||
});
|
||||
|
||||
const makeChain = (method: string, path: string, body?: any): MockQueryable => ({
|
||||
query(params: Record<string, string>): MockReplyChain {
|
||||
const qs = buildQueryString(params);
|
||||
const separator = path.includes('?') ? '&' : '?';
|
||||
return doIntercept(method, `${path}${separator}${qs}`, body);
|
||||
},
|
||||
reply(statusCode: number, responseBody?: any, headers?: Record<string, string>) {
|
||||
doIntercept(method, path, body).reply(statusCode, responseBody, headers);
|
||||
}
|
||||
});
|
||||
|
||||
return {
|
||||
get: (path: string) => makeChain('GET', path),
|
||||
post: (path: string, body?: any) => makeChain('POST', path, body),
|
||||
put: (path: string, body?: any) => makeChain('PUT', path, body),
|
||||
delete: (path: string, body?: any) => makeChain('DELETE', path, body)
|
||||
};
|
||||
}
|
||||
|
||||
export function mockHost(host: string): MockInterceptor {
|
||||
const agent = getGlobalMockAgent();
|
||||
const pool = agent.get(host);
|
||||
return createInterceptor(pool);
|
||||
}
|
||||
|
||||
export class BaseMock {
|
||||
host: string;
|
||||
@@ -24,15 +113,17 @@ export class BaseMock {
|
||||
this.host = host || 'https://127.0.0.1:8080';
|
||||
}
|
||||
|
||||
put200GenericResponse(scriptSlug: string): void {
|
||||
nock(this.host, { encodedQueryParams: true }).put(scriptSlug).reply(200);
|
||||
protected mock(): MockInterceptor {
|
||||
return mockHost(this.host);
|
||||
}
|
||||
|
||||
play(): void {
|
||||
nock.recorder.play();
|
||||
put200GenericResponse(scriptSlug: string): void {
|
||||
this.mock().put(scriptSlug).reply(200);
|
||||
}
|
||||
|
||||
cleanAll(): void {
|
||||
nock.cleanAll();
|
||||
const agent = getGlobalMockAgent();
|
||||
const pool = agent.get(this.host) as Interceptable;
|
||||
pool.cleanMocks();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -16,11 +16,10 @@
|
||||
*/
|
||||
|
||||
import { BaseMock } from '../base.mock';
|
||||
import nock from 'nock';
|
||||
|
||||
export class AgentMock extends BaseMock {
|
||||
mockGetAgents200Response(): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.get('/alfresco/api/-default-/private/hxi/versions/1/agents')
|
||||
.reply(200, {
|
||||
list: {
|
||||
|
||||
@@ -15,12 +15,11 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import nock from 'nock';
|
||||
import { BaseMock } from '../base.mock';
|
||||
|
||||
export class CategoriesMock extends BaseMock {
|
||||
get200ResponseSubcategories(categoryId: string): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.get(`/alfresco/api/-default-/public/alfresco/versions/1/categories/${categoryId}/subcategories`)
|
||||
.reply(200, {
|
||||
list: {
|
||||
@@ -56,7 +55,7 @@ export class CategoriesMock extends BaseMock {
|
||||
}
|
||||
|
||||
get404SubcategoryNotExist(categoryId: string): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.get(`/alfresco/api/-default-/public/alfresco/versions/1/categories/${categoryId}/subcategories`)
|
||||
.reply(404, {
|
||||
error: {
|
||||
@@ -70,7 +69,7 @@ export class CategoriesMock extends BaseMock {
|
||||
}
|
||||
|
||||
get200ResponseCategory(categoryId: string): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.get(`/alfresco/api/-default-/public/alfresco/versions/1/categories/${categoryId}`)
|
||||
.reply(200, {
|
||||
entry: {
|
||||
@@ -84,7 +83,7 @@ export class CategoriesMock extends BaseMock {
|
||||
}
|
||||
|
||||
get404CategoryNotExist(categoryId: string): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.get(`/alfresco/api/-default-/public/alfresco/versions/1/categories/${categoryId}`)
|
||||
.reply(404, {
|
||||
error: {
|
||||
@@ -98,7 +97,7 @@ export class CategoriesMock extends BaseMock {
|
||||
}
|
||||
|
||||
get200ResponseNodeCategoryLinks(nodeId: string): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.get(`/alfresco/api/-default-/public/alfresco/versions/1/nodes/${nodeId}/category-links`)
|
||||
.reply(200, {
|
||||
list: {
|
||||
@@ -125,7 +124,7 @@ export class CategoriesMock extends BaseMock {
|
||||
}
|
||||
|
||||
get403NodeCategoryLinksPermissionDenied(nodeId: string): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.get(`/alfresco/api/-default-/public/alfresco/versions/1/nodes/${nodeId}/category-links`)
|
||||
.reply(403, {
|
||||
error: {
|
||||
@@ -135,7 +134,7 @@ export class CategoriesMock extends BaseMock {
|
||||
}
|
||||
|
||||
get404NodeNotExist(nodeId: string): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.get(`/alfresco/api/-default-/public/alfresco/versions/1/nodes/${nodeId}/category-links`)
|
||||
.reply(404, {
|
||||
error: {
|
||||
@@ -149,13 +148,11 @@ export class CategoriesMock extends BaseMock {
|
||||
}
|
||||
|
||||
get204CategoryUnlinked(nodeId: string, categoryId: string): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
.delete(`/alfresco/api/-default-/public/alfresco/versions/1/nodes/${nodeId}/category-links/${categoryId}`)
|
||||
.reply(204);
|
||||
this.mock().delete(`/alfresco/api/-default-/public/alfresco/versions/1/nodes/${nodeId}/category-links/${categoryId}`).reply(204);
|
||||
}
|
||||
|
||||
get403CategoryUnlinkPermissionDenied(nodeId: string, categoryId: string): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.delete(`/alfresco/api/-default-/public/alfresco/versions/1/nodes/${nodeId}/category-links/${categoryId}`)
|
||||
.reply(403, {
|
||||
error: {
|
||||
@@ -165,7 +162,7 @@ export class CategoriesMock extends BaseMock {
|
||||
}
|
||||
|
||||
get404CategoryUnlinkNotFound(nodeId: string, categoryId: string): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.delete(`/alfresco/api/-default-/public/alfresco/versions/1/nodes/${nodeId}/category-links/${categoryId}`)
|
||||
.reply(404, {
|
||||
error: {
|
||||
@@ -179,7 +176,7 @@ export class CategoriesMock extends BaseMock {
|
||||
}
|
||||
|
||||
get200ResponseCategoryUpdated(categoryId: string): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.put(`/alfresco/api/-default-/public/alfresco/versions/1/categories/${categoryId}`, { name: 'testName1' })
|
||||
.reply(200, {
|
||||
entry: {
|
||||
@@ -193,7 +190,7 @@ export class CategoriesMock extends BaseMock {
|
||||
}
|
||||
|
||||
get403CategoryUpdatePermissionDenied(categoryId: string): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.put(`/alfresco/api/-default-/public/alfresco/versions/1/categories/${categoryId}`, { name: 'testName1' })
|
||||
.reply(403, {
|
||||
error: {
|
||||
@@ -203,7 +200,7 @@ export class CategoriesMock extends BaseMock {
|
||||
}
|
||||
|
||||
get404CategoryUpdateNotFound(categoryId: string): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.put(`/alfresco/api/-default-/public/alfresco/versions/1/categories/${categoryId}`, { name: 'testName1' })
|
||||
.reply(404, {
|
||||
error: {
|
||||
@@ -217,7 +214,7 @@ export class CategoriesMock extends BaseMock {
|
||||
}
|
||||
|
||||
get201ResponseCategoryCreated(categoryId: string): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.post(`/alfresco/api/-default-/public/alfresco/versions/1/categories/${categoryId}/subcategories`, [{ name: 'testName10' }])
|
||||
.reply(201, {
|
||||
entry: {
|
||||
@@ -231,7 +228,7 @@ export class CategoriesMock extends BaseMock {
|
||||
}
|
||||
|
||||
get403CategoryCreatedPermissionDenied(categoryId: string): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.post(`/alfresco/api/-default-/public/alfresco/versions/1/categories/${categoryId}/subcategories`, [{ name: 'testName10' }])
|
||||
.reply(403, {
|
||||
error: {
|
||||
@@ -241,7 +238,7 @@ export class CategoriesMock extends BaseMock {
|
||||
}
|
||||
|
||||
get409CategoryCreateAlreadyExists(categoryId: string): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.post(`/alfresco/api/-default-/public/alfresco/versions/1/categories/${categoryId}/subcategories`, [{ name: 'testName10' }])
|
||||
.reply(409, {
|
||||
error: {
|
||||
@@ -255,7 +252,7 @@ export class CategoriesMock extends BaseMock {
|
||||
}
|
||||
|
||||
get201ResponseCategoryLinked(nodeId: string): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.post(`/alfresco/api/-default-/public/alfresco/versions/1/nodes/${nodeId}/category-links`, [{ categoryId: 'testId1' }])
|
||||
.reply(201, {
|
||||
entry: {
|
||||
@@ -269,7 +266,7 @@ export class CategoriesMock extends BaseMock {
|
||||
}
|
||||
|
||||
get201ResponseCategoryLinkedArray(nodeId: string): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.post(`/alfresco/api/-default-/public/alfresco/versions/1/nodes/${nodeId}/category-links`, [
|
||||
{ categoryId: 'testId1' },
|
||||
{ categoryId: 'testId2' }
|
||||
@@ -308,7 +305,7 @@ export class CategoriesMock extends BaseMock {
|
||||
}
|
||||
|
||||
get403CategoryLinkPermissionDenied(nodeId: string): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.post(`/alfresco/api/-default-/public/alfresco/versions/1/nodes/${nodeId}/category-links`, [{ categoryId: 'testId1' }])
|
||||
.reply(403, {
|
||||
error: {
|
||||
@@ -318,7 +315,7 @@ export class CategoriesMock extends BaseMock {
|
||||
}
|
||||
|
||||
get404CategoryLinkNotFound(nodeId: string): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.post(`/alfresco/api/-default-/public/alfresco/versions/1/nodes/${nodeId}/category-links`, [{ categoryId: 'testId1' }])
|
||||
.reply(404, {
|
||||
error: {
|
||||
@@ -332,7 +329,7 @@ export class CategoriesMock extends BaseMock {
|
||||
}
|
||||
|
||||
get405CategoryLinkCannotAssign(nodeId: string): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.post(`/alfresco/api/-default-/public/alfresco/versions/1/nodes/${nodeId}/category-links`, [{ categoryId: 'testId1' }])
|
||||
.reply(405, {
|
||||
error: {
|
||||
|
||||
@@ -17,7 +17,6 @@
|
||||
|
||||
'use strict';
|
||||
|
||||
import nock from 'nock';
|
||||
import { BaseMock } from '../base.mock';
|
||||
|
||||
const adminUser = {
|
||||
@@ -40,7 +39,7 @@ const adminUser = {
|
||||
|
||||
export class CommentMock extends BaseMock {
|
||||
post201Response(): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.post('/alfresco/api/-default-/public/alfresco/versions/1/nodes/74cd8a96-8a21-47e5-9b3b-a1b3e296787d/comments', {
|
||||
content: 'This is a comment'
|
||||
})
|
||||
@@ -60,7 +59,7 @@ export class CommentMock extends BaseMock {
|
||||
}
|
||||
|
||||
get200Response(): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.get('/alfresco/api/-default-/public/alfresco/versions/1/nodes/74cd8a96-8a21-47e5-9b3b-a1b3e296787d/comments')
|
||||
.reply(200, {
|
||||
list: {
|
||||
|
||||
@@ -15,12 +15,11 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import nock from 'nock';
|
||||
import { BaseMock } from '../base.mock';
|
||||
|
||||
export class CustomModelMock extends BaseMock {
|
||||
get200AllCustomModel(): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.get('/alfresco/api/-default-/private/alfresco/versions/1/cmm')
|
||||
.reply(200, {
|
||||
list: {
|
||||
@@ -37,7 +36,7 @@ export class CustomModelMock extends BaseMock {
|
||||
}
|
||||
|
||||
create201CustomModel(): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.post('/alfresco/api/-default-/private/alfresco/versions/1/cmm')
|
||||
.reply(201, {
|
||||
entry: {
|
||||
@@ -52,7 +51,7 @@ export class CustomModelMock extends BaseMock {
|
||||
}
|
||||
|
||||
activateCustomModel200(): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.put('/alfresco/api/-default-/private/alfresco/versions/1/cmm/testModel', { status: 'ACTIVE' })
|
||||
.query({ select: 'status' })
|
||||
.reply(200, {
|
||||
|
||||
@@ -15,12 +15,11 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import nock from 'nock';
|
||||
import { BaseMock } from '../base.mock';
|
||||
|
||||
export class DiscoveryMock extends BaseMock {
|
||||
get200Response(): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.get('/alfresco/api/discovery')
|
||||
.reply(200, {
|
||||
entry: {
|
||||
|
||||
@@ -15,7 +15,6 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import nock from 'nock';
|
||||
import { BaseMock } from '../base.mock';
|
||||
|
||||
export class EcmAuthMock extends BaseMock {
|
||||
@@ -31,7 +30,7 @@ export class EcmAuthMock extends BaseMock {
|
||||
get201Response(forceTicket?: string): void {
|
||||
const returnMockTicket = forceTicket || 'TICKET_4479f4d3bb155195879bfbb8d5206f433488a1b1';
|
||||
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.post('/alfresco/api/-default-/public/authentication/versions/1/tickets', {
|
||||
userId: this.username,
|
||||
password: this.password
|
||||
@@ -42,13 +41,13 @@ export class EcmAuthMock extends BaseMock {
|
||||
get200ValidTicket(forceTicket?: string): void {
|
||||
const returnMockTicket = forceTicket || 'TICKET_4479f4d3bb155195879bfbb8d5206f433488a1b1';
|
||||
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.get('/alfresco/api/-default-/public/authentication/versions/1/tickets/-me-')
|
||||
.reply(200, { entry: { id: returnMockTicket } });
|
||||
}
|
||||
|
||||
get401InvalidTicket(): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.get('/alfresco/api/-default-/public/authentication/versions/1/tickets/-me-')
|
||||
.reply(401, {
|
||||
error: {
|
||||
@@ -62,7 +61,7 @@ export class EcmAuthMock extends BaseMock {
|
||||
}
|
||||
|
||||
get403Response(): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.post('/alfresco/api/-default-/public/authentication/versions/1/tickets', {
|
||||
userId: 'wrong',
|
||||
password: 'name'
|
||||
@@ -79,7 +78,7 @@ export class EcmAuthMock extends BaseMock {
|
||||
}
|
||||
|
||||
get400Response(): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.post('/alfresco/api/-default-/public/authentication/versions/1/tickets', {
|
||||
userId: null,
|
||||
password: null
|
||||
@@ -96,7 +95,7 @@ export class EcmAuthMock extends BaseMock {
|
||||
}
|
||||
|
||||
get401Response(): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.post('/alfresco/api/-default-/public/authentication/versions/1/tickets', {
|
||||
userId: 'wrong',
|
||||
password: 'name'
|
||||
@@ -112,11 +111,28 @@ export class EcmAuthMock extends BaseMock {
|
||||
});
|
||||
}
|
||||
|
||||
get401ResponseAdminCredentials(): void {
|
||||
this.mock()
|
||||
.post('/alfresco/api/-default-/public/authentication/versions/1/tickets', {
|
||||
userId: 'admin',
|
||||
password: 'admin'
|
||||
})
|
||||
.reply(401, {
|
||||
error: {
|
||||
errorKey: 'framework.exception.ApiDefault',
|
||||
statusCode: 401,
|
||||
briefSummary: '05210059 Authentication failed for Web Script org/alfresco/api/ResourceWebScript.get',
|
||||
stackTrace: 'For security reasons the stack trace is no longer displayed, but the property is kept for previous versions.',
|
||||
descriptionURL: 'https://api-explorer.alfresco.com'
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
get204ResponseLogout(): void {
|
||||
nock(this.host, { encodedQueryParams: true }).delete('/alfresco/api/-default-/public/authentication/versions/1/tickets/-me-').reply(204, '');
|
||||
this.mock().delete('/alfresco/api/-default-/public/authentication/versions/1/tickets/-me-').reply(204, '');
|
||||
}
|
||||
|
||||
get404ResponseLogout(): void {
|
||||
nock(this.host, { encodedQueryParams: true }).delete('/alfresco/api/-default-/public/authentication/versions/1/tickets/-me-').reply(404, '');
|
||||
this.mock().delete('/alfresco/api/-default-/public/authentication/versions/1/tickets/-me-').reply(404, '');
|
||||
}
|
||||
}
|
||||
|
||||
@@ -15,13 +15,13 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import nock from 'nock';
|
||||
import { BaseMock } from '../base.mock';
|
||||
|
||||
export class FindNodesMock extends BaseMock {
|
||||
get200Response(): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
.get('/alfresco/api/-default-/public/alfresco/versions/1/queries/nodes?term=test')
|
||||
this.mock()
|
||||
.get('/alfresco/api/-default-/public/alfresco/versions/1/queries/nodes')
|
||||
.query({ term: 'test' })
|
||||
.reply(200, {
|
||||
list: {
|
||||
pagination: {
|
||||
@@ -78,8 +78,9 @@ export class FindNodesMock extends BaseMock {
|
||||
}
|
||||
|
||||
get401Response(): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
.get('/alfresco/api/-default-/public/alfresco/versions/1/queries/nodes?term=test')
|
||||
this.mock()
|
||||
.get('/alfresco/api/-default-/public/alfresco/versions/1/queries/nodes')
|
||||
.query({ term: 'test' })
|
||||
.reply(401, {
|
||||
error: {
|
||||
errorKey: 'framework.exception.ApiDefault',
|
||||
|
||||
@@ -15,12 +15,11 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import nock from 'nock';
|
||||
import { BaseMock } from '../base.mock';
|
||||
|
||||
export class GroupsMock extends BaseMock {
|
||||
get200GetGroups(): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.get('/alfresco/api/-default-/public/alfresco/versions/1/groups')
|
||||
.reply(200, {
|
||||
list: {
|
||||
@@ -52,20 +51,20 @@ export class GroupsMock extends BaseMock {
|
||||
}
|
||||
|
||||
getDeleteGroupSuccessfulResponse(groupName: string): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.delete('/alfresco/api/-default-/public/alfresco/versions/1/groups/' + groupName)
|
||||
.query({ cascade: 'false' })
|
||||
.reply(200);
|
||||
}
|
||||
|
||||
getDeleteMemberForGroupSuccessfulResponse(groupName: string, memberName: string): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.delete('/alfresco/api/-default-/public/alfresco/versions/1/groups/' + groupName + '/members/' + memberName)
|
||||
.reply(200);
|
||||
}
|
||||
|
||||
get200CreateGroupResponse(): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.post('/alfresco/api/-default-/public/alfresco/versions/1/groups')
|
||||
.reply(200, {
|
||||
entry: {
|
||||
@@ -77,7 +76,7 @@ export class GroupsMock extends BaseMock {
|
||||
}
|
||||
|
||||
get200GetSingleGroup(): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.get('/alfresco/api/-default-/public/alfresco/versions/1/groups/GROUP_TEST')
|
||||
.reply(200, {
|
||||
entry: {
|
||||
@@ -89,7 +88,7 @@ export class GroupsMock extends BaseMock {
|
||||
}
|
||||
|
||||
get200UpdateGroupResponse(): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.put('/alfresco/api/-default-/public/alfresco/versions/1/groups/GROUP_TEST')
|
||||
.reply(200, {
|
||||
entry: {
|
||||
@@ -101,7 +100,7 @@ export class GroupsMock extends BaseMock {
|
||||
}
|
||||
|
||||
get200GetGroupMemberships(): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.get('/alfresco/api/-default-/public/alfresco/versions/1/groups/GROUP_TEST/members')
|
||||
.reply(200, {
|
||||
list: {
|
||||
@@ -126,7 +125,7 @@ export class GroupsMock extends BaseMock {
|
||||
}
|
||||
|
||||
get200AddGroupMembershipResponse(): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.post('/alfresco/api/-default-/public/alfresco/versions/1/groups/GROUP_TEST/members')
|
||||
.reply(200, {
|
||||
entry: {
|
||||
|
||||
@@ -15,12 +15,11 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import nock from 'nock';
|
||||
import { BaseMock } from '../base.mock';
|
||||
|
||||
export class NodeMock extends BaseMock {
|
||||
get200ResponseChildren(): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.get('/alfresco/api/-default-/public/alfresco/versions/1/nodes/b4cff62a-664d-4d45-9302-98723eac1319/children')
|
||||
.reply(200, {
|
||||
list: {
|
||||
@@ -108,7 +107,7 @@ export class NodeMock extends BaseMock {
|
||||
}
|
||||
|
||||
get200ResponseChildrenNonUTCTimes(): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.get('/alfresco/api/-default-/public/alfresco/versions/1/nodes/b4cff62a-664d-4d45-9302-98723eac1320/children')
|
||||
.reply(200, {
|
||||
list: {
|
||||
@@ -140,7 +139,7 @@ export class NodeMock extends BaseMock {
|
||||
}
|
||||
|
||||
get404ChildrenNotExist(): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.get('/alfresco/api/-default-/public/alfresco/versions/1/nodes/b4cff62a-664d-4d45-9302-98723eac1319/children')
|
||||
.reply(404, {
|
||||
error: {
|
||||
@@ -154,23 +153,19 @@ export class NodeMock extends BaseMock {
|
||||
}
|
||||
|
||||
get401CreationFolder(): void {
|
||||
nock(this.host, { encodedQueryParams: true }).post('/alfresco/api/-default-/public/alfresco/versions/1/nodes/-root-/children').reply(401);
|
||||
this.mock().post('/alfresco/api/-default-/public/alfresco/versions/1/nodes/-root-/children').reply(401);
|
||||
}
|
||||
|
||||
get204SuccessfullyDeleted(): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
.delete('/alfresco/api/-default-/public/alfresco/versions/1/nodes/80a94ac8-3ece-47ad-864e-5d939424c47c')
|
||||
.reply(204);
|
||||
this.mock().delete('/alfresco/api/-default-/public/alfresco/versions/1/nodes/80a94ac8-3ece-47ad-864e-5d939424c47c').reply(204);
|
||||
}
|
||||
|
||||
get403DeletePermissionDenied(): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
.delete('/alfresco/api/-default-/public/alfresco/versions/1/nodes/80a94ac8-3ece-47ad-864e-5d939424c47c')
|
||||
.reply(403);
|
||||
this.mock().delete('/alfresco/api/-default-/public/alfresco/versions/1/nodes/80a94ac8-3ece-47ad-864e-5d939424c47c').reply(403);
|
||||
}
|
||||
|
||||
get404DeleteNotFound(): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.delete('/alfresco/api/-default-/public/alfresco/versions/1/nodes/80a94ac8-test-47ad-864e-5d939424c47c')
|
||||
.reply(404, {
|
||||
error: {
|
||||
@@ -184,7 +179,7 @@ export class NodeMock extends BaseMock {
|
||||
}
|
||||
|
||||
get200ResponseChildrenFutureNewPossibleValue(): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.get('/alfresco/api/-default-/public/alfresco/versions/1/nodes/b4cff62a-664d-4d45-9302-98723eac1319/children')
|
||||
.reply(200, {
|
||||
list: {
|
||||
@@ -232,7 +227,7 @@ export class NodeMock extends BaseMock {
|
||||
}
|
||||
|
||||
post200ResponseInitiateFolderSizeCalculation(): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.post('/alfresco/api/-default-/public/alfresco/versions/1/nodes/b4cff62a-664d-4d45-9302-98723eac1319/size-details')
|
||||
.reply(200, {
|
||||
entry: {
|
||||
@@ -242,7 +237,7 @@ export class NodeMock extends BaseMock {
|
||||
}
|
||||
|
||||
post404NodeIdNotFound(): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.post('/alfresco/api/-default-/public/alfresco/versions/1/nodes/b4cff62a-664d-4d45-9302-98723eac1319/size-details')
|
||||
.reply(404, {
|
||||
error: {
|
||||
@@ -257,7 +252,7 @@ export class NodeMock extends BaseMock {
|
||||
}
|
||||
|
||||
get200ResponseGetFolderSizeInfo(): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.get(
|
||||
'/alfresco/api/-default-/public/alfresco/versions/1/nodes/b4cff62a-664d-4d45-9302-98723eac1319/size-details/5ade426e-8a04-4d50-9e42-6e8a041d50f3'
|
||||
)
|
||||
@@ -274,7 +269,7 @@ export class NodeMock extends BaseMock {
|
||||
}
|
||||
|
||||
get404JobIdNotFound(): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.get(
|
||||
'/alfresco/api/-default-/public/alfresco/versions/1/nodes/b4cff62a-664d-4d45-9302-98723eac1319/size-details/5ade426e-8a04-4d50-9e42-6e8a041d50f3'
|
||||
)
|
||||
|
||||
@@ -15,12 +15,11 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import nock from 'nock';
|
||||
import { BaseMock } from '../base.mock';
|
||||
|
||||
export class PeopleMock extends BaseMock {
|
||||
get201Response(): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.post('/alfresco/api/-default-/public/alfresco/versions/1/people')
|
||||
.reply(201, {
|
||||
entry: {
|
||||
@@ -36,7 +35,7 @@ export class PeopleMock extends BaseMock {
|
||||
}
|
||||
|
||||
get200ResponsePersons(): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.get('/alfresco/api/-default-/public/alfresco/versions/1/people')
|
||||
.reply(200, {
|
||||
list: {
|
||||
|
||||
@@ -15,12 +15,11 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import nock from 'nock';
|
||||
import { BaseMock } from '../base.mock';
|
||||
|
||||
export class RenditionMock extends BaseMock {
|
||||
get200RenditionResponse(): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.get('/alfresco/api/-default-/public/alfresco/versions/1/nodes/97a29e9c-1e4f-4d9d-bb02-1ec920dda045/renditions/pdf')
|
||||
.reply(200, {
|
||||
entry: {
|
||||
@@ -32,13 +31,13 @@ export class RenditionMock extends BaseMock {
|
||||
}
|
||||
|
||||
createRendition200(): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.post('/alfresco/api/-default-/public/alfresco/versions/1/nodes/97a29e9c-1e4f-4d9d-bb02-1ec920dda045/renditions', { id: 'pdf' })
|
||||
.reply(202, '');
|
||||
}
|
||||
|
||||
get200RenditionList(): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.get('/alfresco/api/-default-/public/alfresco/versions/1/nodes/97a29e9c-1e4f-4d9d-bb02-1ec920dda045/renditions')
|
||||
.reply(200, {
|
||||
list: {
|
||||
|
||||
@@ -16,11 +16,10 @@
|
||||
*/
|
||||
|
||||
import { BaseMock } from '../base.mock';
|
||||
import nock from 'nock';
|
||||
|
||||
export class SearchAiMock extends BaseMock {
|
||||
mockGetAsk200Response(): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.post('/alfresco/api/-default-/private/hxi/versions/1/agents/id1/questions', [
|
||||
{
|
||||
question: 'some question 1',
|
||||
@@ -41,7 +40,7 @@ export class SearchAiMock extends BaseMock {
|
||||
}
|
||||
|
||||
mockGetAnswer200Response(): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.get('/alfresco/api/-default-/private/hxi/versions/1/questions/id1/answers/-default-')
|
||||
.reply(200, {
|
||||
entry: {
|
||||
@@ -85,7 +84,7 @@ export class SearchAiMock extends BaseMock {
|
||||
}
|
||||
|
||||
mockGetConfig200Response(): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.get('/alfresco/api/-default-/private/hxi/versions/1/config/-default-')
|
||||
.reply(200, {
|
||||
entry: {
|
||||
|
||||
@@ -15,13 +15,12 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import nock from 'nock';
|
||||
import { BaseMock } from '../base.mock';
|
||||
import { SEARCH_LANGUAGE } from '@alfresco/js-api';
|
||||
|
||||
export class SearchMock extends BaseMock {
|
||||
get200Response(): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.post('/alfresco/api/-default-/public/search/versions/1/search', {
|
||||
query: {
|
||||
query: 'select * from cmis:folder',
|
||||
|
||||
@@ -15,26 +15,25 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import nock from 'nock';
|
||||
import { BaseMock } from '../base.mock';
|
||||
import { TagBody, TagEntry, TagPaging } from '../../../src/api/content-rest-api';
|
||||
|
||||
export class TagMock extends BaseMock {
|
||||
get200Response(): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
.get('/alfresco/api/-default-/public/alfresco/versions/1/tags')
|
||||
.reply(200, this.getPaginatedListOfTags());
|
||||
this.mock().get('/alfresco/api/-default-/public/alfresco/versions/1/tags').reply(200, this.getPaginatedListOfTags());
|
||||
}
|
||||
|
||||
getTagsByNameFilteredByMatching200Response(): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
.get('/alfresco/api/-default-/public/alfresco/versions/1/tags?where=(tag%20matches%20(%27*tag-test*%27))')
|
||||
this.mock()
|
||||
.get('/alfresco/api/-default-/public/alfresco/versions/1/tags')
|
||||
.query({ where: "(tag matches ('*tag-test*'))" })
|
||||
.reply(200, this.getPaginatedListOfTags());
|
||||
}
|
||||
|
||||
getTagsByNamesFilterByExactTag200Response(): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
.get('/alfresco/api/-default-/public/alfresco/versions/1/tags?where=(tag%3D%27tag-test-1%27)')
|
||||
this.mock()
|
||||
.get('/alfresco/api/-default-/public/alfresco/versions/1/tags')
|
||||
.query({ where: "(tag='tag-test-1')" })
|
||||
.reply(200, {
|
||||
list: {
|
||||
pagination: {
|
||||
@@ -49,7 +48,7 @@ export class TagMock extends BaseMock {
|
||||
}
|
||||
|
||||
get401Response(): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.get('/alfresco/api/-default-/public/alfresco/versions/1/tags')
|
||||
.reply(401, {
|
||||
error: {
|
||||
@@ -63,13 +62,11 @@ export class TagMock extends BaseMock {
|
||||
}
|
||||
|
||||
createTags201Response(): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
.post('/alfresco/api/-default-/public/alfresco/versions/1/tags')
|
||||
.reply(201, this.getPaginatedListOfTags());
|
||||
this.mock().post('/alfresco/api/-default-/public/alfresco/versions/1/tags').reply(201, this.getPaginatedListOfTags());
|
||||
}
|
||||
|
||||
get201ResponseForAssigningTagsToNode(body: TagBody[]): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.post('/alfresco/api/-default-/public/alfresco/versions/1/nodes/someNodeId/tags', JSON.stringify(body))
|
||||
.reply(201, body.length > 1 ? this.getPaginatedListOfTags() : this.mockTagEntry());
|
||||
}
|
||||
|
||||
@@ -15,12 +15,11 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import nock from 'nock';
|
||||
import { BaseMock } from '../base.mock';
|
||||
|
||||
export class UploadMock extends BaseMock {
|
||||
get201CreationFile(): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.post('/alfresco/api/-default-/public/alfresco/versions/1/nodes/-root-/children')
|
||||
.reply(201, {
|
||||
entry: {
|
||||
@@ -47,7 +46,7 @@ export class UploadMock extends BaseMock {
|
||||
}
|
||||
|
||||
get201CreationFileAutoRename(): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.post('/alfresco/api/-default-/public/alfresco/versions/1/nodes/-root-/children')
|
||||
.query({ autoRename: 'true' })
|
||||
.reply(201, {
|
||||
@@ -75,7 +74,7 @@ export class UploadMock extends BaseMock {
|
||||
}
|
||||
|
||||
get409CreationFileNewNameClashes(): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.post('/alfresco/api/-default-/public/alfresco/versions/1/nodes/-root-/children')
|
||||
.reply(409, {
|
||||
error: {
|
||||
@@ -89,7 +88,7 @@ export class UploadMock extends BaseMock {
|
||||
}
|
||||
|
||||
get401Response(): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.post('/alfresco/api/-default-/public/alfresco/versions/1/nodes/-root-/children')
|
||||
.reply(401, {
|
||||
error: {
|
||||
|
||||
@@ -15,18 +15,17 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import nock from 'nock';
|
||||
import { BaseMock } from '../base.mock';
|
||||
|
||||
export class VersionMock extends BaseMock {
|
||||
post201Response(nodeId: string, versionId: string): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.post('/alfresco/api/-default-/public/alfresco/versions/1/nodes/' + nodeId + '/versions/' + versionId + '/revert')
|
||||
.reply(201, { entry: { id: '3.0' } });
|
||||
}
|
||||
|
||||
get200Response(nodeId: string): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.get('/alfresco/api/-default-/public/alfresco/versions/1/nodes/' + nodeId + '/versions')
|
||||
.reply(200, {
|
||||
list: {
|
||||
@@ -43,7 +42,7 @@ export class VersionMock extends BaseMock {
|
||||
}
|
||||
|
||||
get200ResponseVersionRenditions(nodeId: string, versionId: string): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.get('/alfresco/api/-default-/public/alfresco/versions/1/nodes/' + nodeId + '/versions/' + versionId + '/renditions')
|
||||
.reply(200, {
|
||||
list: {
|
||||
@@ -103,7 +102,7 @@ export class VersionMock extends BaseMock {
|
||||
}
|
||||
|
||||
get200VersionRendition(nodeId: string, versionId: string, renditionId: string): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.get('/alfresco/api/-default-/public/alfresco/versions/1/nodes/' + nodeId + '/versions/' + versionId + '/renditions/' + renditionId)
|
||||
.reply(200, {
|
||||
entry: {
|
||||
@@ -115,7 +114,7 @@ export class VersionMock extends BaseMock {
|
||||
}
|
||||
|
||||
create200VersionRendition(nodeId: string, versionId: string): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.post('/alfresco/api/-default-/public/alfresco/versions/1/nodes/' + nodeId + '/versions/' + versionId + '/renditions', { id: 'pdf' })
|
||||
.reply(202, '');
|
||||
}
|
||||
|
||||
@@ -15,7 +15,6 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import nock from 'nock';
|
||||
import { BaseMock } from '../base.mock';
|
||||
|
||||
export class WebScriptMock extends BaseMock {
|
||||
@@ -34,7 +33,7 @@ export class WebScriptMock extends BaseMock {
|
||||
}
|
||||
|
||||
get404Response(): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.get(this.scriptSlug)
|
||||
.reply(404, {
|
||||
error: {
|
||||
@@ -48,7 +47,7 @@ export class WebScriptMock extends BaseMock {
|
||||
}
|
||||
|
||||
get200Response(): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.get(this.scriptSlug)
|
||||
.reply(200, {
|
||||
randomStructure: {
|
||||
@@ -59,7 +58,7 @@ export class WebScriptMock extends BaseMock {
|
||||
}
|
||||
|
||||
get200ResponseHTMLFormat(): void {
|
||||
nock(this.host, { encodedQueryParams: true }).get('/alfresco/service/sample/folder/Company%20Home').reply(
|
||||
this.mock().get('/alfresco/service/sample/folder/Company%20Home').reply(
|
||||
200,
|
||||
// eslint-disable-next-line max-len
|
||||
'<html>\n <head>\n <title>/Company Home</title>\n </head>\n <body>\n Folder: /Company Home\n <br>\n <table>\n <tr>\n <td>><td><a href="/alfresco/service/sample/folder/Company%20Home/Data%20Dictionary">Data Dictionary</a>\n </tr>\n <tr>\n <td>><td><a href="/alfresco/service/sample/folder/Company%20Home/Guest%20Home">Guest Home</a>\n </tr>\n <tr>\n <td>><td><a href="/alfresco/service/sample/folder/Company%20Home/User%20Homes">User Homes</a>\n </tr>\n <tr>\n <td>><td><a href="/alfresco/service/sample/folder/Company%20Home/Shared">Shared</a>\n </tr>\n <tr>\n <td>><td><a href="/alfresco/service/sample/folder/Company%20Home/Imap%20Attachments">Imap Attachments</a>\n </tr>\n <tr>\n <td>><td><a href="/alfresco/service/sample/folder/Company%20Home/IMAP%20Home">IMAP Home</a>\n </tr>\n <tr>\n <td>><td><a href="/alfresco/service/sample/folder/Company%20Home/Sites">Sites</a>\n </tr>\n <tr>\n <td>><td><a href="/alfresco/service/sample/folder/Company%20Home/x">x</a>\n </tr>\n <tr>\n <td><td><a href="/alfresco/service/api/node/content/workspace/SpacesStore/2857abfd-0ac6-459d-a22d-ec78770570f3/testFile.txt">testFile.txt</a>\n </tr>\n <tr>\n <td>><td><a href="/alfresco/service/sample/folder/Company%20Home/newFolder">newFolder</a>\n </tr>\n <tr>\n <td>><td><a href="/alfresco/service/sample/folder/Company%20Home/newFolder-1">newFolder-1</a>\n </tr>\n <tr>\n <td><td><a href="/alfresco/service/api/node/content/workspace/SpacesStore/21ce66a9-6bc5-4c49-8ad3-43d3b824a9a3/testFile-1.txt">testFile-1.txt</a>\n </tr>\n <tr>\n <td><td><a href="/alfresco/service/api/node/content/workspace/SpacesStore/ae314293-27e8-4221-9a09-699f103db5f3/testFile-2.txt">testFile-2.txt</a>\n </tr>\n <tr>\n <td><td><a href="/alfresco/service/api/node/content/workspace/SpacesStore/935c1a72-647f-4c8f-aab6-e3b161978427/testFile-3.txt">testFile-3.txt</a>\n </tr>\n </table>\n </body>\n</html>\n\n'
|
||||
@@ -67,7 +66,7 @@ export class WebScriptMock extends BaseMock {
|
||||
}
|
||||
|
||||
get401Response(): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.get(this.scriptSlug)
|
||||
.reply(401, {
|
||||
error: {
|
||||
|
||||
@@ -16,12 +16,12 @@
|
||||
*/
|
||||
|
||||
import { BaseMock } from '../base.mock';
|
||||
import nock from 'nock';
|
||||
|
||||
export class AuthorityClearanceMock extends BaseMock {
|
||||
get200AuthorityClearanceForAuthority(authorityId: string): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
.get('/alfresco/api/-default-/public/gs/versions/1/cleared-authorities/' + authorityId + '/clearing-marks?skipCount=0&maxItems=100')
|
||||
this.mock()
|
||||
.get('/alfresco/api/-default-/public/gs/versions/1/cleared-authorities/' + authorityId + '/clearing-marks')
|
||||
.query({ skipCount: '0', maxItems: '100' })
|
||||
.reply(200, {
|
||||
list: {
|
||||
pagination: {
|
||||
@@ -94,7 +94,7 @@ export class AuthorityClearanceMock extends BaseMock {
|
||||
}
|
||||
|
||||
post200AuthorityClearanceWithSingleItem(authorityId: string): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.post('/alfresco/api/-default-/public/gs/versions/1/cleared-authorities/' + authorityId + '/clearing-marks')
|
||||
.reply(200, {
|
||||
entry: {
|
||||
@@ -106,7 +106,7 @@ export class AuthorityClearanceMock extends BaseMock {
|
||||
}
|
||||
|
||||
post200AuthorityClearanceWithList(authorityId: string): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.post('/alfresco/api/-default-/public/gs/versions/1/cleared-authorities/' + authorityId + '/clearing-marks')
|
||||
.reply(200, {
|
||||
list: {
|
||||
|
||||
@@ -16,42 +16,34 @@
|
||||
*/
|
||||
|
||||
import { BaseMock } from '../base.mock';
|
||||
import nock from 'nock';
|
||||
import { FilePlanRolePaging } from '@alfresco/js-api';
|
||||
|
||||
export class FilePlansMock extends BaseMock {
|
||||
get200FilePlanRoles(filePlanId: string): void {
|
||||
this.nock200FilePlanRoles(filePlanId).query({}).reply(200, this.mockFilePlanRolePaging());
|
||||
this.mock().get(`/alfresco/api/-default-/public/gs/versions/1/file-plans/${filePlanId}/roles`).reply(200, this.mockFilePlanRolePaging());
|
||||
}
|
||||
|
||||
get200FilePlanRolesWithFilteringByCapabilityNames(filePlanId: string): void {
|
||||
this.nock200FilePlanRoles(filePlanId)
|
||||
.query({
|
||||
where: "(capabilityName in ('capability1', 'capability2'))"
|
||||
})
|
||||
this.mock()
|
||||
.get(`/alfresco/api/-default-/public/gs/versions/1/file-plans/${filePlanId}/roles`)
|
||||
.query({ where: "(capabilityName in ('capability1', 'capability2'))" })
|
||||
.reply(200, this.mockFilePlanRolePaging());
|
||||
}
|
||||
|
||||
get200FilePlanRolesWithFilteringByPersonId(filePlanId: string): void {
|
||||
this.nock200FilePlanRoles(filePlanId)
|
||||
.query({
|
||||
where: "(personId='someUser')"
|
||||
})
|
||||
this.mock()
|
||||
.get(`/alfresco/api/-default-/public/gs/versions/1/file-plans/${filePlanId}/roles`)
|
||||
.query({ where: "(personId='someUser')" })
|
||||
.reply(200, this.mockFilePlanRolePaging());
|
||||
}
|
||||
|
||||
get200FilePlanRolesWithFilteringByPersonIdAndCapabilityNames(filePlanId: string): void {
|
||||
this.nock200FilePlanRoles(filePlanId)
|
||||
.query({
|
||||
where: "(personId='someUser' and capabilityName in ('capability1', 'capability2'))"
|
||||
})
|
||||
this.mock()
|
||||
.get(`/alfresco/api/-default-/public/gs/versions/1/file-plans/${filePlanId}/roles`)
|
||||
.query({ where: "(personId='someUser' and capabilityName in ('capability1', 'capability2'))" })
|
||||
.reply(200, this.mockFilePlanRolePaging());
|
||||
}
|
||||
|
||||
private nock200FilePlanRoles(filePlanId: string): nock.Interceptor {
|
||||
return nock(this.host, { encodedQueryParams: true }).get(`/alfresco/api/-default-/public/gs/versions/1/file-plans/${filePlanId}/roles`);
|
||||
}
|
||||
|
||||
private mockFilePlanRolePaging(): FilePlanRolePaging {
|
||||
return {
|
||||
list: {
|
||||
|
||||
@@ -15,12 +15,11 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import nock from 'nock';
|
||||
import { BaseMock } from '../base.mock';
|
||||
|
||||
export class GsSitesApiMock extends BaseMock {
|
||||
get200Response(): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.get('/alfresco/api/-default-/public/gs/versions/1/gs-sites/rm')
|
||||
.reply(200, {
|
||||
entry: {
|
||||
|
||||
@@ -15,12 +15,11 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import nock from 'nock';
|
||||
import { BaseMock } from '../base.mock';
|
||||
|
||||
export class NodeSecurityMarksApiMock extends BaseMock {
|
||||
post200manageSecurityMarkOnNode(nodeId: string): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.post('/alfresco/api/-default-/public/gs/versions/1/secured-nodes/' + nodeId + '/securing-marks')
|
||||
.reply(200, {
|
||||
list: {
|
||||
@@ -52,7 +51,7 @@ export class NodeSecurityMarksApiMock extends BaseMock {
|
||||
}
|
||||
|
||||
get200SecurityMarkOnNode(nodeId: string): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.get('/alfresco/api/-default-/public/gs/versions/1/secured-nodes/' + nodeId + '/securing-marks')
|
||||
.reply(200, {
|
||||
list: {
|
||||
|
||||
@@ -15,12 +15,11 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import nock from 'nock';
|
||||
import { BaseMock } from '../base.mock';
|
||||
|
||||
export class SecurityGroupApiMock extends BaseMock {
|
||||
createSecurityGroup200Response(): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.post('/alfresco/api/-default-/public/gs/versions/1/security-groups')
|
||||
.reply(200, {
|
||||
entry: {
|
||||
@@ -32,7 +31,7 @@ export class SecurityGroupApiMock extends BaseMock {
|
||||
}
|
||||
|
||||
getSecurityGroups200Response(): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.get('/alfresco/api/-default-/public/gs/versions/1/security-groups')
|
||||
.reply(200, {
|
||||
list: {
|
||||
@@ -64,7 +63,7 @@ export class SecurityGroupApiMock extends BaseMock {
|
||||
}
|
||||
|
||||
getSecurityGroupInfo200Response(securityGroupId: string): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.get('/alfresco/api/-default-/public/gs/versions/1/security-groups/' + securityGroupId)
|
||||
.reply(200, {
|
||||
entry: {
|
||||
@@ -76,7 +75,7 @@ export class SecurityGroupApiMock extends BaseMock {
|
||||
}
|
||||
|
||||
updateSecurityGroup200Response(securityGroupId: string): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.put('/alfresco/api/-default-/public/gs/versions/1/security-groups/' + securityGroupId)
|
||||
.reply(200, {
|
||||
entry: {
|
||||
@@ -88,7 +87,7 @@ export class SecurityGroupApiMock extends BaseMock {
|
||||
}
|
||||
|
||||
deleteSecurityGroup200Response(securityGroupId: string): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.delete('/alfresco/api/-default-/public/alfresco/versions/1/security-groups/' + securityGroupId)
|
||||
.reply(200);
|
||||
}
|
||||
|
||||
@@ -15,12 +15,11 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import nock from 'nock';
|
||||
import { BaseMock } from '../base.mock';
|
||||
|
||||
export class SecurityMarkApiMock extends BaseMock {
|
||||
get200GetSecurityMark(securityGroupId: string): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.get('/alfresco/api/-default-/public/gs/versions/1/security-groups/' + securityGroupId + '/security-marks')
|
||||
.reply(200, {
|
||||
list: {
|
||||
@@ -45,7 +44,7 @@ export class SecurityMarkApiMock extends BaseMock {
|
||||
}
|
||||
|
||||
createSecurityMark200Response(securityGroupId: string): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.post('/alfresco/api/-default-/public/gs/versions/1/security-groups/' + securityGroupId + '/security-marks')
|
||||
.reply(200, {
|
||||
entry: {
|
||||
@@ -56,7 +55,7 @@ export class SecurityMarkApiMock extends BaseMock {
|
||||
});
|
||||
}
|
||||
createSecurityMarks200Response(securityGroupId: string): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.post('/alfresco/api/-default-/public/gs/versions/1/security-groups/' + securityGroupId + '/security-marks')
|
||||
.reply(200, {
|
||||
list: {
|
||||
@@ -87,7 +86,7 @@ export class SecurityMarkApiMock extends BaseMock {
|
||||
});
|
||||
}
|
||||
get200GetSingleSecurityMark(securityGroupId: string, securityMarkId: string): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.get('/alfresco/api/-default-/public/gs/versions/1/security-groups/' + securityGroupId + '/security-marks/' + securityMarkId)
|
||||
.reply(200, {
|
||||
entry: {
|
||||
@@ -98,7 +97,7 @@ export class SecurityMarkApiMock extends BaseMock {
|
||||
});
|
||||
}
|
||||
put200UpdateSecurityMarkResponse(securityGroupId: string, securityMarkId: string): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.put('/alfresco/api/-default-/public/gs/versions/1/security-groups/' + securityGroupId + '/security-marks/' + securityMarkId)
|
||||
.reply(200, {
|
||||
entry: {
|
||||
@@ -109,12 +108,12 @@ export class SecurityMarkApiMock extends BaseMock {
|
||||
});
|
||||
}
|
||||
getDeleteSecurityMarkSuccessfulResponse(securityGroupId: string, securityMarkId: string): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.delete('/alfresco/api/-default-/public/gs/versions/1/security-groups/' + securityGroupId + '/security-marks/' + securityMarkId)
|
||||
.reply(200);
|
||||
}
|
||||
get401Response(): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.get('/alfresco/api/-default-/public/gs/versions/1/security-groups/')
|
||||
.reply(401, {
|
||||
error: {
|
||||
|
||||
@@ -15,7 +15,6 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import nock from 'nock';
|
||||
import { BaseMock } from '../base.mock';
|
||||
|
||||
export class OAuthMock extends BaseMock {
|
||||
@@ -29,7 +28,7 @@ export class OAuthMock extends BaseMock {
|
||||
}
|
||||
|
||||
get200Response(mockToken?: string): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.post('/auth/realms/springboot/protocol/openid-connect/token')
|
||||
.reply(200, {
|
||||
access_token: mockToken || 'test-token',
|
||||
|
||||
@@ -15,7 +15,6 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import nock from 'nock';
|
||||
import { BaseMock } from '../base.mock';
|
||||
|
||||
export class BpmAuthMock extends BaseMock {
|
||||
@@ -29,7 +28,7 @@ export class BpmAuthMock extends BaseMock {
|
||||
}
|
||||
|
||||
get200Response(): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.post(
|
||||
'/activiti-app/app/authentication',
|
||||
'j_username=' + this.username + '&j_password=' + this.password + '&_spring_security_remember_me=true&submit=Login'
|
||||
@@ -38,11 +37,11 @@ export class BpmAuthMock extends BaseMock {
|
||||
}
|
||||
|
||||
get200ResponseLogout(): void {
|
||||
nock(this.host, { encodedQueryParams: true }).get('/activiti-app/app/logout', {}).reply(200);
|
||||
this.mock().get('/activiti-app/app/logout').reply(200);
|
||||
}
|
||||
|
||||
get401Response(): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.post('/activiti-app/app/authentication', 'j_username=wrong&j_password=name&_spring_security_remember_me=true&submit=Login')
|
||||
.reply(401, {
|
||||
error: {
|
||||
@@ -52,8 +51,19 @@ export class BpmAuthMock extends BaseMock {
|
||||
});
|
||||
}
|
||||
|
||||
get401ResponseAdminCredentials(): void {
|
||||
this.mock()
|
||||
.post('/activiti-app/app/authentication', 'j_username=admin&j_password=admin&_spring_security_remember_me=true&submit=Login')
|
||||
.reply(401, {
|
||||
error: {
|
||||
message: 'This request requires HTTP authentication.',
|
||||
statusCode: 401
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
get403Response(): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.post('/activiti-app/app/authentication', 'j_username=wrong&j_password=name&_spring_security_remember_me=true&submit=Login')
|
||||
.reply(403, {
|
||||
error: {
|
||||
|
||||
@@ -15,12 +15,11 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import nock from 'nock';
|
||||
import { BaseMock } from '../base.mock';
|
||||
import { BaseMock, mockHost } from '../base.mock';
|
||||
|
||||
export class ModelJsonBpmMock extends BaseMock {
|
||||
get200EditorDisplayJsonClient(): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.get('/activiti-app/app/rest/models/1/model-json')
|
||||
.reply(200, {
|
||||
elements: [
|
||||
@@ -87,7 +86,7 @@ export class ModelJsonBpmMock extends BaseMock {
|
||||
}
|
||||
|
||||
get200HistoricEditorDisplayJsonClient(): void {
|
||||
nock('https://127.0.0.1:9999', { encodedQueryParams: true })
|
||||
mockHost('https://127.0.0.1:9999')
|
||||
.get('/activiti-app/app/rest/models/1/history/1/model-json')
|
||||
.reply(200, {
|
||||
elements: [
|
||||
|
||||
@@ -15,12 +15,11 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import nock from 'nock';
|
||||
import { BaseMock } from '../base.mock';
|
||||
|
||||
export class ModelsMock extends BaseMock {
|
||||
get200getModels(): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.get('/activiti-app/api/enterprise/models')
|
||||
.query({ filter: 'myReusableForms', modelType: '2' })
|
||||
.reply(200, {
|
||||
|
||||
@@ -15,7 +15,6 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import nock from 'nock';
|
||||
import { BaseMock } from '../base.mock';
|
||||
|
||||
const fakeVariable1 = {
|
||||
@@ -34,13 +33,13 @@ const fakeVariablesList = [fakeVariable1, fakeVariable2];
|
||||
|
||||
export class ProcessInstanceVariablesMock extends BaseMock {
|
||||
addListProcessInstanceVariables200Response(processInstanceId: string): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.get('/activiti-app/api/enterprise/process-instances/' + processInstanceId + '/variables')
|
||||
.reply(200, fakeVariablesList);
|
||||
}
|
||||
|
||||
addListProcessInstanceVariables500Response(processInstanceId: string): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.get('/activiti-app/api/enterprise/process-instances/' + processInstanceId + '/variables')
|
||||
.reply(500, {
|
||||
messageKey: 'UNKNOWN',
|
||||
@@ -49,13 +48,13 @@ export class ProcessInstanceVariablesMock extends BaseMock {
|
||||
}
|
||||
|
||||
addPutProcessInstanceVariables200Response(processInstanceId: string): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.put('/activiti-app/api/enterprise/process-instances/' + processInstanceId + '/variables')
|
||||
.reply(200, fakeVariablesList);
|
||||
}
|
||||
|
||||
addPutProcessInstanceVariables500Response(processInstanceId: string): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.put('/activiti-app/api/enterprise/process-instances/' + processInstanceId + '/variables')
|
||||
.reply(500, {
|
||||
messageKey: 'UNKNOWN',
|
||||
@@ -64,13 +63,13 @@ export class ProcessInstanceVariablesMock extends BaseMock {
|
||||
}
|
||||
|
||||
addGetProcessInstanceVariable200Response(processInstanceId: string, variableName: string): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.get('/activiti-app/api/enterprise/process-instances/' + processInstanceId + '/variables/' + variableName)
|
||||
.reply(200, fakeVariable1);
|
||||
}
|
||||
|
||||
addGetProcessInstanceVariable500Response(processInstanceId: string, variableName: string): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.get('/activiti-app/api/enterprise/process-instances/' + processInstanceId + '/variables/' + variableName)
|
||||
.reply(500, {
|
||||
messageKey: 'UNKNOWN',
|
||||
@@ -79,13 +78,13 @@ export class ProcessInstanceVariablesMock extends BaseMock {
|
||||
}
|
||||
|
||||
addUpdateProcessInstanceVariable200Response(processInstanceId: string, variableName: string): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.put('/activiti-app/api/enterprise/process-instances/' + processInstanceId + '/variables/' + variableName)
|
||||
.reply(200, fakeVariable1);
|
||||
}
|
||||
|
||||
addUpdateProcessInstanceVariable500Response(processInstanceId: string, variableName: string): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.put('/activiti-app/api/enterprise/process-instances/' + processInstanceId + '/variables/' + variableName)
|
||||
.reply(500, {
|
||||
messageKey: 'UNKNOWN',
|
||||
@@ -94,13 +93,13 @@ export class ProcessInstanceVariablesMock extends BaseMock {
|
||||
}
|
||||
|
||||
addDeleteProcessInstanceVariable200Response(processInstanceId: string, variableName: string): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.delete('/activiti-app/api/enterprise/process-instances/' + processInstanceId + '/variables/' + variableName)
|
||||
.reply(200);
|
||||
}
|
||||
|
||||
addDeleteProcessInstanceVariable500Response(processInstanceId: string, variableName: string): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.delete('/activiti-app/api/enterprise/process-instances/' + processInstanceId + '/variables/' + variableName)
|
||||
.reply(500, {
|
||||
messageKey: 'UNKNOWN',
|
||||
|
||||
@@ -15,12 +15,11 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import nock from 'nock';
|
||||
import { BaseMock } from '../base.mock';
|
||||
|
||||
export class ProcessMock extends BaseMock {
|
||||
get200Response(): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.post('/activiti-app/api/enterprise/process-instances/query')
|
||||
.reply(200, {
|
||||
size: 2,
|
||||
@@ -82,7 +81,7 @@ export class ProcessMock extends BaseMock {
|
||||
}
|
||||
|
||||
get200getProcessDefinitionStartForm(): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.get('/activiti-app/api/enterprise/process-definitions/testProcess%3A1%3A7504/start-form')
|
||||
.reply(200, {
|
||||
id: 2002,
|
||||
|
||||
@@ -15,12 +15,11 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import nock from 'nock';
|
||||
import { BaseMock } from '../base.mock';
|
||||
|
||||
export class ProfileMock extends BaseMock {
|
||||
get200getProfile(): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.get('/activiti-app/api/enterprise/profile')
|
||||
.reply(200, {
|
||||
id: 1,
|
||||
@@ -94,10 +93,10 @@ export class ProfileMock extends BaseMock {
|
||||
}
|
||||
|
||||
get401getProfile(): void {
|
||||
nock(this.host, { encodedQueryParams: true }).get('/activiti-app/api/enterprise/profile').reply(401);
|
||||
this.mock().get('/activiti-app/api/enterprise/profile').reply(401);
|
||||
}
|
||||
|
||||
get200getProfilePicture(): void {
|
||||
nock(this.host, { encodedQueryParams: true }).get('/activiti-app/api/enterprise/profile-picture').reply(200, 'BUFFERSIZE');
|
||||
this.mock().get('/activiti-app/api/enterprise/profile-picture').reply(200, 'BUFFERSIZE');
|
||||
}
|
||||
}
|
||||
|
||||
@@ -15,7 +15,8 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import nock from 'nock';
|
||||
// cspell:ignore collapseable
|
||||
|
||||
import { BaseMock } from '../base.mock';
|
||||
|
||||
const fakeReportList = [
|
||||
@@ -154,58 +155,56 @@ const fakeProcessDefinitionsNoApp: any[] = [
|
||||
|
||||
export class ReportsMock extends BaseMock {
|
||||
get200ResponseCreateDefaultReport(): void {
|
||||
nock(this.host, { encodedQueryParams: true }).post('/activiti-app/app/rest/reporting/default-reports').reply(200);
|
||||
this.mock().post('/activiti-app/app/rest/reporting/default-reports').reply(200);
|
||||
}
|
||||
|
||||
get200ResponseTasksByProcessDefinitionId(reportId: string, processDefinitionId: string): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.get('/activiti-app/app/rest/reporting/report-params/' + reportId + '/tasks')
|
||||
.query({ processDefinitionId })
|
||||
.reply(200, ['Fake Task 1', 'Fake Task 2', 'Fake Task 3']);
|
||||
}
|
||||
|
||||
get200ResponseReportList(): void {
|
||||
nock(this.host, { encodedQueryParams: true }).get('/activiti-app/app/rest/reporting/reports').reply(200, fakeReportList);
|
||||
this.mock().get('/activiti-app/app/rest/reporting/reports').reply(200, fakeReportList);
|
||||
}
|
||||
|
||||
get200ResponseReportParams(reportId: string): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.get('/activiti-app/app/rest/reporting/report-params/' + reportId)
|
||||
.reply(200, fakeReportParams);
|
||||
}
|
||||
|
||||
get200ResponseReportsByParams(reportId: string, paramsQuery: { status: string }): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.post('/activiti-app/app/rest/reporting/report-params/' + reportId, paramsQuery)
|
||||
.reply(200, fakeChartReports);
|
||||
}
|
||||
|
||||
get200ResponseProcessDefinitions(): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
.get('/activiti-app/app/rest/reporting/process-definitions')
|
||||
.reply(200, fakeProcessDefinitionsNoApp);
|
||||
this.mock().get('/activiti-app/app/rest/reporting/process-definitions').reply(200, fakeProcessDefinitionsNoApp);
|
||||
}
|
||||
|
||||
get200ResponseUpdateReport(reportId: string): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.put('/activiti-app/app/rest/reporting/reports/' + reportId)
|
||||
.reply(200);
|
||||
}
|
||||
|
||||
get200ResponseExportReport(reportId: string): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.post('/activiti-app/app/rest/reporting/reports/' + reportId + '/export-to-csv')
|
||||
.reply(200, 'CSV');
|
||||
}
|
||||
|
||||
get200ResponseSaveReport(reportId: string): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.post('/activiti-app/app/rest/reporting/reports/' + reportId)
|
||||
.reply(200);
|
||||
}
|
||||
|
||||
get200ResponseDeleteReport(reportId: string): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.delete('/activiti-app/app/rest/reporting/reports/' + reportId)
|
||||
.reply(200);
|
||||
}
|
||||
|
||||
@@ -15,42 +15,14 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import nock from 'nock';
|
||||
import { BaseMock } from '../base.mock';
|
||||
|
||||
export class TaskFormMock extends BaseMock {
|
||||
get200getTaskFormVariables(): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.get('/activiti-app/api/enterprise/task-forms/5028/variables')
|
||||
.reply(
|
||||
200,
|
||||
[{ id: 'initiator', type: 'string', value: '1001' }],
|
||||
[
|
||||
'Server',
|
||||
'Apache-Coyote/1.1',
|
||||
'set-cookie',
|
||||
'ACTIVITI_REMEMBER_ME=NjdOdGwvcUtFTkVEczQyMGh4WFp5QT09OmpUL1UwdFVBTC94QTJMTFFUVFgvdFE9PQ',
|
||||
'X-Content-Type-Options',
|
||||
'nosniff',
|
||||
'X-XSS-Protection',
|
||||
'1; mode=block',
|
||||
'Cache-Control',
|
||||
'no-cache, no-store, max-age=0, must-revalidate',
|
||||
'Pragma',
|
||||
'no-cache',
|
||||
'Expires',
|
||||
'0',
|
||||
'X-Frame-Options',
|
||||
'SAMEORIGIN',
|
||||
'Content-Type',
|
||||
'application/json',
|
||||
'Transfer-Encoding',
|
||||
'chunked',
|
||||
'Date',
|
||||
'Tue, 01 Nov 2016 19:43:36 GMT',
|
||||
'Connection',
|
||||
'close'
|
||||
]
|
||||
);
|
||||
.reply(200, [{ id: 'initiator', type: 'string', value: '1001' }], {
|
||||
'set-cookie': 'ACTIVITI_REMEMBER_ME=NjdOdGwvcUtFTkVEczQyMGh4WFp5QT09OmpUL1UwdFVBTC94QTJMTFFUVFgvdFE9PQ'
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
@@ -15,7 +15,6 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import nock from 'nock';
|
||||
import { BaseMock } from '../base.mock';
|
||||
|
||||
const formValues = [
|
||||
@@ -42,7 +41,7 @@ const formValues = [
|
||||
|
||||
export class TasksMock extends BaseMock {
|
||||
get200Response(): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.post('/activiti-app/api/enterprise/tasks/query', {})
|
||||
.reply(200, {
|
||||
size: 2,
|
||||
@@ -128,7 +127,7 @@ export class TasksMock extends BaseMock {
|
||||
}
|
||||
|
||||
get200ResponseGetTask(taskId: string): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.get('/activiti-app/api/enterprise/tasks/' + taskId)
|
||||
.reply(200, {
|
||||
id: '10',
|
||||
@@ -166,14 +165,14 @@ export class TasksMock extends BaseMock {
|
||||
}
|
||||
|
||||
get400TaskFilter(): void {
|
||||
nock(this.host, { encodedQueryParams: true }).post('/activiti-app/api/enterprise/tasks/filter', {}).reply(400, {
|
||||
this.mock().post('/activiti-app/api/enterprise/tasks/filter', {}).reply(400, {
|
||||
message: 'A valid filterId or filter params must be provided',
|
||||
messageKey: 'GENERAL.ERROR.BAD-REQUEST'
|
||||
});
|
||||
}
|
||||
|
||||
get200TaskFilter(): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.post('/activiti-app/api/enterprise/tasks/filter', { appDefinitionId: 1 })
|
||||
.reply(200, {
|
||||
size: 2,
|
||||
@@ -249,7 +248,7 @@ export class TasksMock extends BaseMock {
|
||||
}
|
||||
|
||||
get404CompleteTask(taskId: string): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.put('/activiti-app/api/enterprise/tasks/' + taskId + '/action/complete')
|
||||
.reply(404, {
|
||||
message: 'Task with id: ' + taskId + ' does not exist',
|
||||
@@ -258,7 +257,7 @@ export class TasksMock extends BaseMock {
|
||||
}
|
||||
|
||||
get200CreateTask(name: string): void {
|
||||
nock(this.host, { encodedQueryParams: true }).post('/activiti-app/api/enterprise/tasks', { name }).reply(200, {
|
||||
this.mock().post('/activiti-app/api/enterprise/tasks', { name }).reply(200, {
|
||||
id: '10001',
|
||||
name: 'test-name',
|
||||
description: null,
|
||||
@@ -293,7 +292,7 @@ export class TasksMock extends BaseMock {
|
||||
}
|
||||
|
||||
get200getTaskForm(): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.get('/activiti-app/api/enterprise/task-forms/2518')
|
||||
.reply(200, {
|
||||
id: 1,
|
||||
@@ -1033,10 +1032,10 @@ export class TasksMock extends BaseMock {
|
||||
}
|
||||
|
||||
get200getRestFieldValuesColumn(): void {
|
||||
nock(this.host, { encodedQueryParams: true }).get('/activiti-app/api/enterprise/task-forms/1/form-values/label/user').reply(200, formValues);
|
||||
this.mock().get('/activiti-app/api/enterprise/task-forms/1/form-values/label/user').reply(200, formValues);
|
||||
}
|
||||
|
||||
get200getRestFieldValues(): void {
|
||||
nock(this.host, { encodedQueryParams: true }).get('/activiti-app/api/enterprise/task-forms/2/form-values/label').reply(200, formValues);
|
||||
this.mock().get('/activiti-app/api/enterprise/task-forms/2/form-values/label').reply(200, formValues);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -15,12 +15,11 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import nock from 'nock';
|
||||
import { BaseMock } from '../base.mock';
|
||||
|
||||
export class UserFiltersMock extends BaseMock {
|
||||
get200getUserTaskFilters(): void {
|
||||
nock(this.host, { encodedQueryParams: true })
|
||||
this.mock()
|
||||
.get('/activiti-app/api/enterprise/filters/tasks')
|
||||
.query({ appId: '1' })
|
||||
.reply(200, {
|
||||
|
||||
@@ -19,6 +19,7 @@ import assert from 'assert';
|
||||
import { AlfrescoApi, ContentApi, Oauth2Auth } from '../src';
|
||||
import { EcmAuthMock, OAuthMock } from './mockObjects';
|
||||
import { jest } from '@jest/globals';
|
||||
import * as browserUtils from '../src/utils/is-browser';
|
||||
|
||||
describe('Oauth2 test', () => {
|
||||
let alfrescoJsApi: AlfrescoApi;
|
||||
@@ -65,7 +66,7 @@ describe('Oauth2 test', () => {
|
||||
|
||||
afterEach(() => {
|
||||
authResponseMock.cleanAll();
|
||||
jest.clearAllMocks();
|
||||
jest.restoreAllMocks();
|
||||
});
|
||||
|
||||
describe('Discovery urls', () => {
|
||||
@@ -189,7 +190,7 @@ describe('Oauth2 test', () => {
|
||||
});
|
||||
|
||||
it('should refresh token when the login not use the implicitFlow ', (done) => {
|
||||
jest.spyOn(window, 'document', 'get').mockReturnValueOnce(undefined);
|
||||
jest.spyOn(browserUtils, 'isBrowser').mockReturnValue(false);
|
||||
oauth2Mock.get200Response();
|
||||
|
||||
const oauth2Auth = new Oauth2Auth(
|
||||
@@ -224,7 +225,7 @@ describe('Oauth2 test', () => {
|
||||
});
|
||||
|
||||
it('should not hang the app also if the logout is missing', (done) => {
|
||||
jest.spyOn(window, 'document', 'get').mockReturnValueOnce(undefined);
|
||||
jest.spyOn(browserUtils, 'isBrowser').mockReturnValue(false);
|
||||
oauth2Mock.get200Response();
|
||||
|
||||
const oauth2Auth = new Oauth2Auth(
|
||||
|
||||
@@ -23,29 +23,35 @@ describe('Oauth2 Implicit flow test', () => {
|
||||
let alfrescoJsApi: AlfrescoApi;
|
||||
|
||||
beforeEach(() => {
|
||||
const mockLocation: any = {
|
||||
ancestorOrigins: null,
|
||||
hash: '',
|
||||
host: 'dummy.com',
|
||||
port: '80',
|
||||
protocol: 'http:',
|
||||
hostname: 'dummy.com',
|
||||
href: 'http://localhost/',
|
||||
origin: 'dummy.com',
|
||||
pathname: null,
|
||||
search: null,
|
||||
assign: (url: string) => {
|
||||
mockLocation.href = url;
|
||||
},
|
||||
reload: null,
|
||||
replace: null
|
||||
};
|
||||
|
||||
(globalThis as any).window = { location: mockLocation, addEventListener: () => {}, removeEventListener: () => {} };
|
||||
(globalThis as any).document = { getElementById: () => null, cookie: '' };
|
||||
|
||||
alfrescoJsApi = new AlfrescoApi({
|
||||
hostEcm: ''
|
||||
});
|
||||
Object.defineProperty(window, 'location', {
|
||||
writable: true,
|
||||
value: {
|
||||
ancestorOrigins: null,
|
||||
hash: '',
|
||||
host: 'dummy.com',
|
||||
port: '80',
|
||||
protocol: 'http:',
|
||||
hostname: 'dummy.com',
|
||||
href: 'http://localhost/',
|
||||
origin: 'dummy.com',
|
||||
pathname: null,
|
||||
search: null,
|
||||
assign: (url: string) => {
|
||||
window.location.href = url;
|
||||
},
|
||||
reload: null,
|
||||
replace: null
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
afterEach(() => {
|
||||
delete (globalThis as any).window;
|
||||
delete (globalThis as any).document;
|
||||
});
|
||||
|
||||
it('should throw an error if redirectUri is not present', (done) => {
|
||||
|
||||
@@ -1,90 +0,0 @@
|
||||
/*!
|
||||
* @license
|
||||
* Copyright © 2005-2025 Hyland Software, Inc. and 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.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License 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.
|
||||
*/
|
||||
|
||||
import assert from 'assert';
|
||||
import { SuperagentHttpClient } from '../src/superagentHttpClient';
|
||||
import { Response } from 'superagent';
|
||||
|
||||
describe('SuperagentHttpClient', () => {
|
||||
describe('#buildRequest', () => {
|
||||
const client = new SuperagentHttpClient();
|
||||
|
||||
it('should create a request with response type blob', () => {
|
||||
const queryParams = {};
|
||||
const headerParams = {};
|
||||
const formParams = {};
|
||||
|
||||
const contentTypes = 'application/json';
|
||||
const accepts = 'application/json';
|
||||
const responseType = 'blob';
|
||||
const url = '/fake-api/enterprise/process-instances/';
|
||||
const httpMethod = 'GET';
|
||||
const securityOptions = {
|
||||
isBpmRequest: false,
|
||||
enableCsrf: false,
|
||||
withCredentials: false,
|
||||
authentications: {
|
||||
basicAuth: {
|
||||
ticket: ''
|
||||
},
|
||||
type: 'basic'
|
||||
},
|
||||
defaultHeaders: {}
|
||||
};
|
||||
|
||||
const response: any = client['buildRequest'](
|
||||
httpMethod,
|
||||
url,
|
||||
queryParams,
|
||||
headerParams,
|
||||
formParams,
|
||||
null,
|
||||
contentTypes,
|
||||
accepts,
|
||||
responseType,
|
||||
null,
|
||||
null,
|
||||
securityOptions
|
||||
);
|
||||
|
||||
assert.equal(response.url, '/fake-api/enterprise/process-instances/');
|
||||
assert.equal(response.header.Accept, 'application/json');
|
||||
assert.equal(response.header['Content-Type'], 'application/json');
|
||||
assert.equal(response._responseType, 'blob');
|
||||
});
|
||||
});
|
||||
|
||||
describe('#deserialize', () => {
|
||||
it('should the deserializer return an array of object when the response is an array', () => {
|
||||
const data = {
|
||||
body: [
|
||||
{
|
||||
id: '1',
|
||||
name: 'test1'
|
||||
},
|
||||
{
|
||||
id: '2',
|
||||
name: 'test2'
|
||||
}
|
||||
]
|
||||
} as Response;
|
||||
const result = SuperagentHttpClient['deserialize'](data);
|
||||
const isArray = Array.isArray(result);
|
||||
assert.equal(isArray, true);
|
||||
});
|
||||
});
|
||||
});
|
||||
@@ -129,13 +129,17 @@ describe('Upload', () => {
|
||||
});
|
||||
});
|
||||
|
||||
it('Upload should fire progress event during the upload', (done) => {
|
||||
// Upload progress events are emitted via the XHR path in FetchHttpClient.
|
||||
// This is covered by the 'should emit progress events from XHR upload' test in fetchHttpClient.spec.ts.
|
||||
// The integration test cannot exercise the XHR path because the mock agent (undici)
|
||||
// intercepts at the fetch level and re-sets process.__test_fetch__ via getGlobalMockAgent().
|
||||
it('Upload should fire success event on completion', (done) => {
|
||||
uploadMock.get201CreationFile();
|
||||
|
||||
const file = createTestFileStream('testFile.txt');
|
||||
const uploadPromise: any = uploadApi.uploadFile(file);
|
||||
|
||||
uploadPromise.once('progress', () => done());
|
||||
uploadPromise.once('success', () => done());
|
||||
});
|
||||
|
||||
it('Multiple Upload should fire progress events on the right promise during the upload', (done) => {
|
||||
|
||||
Reference in New Issue
Block a user