mirror of
https://github.com/CommunitySolidServer/CommunitySolidServer.git
synced 2024-10-03 14:55:10 +00:00
feat: Remove podTemplateFolder as a variable.
This is now possible due to TemplatedResourcesGenerator accepting path strings relative to the module root.
This commit is contained in:
@@ -34,12 +34,11 @@ describe.each(configs)('A dynamic pod server with template config %s', (template
|
||||
'urn:solid-server:default:variable:baseUrl': baseUrl,
|
||||
'urn:solid-server:default:variable:port': port,
|
||||
'urn:solid-server:default:variable:rootFilePath': rootFilePath,
|
||||
'urn:solid-server:default:variable:podTemplateFolder': joinFilePath(__dirname, '../assets/templates'),
|
||||
'urn:solid-server:default:variable:podConfigJson': podConfigJson,
|
||||
};
|
||||
|
||||
// Need to make sure the temp folder exists so the podConfigJson can be written to it
|
||||
mkdirSync(rootFilePath);
|
||||
mkdirSync(rootFilePath, { recursive: true });
|
||||
|
||||
// Create and initialize the HTTP handler and related components
|
||||
const instances = await instantiateFromConfig(
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
import type { Server } from 'http';
|
||||
import fetch from 'cross-fetch';
|
||||
import type { HttpServerFactory } from '../../src/server/HttpServerFactory';
|
||||
import { joinFilePath } from '../../src/util/PathUtil';
|
||||
import { readableToString } from '../../src/util/StreamUtil';
|
||||
import { instantiateFromConfig } from './Config';
|
||||
|
||||
@@ -17,7 +16,6 @@ describe('A server with a pod handler', (): void => {
|
||||
'urn:solid-server:default:ServerFactory', 'server-without-auth.json', {
|
||||
'urn:solid-server:default:variable:port': port,
|
||||
'urn:solid-server:default:variable:baseUrl': baseUrl,
|
||||
'urn:solid-server:default:variable:podTemplateFolder': joinFilePath(__dirname, '../assets/templates'),
|
||||
},
|
||||
) as HttpServerFactory;
|
||||
server = factory.startServer(port);
|
||||
|
||||
@@ -2,7 +2,6 @@ import type { Server } from 'http';
|
||||
import fetch from 'cross-fetch';
|
||||
import type { Initializer } from '../../src/init/Initializer';
|
||||
import type { HttpServerFactory } from '../../src/server/HttpServerFactory';
|
||||
import { joinFilePath } from '../../src/util/PathUtil';
|
||||
import { instantiateFromConfig } from './Config';
|
||||
|
||||
const port = 6004;
|
||||
@@ -19,7 +18,6 @@ describe('A Solid server', (): void => {
|
||||
'urn:solid-server:test:Instances', 'server-memory.json', {
|
||||
'urn:solid-server:default:variable:port': port,
|
||||
'urn:solid-server:default:variable:baseUrl': baseUrl,
|
||||
'urn:solid-server:default:variable:podTemplateFolder': joinFilePath(__dirname, '../assets/templates'),
|
||||
},
|
||||
) as Record<string, any>;
|
||||
({ factory, initializer } = instances);
|
||||
|
||||
@@ -3,7 +3,6 @@ import fetch from 'cross-fetch';
|
||||
import type { Initializer } from '../../src/init/Initializer';
|
||||
import type { HttpServerFactory } from '../../src/server/HttpServerFactory';
|
||||
import type { ResourceStore } from '../../src/storage/ResourceStore';
|
||||
import { joinFilePath } from '../../src/util/PathUtil';
|
||||
import { getTestFolder, instantiateFromConfig, removeFolder } from './Config';
|
||||
|
||||
const port = 6005;
|
||||
@@ -35,7 +34,6 @@ describe.each(stores)('A subdomain server with %s', (name, { storeUrn, teardown
|
||||
'urn:solid-server:default:variable:baseUrl': baseUrl,
|
||||
'urn:solid-server:default:variable:port': port,
|
||||
'urn:solid-server:default:variable:rootFilePath': rootFilePath,
|
||||
'urn:solid-server:default:variable:podTemplateFolder': joinFilePath(__dirname, '../assets/templates'),
|
||||
};
|
||||
const internalStore = await instantiateFromConfig(
|
||||
storeUrn,
|
||||
|
||||
@@ -16,7 +16,6 @@ describe('A server with the Solid WebSockets API behind a proxy', (): void => {
|
||||
'urn:solid-server:default:ServerFactory', 'server-without-auth.json', {
|
||||
'urn:solid-server:default:variable:port': port,
|
||||
'urn:solid-server:default:variable:baseUrl': 'https://example.pod/',
|
||||
'urn:solid-server:default:variable:podTemplateFolder': 'templates/pod',
|
||||
},
|
||||
) as HttpServerFactory;
|
||||
server = factory.startServer(port);
|
||||
|
||||
@@ -76,6 +76,10 @@
|
||||
"BaseUrlRouterRule:_baseStore": {
|
||||
"@id": "urn:solid-server:default:MemoryResourceStore"
|
||||
}
|
||||
},
|
||||
{
|
||||
"@id": "urn:solid-server:default:ResourcesGenerator",
|
||||
"TemplatedResourcesGenerator:_templateFolder": "$PACKAGE_ROOT/test/assets/templates"
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
@@ -79,6 +79,10 @@
|
||||
"@id": "urn:solid-server:default:variable:store"
|
||||
}
|
||||
},
|
||||
{
|
||||
"@id": "urn:solid-server:default:ResourcesGenerator",
|
||||
"TemplatedResourcesGenerator:_templateFolder": "$PACKAGE_ROOT/test/assets/templates"
|
||||
},
|
||||
{
|
||||
"@id": "urn:solid-server:default:variable:store",
|
||||
"@type": "Variable"
|
||||
|
||||
@@ -48,6 +48,10 @@
|
||||
"PassthroughStore:_source": {
|
||||
"@id": "urn:solid-server:default:MemoryResourceStore"
|
||||
}
|
||||
},
|
||||
{
|
||||
"@id": "urn:solid-server:default:ResourcesGenerator",
|
||||
"TemplatedResourcesGenerator:_templateFolder": "$PACKAGE_ROOT/test/assets/templates"
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
@@ -60,7 +60,6 @@ describe('CliRunner', (): void => {
|
||||
'urn:solid-server:default:variable:rootFilePath': '/var/cwd/',
|
||||
'urn:solid-server:default:variable:sparqlEndpoint': undefined,
|
||||
'urn:solid-server:default:variable:loggingLevel': 'info',
|
||||
'urn:solid-server:default:variable:podTemplateFolder': joinFilePath(__dirname, '../../../templates/pod'),
|
||||
'urn:solid-server:default:variable:podConfigJson': '/var/cwd/pod-config.json',
|
||||
},
|
||||
},
|
||||
@@ -80,7 +79,6 @@ describe('CliRunner', (): void => {
|
||||
'-m', 'module/path',
|
||||
'-p', '4000',
|
||||
'-s', 'http://localhost:5000/sparql',
|
||||
'-t', 'templates',
|
||||
'--podConfigJson', '/different-path.json',
|
||||
],
|
||||
});
|
||||
@@ -104,7 +102,6 @@ describe('CliRunner', (): void => {
|
||||
variables: {
|
||||
'urn:solid-server:default:variable:baseUrl': 'http://pod.example/',
|
||||
'urn:solid-server:default:variable:loggingLevel': 'debug',
|
||||
'urn:solid-server:default:variable:podTemplateFolder': '/var/cwd/templates',
|
||||
'urn:solid-server:default:variable:port': 4000,
|
||||
'urn:solid-server:default:variable:rootFilePath': '/root',
|
||||
'urn:solid-server:default:variable:sparqlEndpoint': 'http://localhost:5000/sparql',
|
||||
@@ -122,7 +119,6 @@ describe('CliRunner', (): void => {
|
||||
'--config', 'myconfig.json',
|
||||
'--loggingLevel', 'debug',
|
||||
'--mainModulePath', 'module/path',
|
||||
'--podTemplateFolder', 'templates',
|
||||
'--port', '4000',
|
||||
'--rootFilePath', 'root',
|
||||
'--sparqlEndpoint', 'http://localhost:5000/sparql',
|
||||
@@ -149,7 +145,6 @@ describe('CliRunner', (): void => {
|
||||
variables: {
|
||||
'urn:solid-server:default:variable:baseUrl': 'http://pod.example/',
|
||||
'urn:solid-server:default:variable:loggingLevel': 'debug',
|
||||
'urn:solid-server:default:variable:podTemplateFolder': '/var/cwd/templates',
|
||||
'urn:solid-server:default:variable:port': 4000,
|
||||
'urn:solid-server:default:variable:rootFilePath': '/var/cwd/root',
|
||||
'urn:solid-server:default:variable:sparqlEndpoint': 'http://localhost:5000/sparql',
|
||||
@@ -170,7 +165,6 @@ describe('CliRunner', (): void => {
|
||||
'-m', 'module/path',
|
||||
'-p', '4000',
|
||||
'-s', 'http://localhost:5000/sparql',
|
||||
'-t', 'templates',
|
||||
'--podConfigJson', '/different-path.json',
|
||||
];
|
||||
|
||||
@@ -195,7 +189,6 @@ describe('CliRunner', (): void => {
|
||||
variables: {
|
||||
'urn:solid-server:default:variable:baseUrl': 'http://pod.example/',
|
||||
'urn:solid-server:default:variable:loggingLevel': 'debug',
|
||||
'urn:solid-server:default:variable:podTemplateFolder': '/var/cwd/templates',
|
||||
'urn:solid-server:default:variable:port': 4000,
|
||||
'urn:solid-server:default:variable:rootFilePath': '/root',
|
||||
'urn:solid-server:default:variable:sparqlEndpoint': 'http://localhost:5000/sparql',
|
||||
|
||||
@@ -38,7 +38,7 @@ async function genToArray<T>(iterable: AsyncIterable<T>): Promise<T[]> {
|
||||
}
|
||||
|
||||
describe('A TemplatedResourcesGenerator', (): void => {
|
||||
const rootFilePath = 'templates/pod';
|
||||
const rootFilePath = '/templates/pod';
|
||||
// Using handlebars engine since it's smaller than any possible dummy
|
||||
const generator = new TemplatedResourcesGenerator(rootFilePath, new DummyFactory(), new HandlebarsTemplateEngine());
|
||||
let cache: { data: any };
|
||||
|
||||
Reference in New Issue
Block a user