feat: test bad body
This commit is contained in:
parent
66c682197d
commit
c6c1c10912
|
|
@ -15,7 +15,7 @@ import { OpenaiService } from '@gitroom/nestjs-libraries/openai/openai.service';
|
|||
import { CreateGeneratedPostsDto } from '@gitroom/nestjs-libraries/dtos/generator/create.generated.posts.dto';
|
||||
import { IntegrationService } from '@gitroom/nestjs-libraries/database/prisma/integrations/integration.service';
|
||||
import { makeId } from '@gitroom/nestjs-libraries/services/make.is';
|
||||
import { RefreshToken } from '@gitroom/nestjs-libraries/integrations/social.abstract';
|
||||
import { BadBody, RefreshToken } from '@gitroom/nestjs-libraries/integrations/social.abstract';
|
||||
import { BullMqClient } from '@gitroom/nestjs-libraries/bull-mq-transport-new/client';
|
||||
|
||||
type PostWithConditionals = Post & {
|
||||
|
|
@ -279,6 +279,10 @@ export class PostsService {
|
|||
return this.postSocial(integration, posts, true);
|
||||
}
|
||||
|
||||
if (err instanceof BadBody && process.env.EMAIL_FROM_ADDRESS === 'nevo@postiz.com') {
|
||||
await this._notificationService.sendEmail('nevo@positz.com', 'Bad body', JSON.stringify(err.body));
|
||||
}
|
||||
|
||||
throw err;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,11 +1,15 @@
|
|||
export class RefreshToken {}
|
||||
export class BadBody {
|
||||
constructor(public body: BodyInit) {
|
||||
}
|
||||
}
|
||||
|
||||
export class NotEnoughScopes {}
|
||||
|
||||
export abstract class SocialAbstract {
|
||||
async fetch(url: string, options: RequestInit = {}) {
|
||||
const request = await fetch(url, options);
|
||||
console.log(request.status);
|
||||
|
||||
if (request.status !== 200 && request.status !== 201) {
|
||||
try {
|
||||
console.log(await request.json());
|
||||
|
|
@ -14,15 +18,18 @@ export abstract class SocialAbstract {
|
|||
console.log('skip');
|
||||
}
|
||||
}
|
||||
if (request.status === 401 || request.status === 400) {
|
||||
if (request.status === 401) {
|
||||
throw new RefreshToken();
|
||||
}
|
||||
|
||||
if (request.status === 400) {
|
||||
throw new BadBody(options.body!);
|
||||
}
|
||||
|
||||
return request;
|
||||
}
|
||||
|
||||
checkScopes(required: string[], got: string | string[]) {
|
||||
console.log(required, got);
|
||||
if (Array.isArray(got)) {
|
||||
if (!required.every((scope) => got.includes(scope))) {
|
||||
throw new NotEnoughScopes();
|
||||
|
|
|
|||
Loading…
Reference in New Issue