2022-03-10 16:26:24 +01:00
|
|
|
/* eslint-disable import/no-extraneous-dependencies */
|
2022-03-08 18:30:34 +01:00
|
|
|
import path from 'path';
|
|
|
|
import fs from 'fs';
|
|
|
|
import { test } from '@jest/globals';
|
2022-03-10 16:26:24 +01:00
|
|
|
import { exporterAssert } from './Helper';
|
2022-03-08 18:30:34 +01:00
|
|
|
import { parseXMLFile } from '../export/Helper';
|
|
|
|
import FreemindMap from '../../../src/components/export/freemind/Map';
|
|
|
|
import TextImporterFactory from '../../../src/components/import/TextImporterFactory';
|
|
|
|
|
|
|
|
const testNames = fs
|
|
|
|
.readdirSync(path.resolve(__dirname, './input/'))
|
|
|
|
.map((filename: string) => filename.split('.')[0]);
|
|
|
|
|
2022-03-10 16:26:24 +01:00
|
|
|
describe('MM import test execution', () => {
|
2022-03-08 18:30:34 +01:00
|
|
|
test.each(testNames)('Importing %p suite', async (testName: string) => {
|
|
|
|
// load freemap...
|
|
|
|
const freemapPath = path.resolve(__dirname, `./input/${testName}.mm`);
|
|
|
|
const mapDocument = parseXMLFile(freemapPath, 'text/xml');
|
|
|
|
|
|
|
|
const freemap: FreemindMap = new FreemindMap().loadFromDom(mapDocument);
|
|
|
|
|
|
|
|
const importer = TextImporterFactory.create('mm', freemap);
|
|
|
|
|
2022-03-10 16:26:24 +01:00
|
|
|
await exporterAssert(testName, importer);
|
2022-03-08 18:30:34 +01:00
|
|
|
});
|
|
|
|
});
|