32 lines
1.7 KiB
TypeScript
32 lines
1.7 KiB
TypeScript
import { LearningObjectExample } from '../learning-object-example';
|
|
import { LearningObject } from '../../../../src/entities/content/learning-object.entity';
|
|
import { Language } from '@dwengo-1/common/util/language';
|
|
import { loadTestAsset } from '../../../test-utils/load-test-asset';
|
|
import { DwengoContentType } from '../../../../src/services/learning-objects/processing/content-type';
|
|
import { envVars, getEnvVar } from '../../../../src/util/envVars';
|
|
|
|
/**
|
|
* Create a dummy learning object to be used in tests where multiple learning objects are needed (for example for use
|
|
* on a path), but where the precise contents of the learning object are not important.
|
|
*/
|
|
export function dummyLearningObject(hruid: string, language: Language, title: string): LearningObjectExample {
|
|
return {
|
|
createLearningObject: (): LearningObject => {
|
|
const learningObject = new LearningObject();
|
|
learningObject.hruid = getEnvVar(envVars.UserContentPrefix) + hruid;
|
|
learningObject.language = language;
|
|
learningObject.version = 1;
|
|
learningObject.title = title;
|
|
learningObject.description = 'Just a dummy learning object for testing purposes';
|
|
learningObject.contentType = DwengoContentType.TEXT_PLAIN;
|
|
learningObject.content = Buffer.from('Dummy content');
|
|
learningObject.returnValue = {
|
|
callbackUrl: `/learningObject/${hruid}/submissions`,
|
|
callbackSchema: '[]',
|
|
};
|
|
return learningObject;
|
|
},
|
|
createAttachment: {},
|
|
getHTMLRendering: () => loadTestAsset('learning-objects/dummy/rendering.txt').toString(),
|
|
};
|
|
}
|