mirror of
https://github.com/CommunitySolidServer/CommunitySolidServer.git
synced 2024-10-03 14:55:10 +00:00
fix: do not output filesystem container size
* fix: do not output filesystem container size * fix: only omit size metadata for containers Signed-off-by: Wouter Termont <woutermont@gmail.com>
This commit is contained in:
parent
30cebec32a
commit
1486f01aaf
@ -326,11 +326,13 @@ export class FileDataAccessor implements DataAccessor {
|
|||||||
*/
|
*/
|
||||||
private generatePosixQuads(subject: NamedNode, stats: Stats): Quad[] {
|
private generatePosixQuads(subject: NamedNode, stats: Stats): Quad[] {
|
||||||
const quads: Quad[] = [];
|
const quads: Quad[] = [];
|
||||||
pushQuad(quads, subject, POSIX.terms.size, toLiteral(stats.size, XSD.terms.integer));
|
|
||||||
pushQuad(quads, subject, DC.terms.modified, toLiteral(stats.mtime.toISOString(), XSD.terms.dateTime));
|
pushQuad(quads, subject, DC.terms.modified, toLiteral(stats.mtime.toISOString(), XSD.terms.dateTime));
|
||||||
pushQuad(quads, subject, POSIX.terms.mtime, toLiteral(
|
pushQuad(quads, subject, POSIX.terms.mtime, toLiteral(
|
||||||
Math.floor(stats.mtime.getTime() / 1000), XSD.terms.integer,
|
Math.floor(stats.mtime.getTime() / 1000), XSD.terms.integer,
|
||||||
));
|
));
|
||||||
|
if (!stats.isDirectory()) {
|
||||||
|
pushQuad(quads, subject, POSIX.terms.size, toLiteral(stats.size, XSD.terms.integer));
|
||||||
|
}
|
||||||
return quads;
|
return quads;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -104,6 +104,13 @@ describe('A FileDataAccessor', (): void => {
|
|||||||
expect(metadata.get(POSIX.mtime)).toEqualRdfTerm(toLiteral(Math.floor(now.getTime() / 1000), XSD.terms.integer));
|
expect(metadata.get(POSIX.mtime)).toEqualRdfTerm(toLiteral(Math.floor(now.getTime() / 1000), XSD.terms.integer));
|
||||||
});
|
});
|
||||||
|
|
||||||
|
it('does not generate size metadata for a container.', async(): Promise<void> => {
|
||||||
|
cache.data = { container: {}};
|
||||||
|
metadata = await accessor.getMetadata({ path: `${base}container/` });
|
||||||
|
expect(metadata.get(POSIX.size)).toBeUndefined();
|
||||||
|
expect(metadata.get(DC.modified)).toEqualRdfTerm(toLiteral(now.toISOString(), XSD.terms.dateTime));
|
||||||
|
});
|
||||||
|
|
||||||
it('generates the metadata for a container and its non-meta children.', async(): Promise<void> => {
|
it('generates the metadata for a container and its non-meta children.', async(): Promise<void> => {
|
||||||
cache.data = { container: { resource: 'data', 'resource.meta': 'metadata', notAFile: 5, container2: {}}};
|
cache.data = { container: { resource: 'data', 'resource.meta': 'metadata', notAFile: 5, container2: {}}};
|
||||||
metadata = await accessor.getMetadata({ path: `${base}container/` });
|
metadata = await accessor.getMetadata({ path: `${base}container/` });
|
||||||
@ -111,7 +118,7 @@ describe('A FileDataAccessor', (): void => {
|
|||||||
expect(metadata.getAll(RDF.type)).toEqualRdfTermArray(
|
expect(metadata.getAll(RDF.type)).toEqualRdfTermArray(
|
||||||
[ LDP.terms.Container, LDP.terms.BasicContainer, LDP.terms.Resource ],
|
[ LDP.terms.Container, LDP.terms.BasicContainer, LDP.terms.Resource ],
|
||||||
);
|
);
|
||||||
expect(metadata.get(POSIX.size)).toEqualRdfTerm(toLiteral(0, XSD.terms.integer));
|
expect(metadata.get(POSIX.size)).toBeUndefined();
|
||||||
expect(metadata.get(DC.modified)).toEqualRdfTerm(toLiteral(now.toISOString(), XSD.terms.dateTime));
|
expect(metadata.get(DC.modified)).toEqualRdfTerm(toLiteral(now.toISOString(), XSD.terms.dateTime));
|
||||||
expect(metadata.get(POSIX.mtime)).toEqualRdfTerm(toLiteral(Math.floor(now.getTime() / 1000), XSD.terms.integer));
|
expect(metadata.get(POSIX.mtime)).toEqualRdfTerm(toLiteral(Math.floor(now.getTime() / 1000), XSD.terms.integer));
|
||||||
expect(metadata.getAll(LDP.contains)).toEqualRdfTermArray(
|
expect(metadata.getAll(LDP.contains)).toEqualRdfTermArray(
|
||||||
|
Loading…
x
Reference in New Issue
Block a user