31 lines
		
	
	
	
		
			1.4 KiB
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
			
		
		
	
	
			31 lines
		
	
	
	
		
			1.4 KiB
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
import { beforeAll, describe, expect, it } from 'vitest';
 | 
						|
import { setupTestApp } from '../../setup-tests.js';
 | 
						|
import { getAttachmentRepository, getLearningObjectRepository } from '../../../src/data/repositories.js';
 | 
						|
import { AttachmentRepository } from '../../../src/data/content/attachment-repository.js';
 | 
						|
import { LearningObjectRepository } from '../../../src/data/content/learning-object-repository.js';
 | 
						|
import { LearningObjectIdentifier } from '../../../src/entities/content/learning-object-identifier.js';
 | 
						|
import { Language } from '@dwengo-1/common/util/language';
 | 
						|
 | 
						|
describe('AttachmentRepository', () => {
 | 
						|
    let attachmentRepository: AttachmentRepository;
 | 
						|
    let learningObjectRepository: LearningObjectRepository;
 | 
						|
 | 
						|
    beforeAll(async () => {
 | 
						|
        await setupTestApp();
 | 
						|
        attachmentRepository = getAttachmentRepository();
 | 
						|
        learningObjectRepository = getLearningObjectRepository();
 | 
						|
    });
 | 
						|
 | 
						|
    it('should return the requested attachment', async () => {
 | 
						|
        const id = new LearningObjectIdentifier('id02', Language.English, 1);
 | 
						|
        const learningObject = await learningObjectRepository.findByIdentifier(id);
 | 
						|
 | 
						|
        const attachment = await attachmentRepository.findByMostRecentVersionOfLearningObjectAndName(
 | 
						|
            learningObject!.hruid,
 | 
						|
            Language.English,
 | 
						|
            'attachment01'
 | 
						|
        );
 | 
						|
 | 
						|
        expect(attachment).toBeTruthy();
 | 
						|
    });
 | 
						|
});
 |