Testing file
unknown
typescript
4 years ago
5.0 kB
3
Indexable
import supertest from 'supertest' import { App } from '@scnode_app/app' // @import test_helpers import { getGlobalAuth } from '@scnode_tests/helpers/auth/authHelpers' // @end import { AcademicResourceConfigCategory, AcademicResourceConfig, AcademicResourceCategory, AcademicResource, Structure, StructureCategory, User, } from '@scnode_app/models' import { demoStructure, demoStructureCategory, } from '@scnode_tests/helpers/mocks/global/alliance/structure/structureMock' import { demoAcademicResourceCategory, demoAcademicResourceConfigCategory, demoAcademicResource, demoAcademicResourceConfig, } from '@scnode_tests/helpers/mocks/lms/academicContent/academicResource/academicResourceMock' import { demoUser } from '@scnode_tests/helpers/mocks/global/user/userMock' import { generalUtility } from '@scnode_core/utilities/generalUtility' const app = new App('test').app const api = supertest(app) jest.setTimeout(10000) describe('Academicgroup Test Suite', () => { /*=============================================== = Estructura de un test = ================================================ // La estructura de un test debe ser la siguiente: test('ModuleName: /route - description of what is expected', async () => {}) /*====== End of Estructura de un test =====*/ test('academicGroup: / - success', async () => { const { token, alliance } = await getGlobalAuth({ system: 'lms' }) await api .get(`/api/academic-group-info/${alliance.id}/`) .set('authorization', token) .expect(200) .expect((res) => { expect(res.body.academicGroupResources).toBeDefined() expect(res.body.total_register).toBeDefined() expect(res.body.pageNumber).toBeDefined() expect(res.body.nPerPage).toBeDefined() }) }) /*=============================================== = Estructura de un test = ================================================ // La estructura de un test debe ser la siguiente: test('ModuleName: /route - description of what is expected', async () => {}) /*====== End of Estructura de un test =====*/ let structureId: string | null = null test('academicGroup: / - success', async () => { const { token, alliance } = await getGlobalAuth({ system: 'lms' }) const preObjects = await preCreate(alliance.id) structureId = preObjects.structure._id await api .get(`/api/academic-group-info/${structureId}/`) .set('authorization', token) .expect(200) .expect((res) => { expect(res.body.academicGroupResources).toBeDefined() expect(res.body.total_register).toBeDefined() expect(res.body.pageNumber).toBeDefined() expect(res.body.nPerPage).toBeDefined() }) }) const randomChain = generalUtility.buildRandomChain({ characters: 16, numbers: 1, symbols: 0, uppercase: 0, lowercase: 1, }) test('academicGroup: / - structure not found', async () => { const { token } = await getGlobalAuth({ system: 'lms' }) await api .get(`/api/academic-group-info/${randomChain}/`) .set('authorization', token) .expect(400) }) test('AcademicGroupResource: /:id - fail request, alliance not found', async () => { const { token } = await getGlobalAuth({ system: 'lms' }) await api .get(`/api/academic-group-info/${randomChain}/`) .set('authorization', token) .expect(500) }) }) const preCreate = async (alliance_id: string) => { try { const academicResourceCategory = await AcademicResourceCategory.create(demoAcademicResourceCategory) const academicResourceConfigCategory = await AcademicResourceConfigCategory.create(demoAcademicResourceConfigCategory) demoAcademicResource.alliance_id = alliance_id demoAcademicResource.academic_resource_category = academicResourceCategory._id const academicResource = await AcademicResource.create(demoAcademicResource) demoAcademicResourceConfig.alliance_id = alliance_id demoAcademicResourceConfig.academic_resource = academicResource._id demoAcademicResourceConfig.source.config_category = academicResourceConfigCategory._id const academicResourceConfig = await AcademicResourceConfig.create(demoAcademicResourceConfig) demoStructureCategory.alliance_id = alliance_id const structureCategory = await StructureCategory.create(demoStructureCategory) demoStructure.alliance_id = alliance_id demoStructure.structure_category_id = structureCategory._id const structure = await Structure.create(demoStructure) demoUser.alliance_id = alliance_id const user = await User.create(demoUser) return { academicResourceCategory, academicResourceConfigCategory, academicResource, academicResourceConfig, structureCategory, structure, user, } } catch (e) { return null } }
Editor is loading...