Skip to content

Fix broken surface tests #52

Description

@Potherca

Currently all WAC surface tests seem to be broken:

Test Suites: 9 failed, 9 total
Tests: 83 failed, 83 total
Snapshots: 0 total
Time: 13.825 s
Ran all test suites.

Before a new release is tagged, this needs to be resolved.

In the logs, the following error occurs 83 times (so basically for every test):

Please make sure the cookie is valid, and add "https://tester" as a trusted app!

The following occurs 94 times:

 TypeError: Cannot read property 'fetch' of undefined

Where undefined is usually solidLogicAlice.

@michielbdejong Do you happen to know of the top of your head what would cause this? (Or how to resolve this?)

Full logs
  • test/surface/update.test.ts

    Details
     ● Console
    console.warn
    Adding slash to the end of ALICE's storage root ->"https://server/storage"+"/"
    25 | let storageRoot = getEnvVars(who).storageRoot;
    26 | if (storageRoot.substr(-1) !== '/') {
    > 27 | console.warn(`Adding slash to the end of ${who}'s storage root ->"${storageRoot}"+"/"`);
    | ^
    28 | storageRoot += '/';
    29 | }
    30 | const testFolder = `web-access-control-tests-${new Date().getTime()}`;
    at Object.generateTestFolder (test/helpers/env.ts:27:13)
    at Suite.<anonymous> (test/surface/update.test.ts:46:29)
    at Object.<anonymous> (test/surface/update.test.ts:38:1)
    ● Update › Using PUT to append › Is allowed with accessTo Write access on resource
    Please make sure the cookie is valid, and add "https://tester" as a trusted app!
    at Object.getAuthFetcher (node_modules/solid-auth-fetcher/src/obtainAuthHeaders.ts:51:13)
    ● Update › Using PUT to append › Is allowed with accessTo Write access on resource
    TypeError: Cannot read property 'fetch' of undefined
    59 | const resourceUrl = `${testFolderUrl}1/test.txt`;
    60 | // This will do mkdir-p:
    > 61 | const creationResult = await solidLogicAlice.fetch(resourceUrl, {
    | ^
    62 | method: 'PUT',
    63 | body: 'hello',
    64 | headers: {
    at test/surface/update.test.ts:61:53
    at step (test/surface/update.test.ts:33:23)
    at Object.next (test/surface/update.test.ts:14:53)
    at test/surface/update.test.ts:8:71
    at Object.<anonymous>.__awaiter (test/surface/update.test.ts:4:12)
    at Object.<anonymous> (test/surface/update.test.ts:58:61)
    ● Update › Using PUT to append › Is allowed with accessTo Write access on resource
    TypeError: Cannot read property 'recursiveDelete' of undefined
    52 | 53 | afterEach(() => {
    > 54 | return solidLogicAlice.recursiveDelete(testFolderUrl);
    | ^
    55 | });
    56 | 57 | describe('Using PUT to append', () => {
    at Object.<anonymous> (test/surface/update.test.ts:54:28)
    ● Update › Using PUT to append › Is disallowed with accessTo Read+Append+Control access on resource
    Please make sure the cookie is valid, and add "https://tester" as a trusted app!
    at Object.getAuthFetcher (node_modules/solid-auth-fetcher/src/obtainAuthHeaders.ts:51:13)
    ● Update › Using PUT to append › Is disallowed with accessTo Read+Append+Control access on resource
    TypeError: Cannot read property 'fetch' of undefined
    94 | const resourceUrl = `${testFolderUrl}2/test.txt`;
    95 | // This will do mkdir-p:
    > 96 | const creationResult = await solidLogicAlice.fetch(resourceUrl, {
    | ^
    97 | method: 'PUT',
    98 | body: 'hello',
    99 | headers: {
    at test/surface/update.test.ts:96:53
    at step (test/surface/update.test.ts:33:23)
    at Object.next (test/surface/update.test.ts:14:53)
    at test/surface/update.test.ts:8:71
    at Object.<anonymous>.__awaiter (test/surface/update.test.ts:4:12)
    at Object.<anonymous> (test/surface/update.test.ts:93:78)
    ● Update › Using PUT to append › Is disallowed with accessTo Read+Append+Control access on resource
    TypeError: Cannot read property 'recursiveDelete' of undefined
    52 | 53 | afterEach(() => {
    > 54 | return solidLogicAlice.recursiveDelete(testFolderUrl);
    | ^
    55 | });
    56 | 57 | describe('Using PUT to append', () => {
    at Object.<anonymous> (test/surface/update.test.ts:54:28)
    ● Update › Using PUT to append › Is allowed with default Write access on parent
    Please make sure the cookie is valid, and add "https://tester" as a trusted app!
    at Object.getAuthFetcher (node_modules/solid-auth-fetcher/src/obtainAuthHeaders.ts:51:13)
    ● Update › Using PUT to append › Is allowed with default Write access on parent
    TypeError: Cannot read property 'fetch' of undefined
    130 | const resourceUrl = `${containerUrl}test.txt`;
    131 | // This will do mkdir-p:
    > 132 | const creationResult = await solidLogicAlice.fetch(resourceUrl, {
    | ^
    133 | method: 'PUT',
    134 | body: 'hello',
    135 | headers: {
    at test/surface/update.test.ts:132:53
    at step (test/surface/update.test.ts:33:23)
    at Object.next (test/surface/update.test.ts:14:53)
    at test/surface/update.test.ts:8:71
    at Object.<anonymous>.__awaiter (test/surface/update.test.ts:4:12)
    at Object.<anonymous> (test/surface/update.test.ts:128:58)
    ● Update › Using PUT to append › Is allowed with default Write access on parent
    TypeError: Cannot read property 'recursiveDelete' of undefined
    52 | 53 | afterEach(() => {
    > 54 | return solidLogicAlice.recursiveDelete(testFolderUrl);
    | ^
    55 | });
    56 | 57 | describe('Using PUT to append', () => {
    at Object.<anonymous> (test/surface/update.test.ts:54:28)
    ● Update › Using PUT to append › Is disallowed with default Read+Append+Control access on parent
    Please make sure the cookie is valid, and add "https://tester" as a trusted app!
    at Object.getAuthFetcher (node_modules/solid-auth-fetcher/src/obtainAuthHeaders.ts:51:13)
    ● Update › Using PUT to append › Is disallowed with default Read+Append+Control access on parent
    TypeError: Cannot read property 'fetch' of undefined
    166 | const resourceUrl = `${containerUrl}test.txt`;
    167 | // This will do mkdir-p:
    > 168 | const creationResult = await solidLogicAlice.fetch(resourceUrl, {
    | ^
    169 | method: 'PUT',
    170 | body: 'hello',
    171 | headers: {
    at test/surface/update.test.ts:168:53
    at step (test/surface/update.test.ts:33:23)
    at Object.next (test/surface/update.test.ts:14:53)
    at test/surface/update.test.ts:8:71
    at Object.<anonymous>.__awaiter (test/surface/update.test.ts:4:12)
    at Object.<anonymous> (test/surface/update.test.ts:164:75)
    ● Update › Using PUT to append › Is disallowed with default Read+Append+Control access on parent
    TypeError: Cannot read property 'recursiveDelete' of undefined
    52 | 53 | afterEach(() => {
    > 54 | return solidLogicAlice.recursiveDelete(testFolderUrl);
    | ^
    55 | });
    56 | 57 | describe('Using PUT to append', () => {
    at Object.<anonymous> (test/surface/update.test.ts:54:28)
    ● Update › Using PUT to overwrite › Is allowed with accessTo Write access on resource
    Please make sure the cookie is valid, and add "https://tester" as a trusted app!
    at Object.getAuthFetcher (node_modules/solid-auth-fetcher/src/obtainAuthHeaders.ts:51:13)
    ● Update › Using PUT to overwrite › Is allowed with accessTo Write access on resource
    TypeError: Cannot read property 'fetch' of undefined
    204 | const resourceUrl = `${testFolderUrl}5/test.txt`;
    205 | // This will do mkdir-p:
    > 206 | const creationResult = await solidLogicAlice.fetch(resourceUrl, {
    | ^
    207 | method: 'PUT',
    208 | body: 'hello',
    209 | headers: {
    at test/surface/update.test.ts:206:53
    at step (test/surface/update.test.ts:33:23)
    at Object.next (test/surface/update.test.ts:14:53)
    at test/surface/update.test.ts:8:71
    at Object.<anonymous>.__awaiter (test/surface/update.test.ts:4:12)
    at Object.<anonymous> (test/surface/update.test.ts:203:61)
    ● Update › Using PUT to overwrite › Is allowed with accessTo Write access on resource
    TypeError: Cannot read property 'recursiveDelete' of undefined
    52 | 53 | afterEach(() => {
    > 54 | return solidLogicAlice.recursiveDelete(testFolderUrl);
    | ^
    55 | });
    56 | 57 | describe('Using PUT to append', () => {
    at Object.<anonymous> (test/surface/update.test.ts:54:28)
    ● Update › Using PUT to overwrite › Is disallowed with accessTo Read+Append+Control access on resource
    Please make sure the cookie is valid, and add "https://tester" as a trusted app!
    at Object.getAuthFetcher (node_modules/solid-auth-fetcher/src/obtainAuthHeaders.ts:51:13)
    ● Update › Using PUT to overwrite › Is disallowed with accessTo Read+Append+Control access on resource
    TypeError: Cannot read property 'fetch' of undefined
    239 | const resourceUrl = `${testFolderUrl}6/test.txt`;
    240 | // This will do mkdir-p:
    > 241 | const creationResult = await solidLogicAlice.fetch(resourceUrl, {
    | ^
    242 | method: 'PUT',
    243 | body: 'hello',
    244 | headers: {
    at test/surface/update.test.ts:241:53
    at step (test/surface/update.test.ts:33:23)
    at Object.next (test/surface/update.test.ts:14:53)
    at test/surface/update.test.ts:8:71
    at Object.<anonymous>.__awaiter (test/surface/update.test.ts:4:12)
    at Object.<anonymous> (test/surface/update.test.ts:238:78)
    ● Update › Using PUT to overwrite › Is disallowed with accessTo Read+Append+Control access on resource
    TypeError: Cannot read property 'recursiveDelete' of undefined
    52 | 53 | afterEach(() => {
    > 54 | return solidLogicAlice.recursiveDelete(testFolderUrl);
    | ^
    55 | });
    56 | 57 | describe('Using PUT to append', () => {
    at Object.<anonymous> (test/surface/update.test.ts:54:28)
    ● Update › Using PUT to overwrite › Is allowed with default Write access on parent
    Please make sure the cookie is valid, and add "https://tester" as a trusted app!
    at Object.getAuthFetcher (node_modules/solid-auth-fetcher/src/obtainAuthHeaders.ts:51:13)
    ● Update › Using PUT to overwrite › Is allowed with default Write access on parent
    TypeError: Cannot read property 'fetch' of undefined
    275 | const resourceUrl = `${containerUrl}test.txt`;
    276 | // This will do mkdir-p:
    > 277 | const creationResult = await solidLogicAlice.fetch(resourceUrl, {
    | ^
    278 | method: 'PUT',
    279 | body: 'hello',
    280 | headers: {
    at test/surface/update.test.ts:277:53
    at step (test/surface/update.test.ts:33:23)
    at Object.next (test/surface/update.test.ts:14:53)
    at test/surface/update.test.ts:8:71
    at Object.<anonymous>.__awaiter (test/surface/update.test.ts:4:12)
    at Object.<anonymous> (test/surface/update.test.ts:273:58)
    ● Update › Using PUT to overwrite › Is allowed with default Write access on parent
    TypeError: Cannot read property 'recursiveDelete' of undefined
    52 | 53 | afterEach(() => {
    > 54 | return solidLogicAlice.recursiveDelete(testFolderUrl);
    | ^
    55 | });
    56 | 57 | describe('Using PUT to append', () => {
    at Object.<anonymous> (test/surface/update.test.ts:54:28)
    ● Update › Using PUT to overwrite › Is disallowed with default Read+Append+Control access on parent
    Please make sure the cookie is valid, and add "https://tester" as a trusted app!
    at Object.getAuthFetcher (node_modules/solid-auth-fetcher/src/obtainAuthHeaders.ts:51:13)
    ● Update › Using PUT to overwrite › Is disallowed with default Read+Append+Control access on parent
    TypeError: Cannot read property 'fetch' of undefined
    311 | const resourceUrl = `${containerUrl}test.txt`;
    312 | // This will do mkdir-p:
    > 313 | const creationResult = await solidLogicAlice.fetch(resourceUrl, {
    | ^
    314 | method: 'PUT',
    315 | body: 'hello',
    316 | headers: {
    at test/surface/update.test.ts:313:53
    at step (test/surface/update.test.ts:33:23)
    at Object.next (test/surface/update.test.ts:14:53)
    at test/surface/update.test.ts:8:71
    at Object.<anonymous>.__awaiter (test/surface/update.test.ts:4:12)
    at Object.<anonymous> (test/surface/update.test.ts:309:75)
    ● Update › Using PUT to overwrite › Is disallowed with default Read+Append+Control access on parent
    TypeError: Cannot read property 'recursiveDelete' of undefined
    52 | 53 | afterEach(() => {
    > 54 | return solidLogicAlice.recursiveDelete(testFolderUrl);
    | ^
    55 | });
    56 | 57 | describe('Using PUT to append', () => {
    at Object.<anonymous> (test/surface/update.test.ts:54:28)
    ● Update › Using PATCH to append › Is allowed with accessTo Append access on resource
    Please make sure the cookie is valid, and add "https://tester" as a trusted app!
    at Object.getAuthFetcher (node_modules/solid-auth-fetcher/src/obtainAuthHeaders.ts:51:13)
    ● Update › Using PATCH to append › Is allowed with accessTo Append access on resource
    TypeError: Cannot read property 'fetch' of undefined
    349 | const resourceUrl = `${testFolderUrl}9/test.txt`;
    350 | // This will do mkdir-p:
    > 351 | const creationResult = await solidLogicAlice.fetch(resourceUrl, {
    | ^
    352 | method: 'PUT',
    353 | body: '<#hello> <#linked> <#world> .',
    354 | headers: {
    at test/surface/update.test.ts:351:53
    at step (test/surface/update.test.ts:33:23)
    at Object.next (test/surface/update.test.ts:14:53)
    at test/surface/update.test.ts:8:71
    at Object.<anonymous>.__awaiter (test/surface/update.test.ts:4:12)
    at Object.<anonymous> (test/surface/update.test.ts:348:62)
    ● Update › Using PATCH to append › Is allowed with accessTo Append access on resource
    TypeError: Cannot read property 'recursiveDelete' of undefined
    52 | 53 | afterEach(() => {
    > 54 | return solidLogicAlice.recursiveDelete(testFolderUrl);
    | ^
    55 | });
    56 | 57 | describe('Using PUT to append', () => {
    at Object.<anonymous> (test/surface/update.test.ts:54:28)
    ● Update › Using PATCH to append › Is allowed with accessTo Write access on resource
    Please make sure the cookie is valid, and add "https://tester" as a trusted app!
    at Object.getAuthFetcher (node_modules/solid-auth-fetcher/src/obtainAuthHeaders.ts:51:13)
    ● Update › Using PATCH to append › Is allowed with accessTo Write access on resource
    TypeError: Cannot read property 'fetch' of undefined
    383 | const resourceUrl = `${testFolderUrl}10/test.txt`;
    384 | // This will do mkdir-p:
    > 385 | const creationResult = await solidLogicAlice.fetch(resourceUrl, {
    | ^
    386 | method: 'PUT',
    387 | body: '<#hello> <#linked> <#world> .',
    388 | headers: {
    at test/surface/update.test.ts:385:53
    at step (test/surface/update.test.ts:33:23)
    at Object.next (test/surface/update.test.ts:14:53)
    at test/surface/update.test.ts:8:71
    at Object.<anonymous>.__awaiter (test/surface/update.test.ts:4:12)
    at Object.<anonymous> (test/surface/update.test.ts:382:61)
    ● Update › Using PATCH to append › Is allowed with accessTo Write access on resource
    TypeError: Cannot read property 'recursiveDelete' of undefined
    52 | 53 | afterEach(() => {
    > 54 | return solidLogicAlice.recursiveDelete(testFolderUrl);
    | ^
    55 | });
    56 | 57 | describe('Using PUT to append', () => {
    at Object.<anonymous> (test/surface/update.test.ts:54:28)
    ● Update › Using PATCH to append › Is disallowed with accessTo Read+Control access on resource
    Please make sure the cookie is valid, and add "https://tester" as a trusted app!
    at Object.getAuthFetcher (node_modules/solid-auth-fetcher/src/obtainAuthHeaders.ts:51:13)
    ● Update › Using PATCH to append › Is disallowed with accessTo Read+Control access on resource
    TypeError: Cannot read property 'fetch' of undefined
    418 | const resourceUrl = `${testFolderUrl}11/test.txt`;
    419 | // This will do mkdir-p:
    > 420 | const creationResult = await solidLogicAlice.fetch(resourceUrl, {
    | ^
    421 | method: 'PUT',
    422 | body: '<#hello> <#linked> <#world> .',
    423 | headers: {
    at test/surface/update.test.ts:420:53
    at step (test/surface/update.test.ts:33:23)
    at Object.next (test/surface/update.test.ts:14:53)
    at test/surface/update.test.ts:8:71
    at Object.<anonymous>.__awaiter (test/surface/update.test.ts:4:12)
    at Object.<anonymous> (test/surface/update.test.ts:417:71)
    ● Update › Using PATCH to append › Is disallowed with accessTo Read+Control access on resource
    TypeError: Cannot read property 'recursiveDelete' of undefined
    52 | 53 | afterEach(() => {
    > 54 | return solidLogicAlice.recursiveDelete(testFolderUrl);
    | ^
    55 | });
    56 | 57 | describe('Using PUT to append', () => {
    at Object.<anonymous> (test/surface/update.test.ts:54:28)
    ● Update › Using PATCH to append › Is allowed with default Append access on parent
    Please make sure the cookie is valid, and add "https://tester" as a trusted app!
    at Object.getAuthFetcher (node_modules/solid-auth-fetcher/src/obtainAuthHeaders.ts:51:13)
    ● Update › Using PATCH to append › Is allowed with default Append access on parent
    TypeError: Cannot read property 'fetch' of undefined
    454 | const resourceUrl = `${containerUrl}test.txt`;
    455 | // This will do mkdir-p:
    > 456 | const creationResult = await solidLogicAlice.fetch(resourceUrl, {
    | ^
    457 | method: 'PUT',
    458 | body: '<#hello> <#linked> <#world> .',
    459 | headers: {
    at test/surface/update.test.ts:456:53
    at step (test/surface/update.test.ts:33:23)
    at Object.next (test/surface/update.test.ts:14:53)
    at test/surface/update.test.ts:8:71
    at Object.<anonymous>.__awaiter (test/surface/update.test.ts:4:12)
    at Object.<anonymous> (test/surface/update.test.ts:452:59)
    ● Update › Using PATCH to append › Is allowed with default Append access on parent
    TypeError: Cannot read property 'recursiveDelete' of undefined
    52 | 53 | afterEach(() => {
    > 54 | return solidLogicAlice.recursiveDelete(testFolderUrl);
    | ^
    55 | });
    56 | 57 | describe('Using PUT to append', () => {
    at Object.<anonymous> (test/surface/update.test.ts:54:28)
    ● Update › Using PATCH to append › Is allowed with default Write access on parent
    Please make sure the cookie is valid, and add "https://tester" as a trusted app!
    at Object.getAuthFetcher (node_modules/solid-auth-fetcher/src/obtainAuthHeaders.ts:51:13)
    ● Update › Using PATCH to append › Is allowed with default Write access on parent
    TypeError: Cannot read property 'fetch' of undefined
    490 | const resourceUrl = `${containerUrl}test.txt`;
    491 | // This will do mkdir-p:
    > 492 | const creationResult = await solidLogicAlice.fetch(resourceUrl, {
    | ^
    493 | method: 'PUT',
    494 | body: '<#hello> <#linked> <#world> .',
    495 | headers: {
    at test/surface/update.test.ts:492:53
    at step (test/surface/update.test.ts:33:23)
    at Object.next (test/surface/update.test.ts:14:53)
    at test/surface/update.test.ts:8:71
    at Object.<anonymous>.__awaiter (test/surface/update.test.ts:4:12)
    at Object.<anonymous> (test/surface/update.test.ts:488:58)
    ● Update › Using PATCH to append › Is allowed with default Write access on parent
    TypeError: Cannot read property 'recursiveDelete' of undefined
    52 | 53 | afterEach(() => {
    > 54 | return solidLogicAlice.recursiveDelete(testFolderUrl);
    | ^
    55 | });
    56 | 57 | describe('Using PUT to append', () => {
    at Object.<anonymous> (test/surface/update.test.ts:54:28)
    ● Update › Using PATCH to append › Is disallowed with default Read+Control access on parent
    Please make sure the cookie is valid, and add "https://tester" as a trusted app!
    at Object.getAuthFetcher (node_modules/solid-auth-fetcher/src/obtainAuthHeaders.ts:51:13)
    ● Update › Using PATCH to append › Is disallowed with default Read+Control access on parent
    TypeError: Cannot read property 'fetch' of undefined
    526 | const resourceUrl = `${containerUrl}test.txt`;
    527 | // This will do mkdir-p:
    > 528 | const creationResult = await solidLogicAlice.fetch(resourceUrl, {
    | ^
    529 | method: 'PUT',
    530 | body: '<#hello> <#linked> <#world> .',
    531 | headers: {
    at test/surface/update.test.ts:528:53
    at step (test/surface/update.test.ts:33:23)
    at Object.next (test/surface/update.test.ts:14:53)
    at test/surface/update.test.ts:8:71
    at Object.<anonymous>.__awaiter (test/surface/update.test.ts:4:12)
    at Object.<anonymous> (test/surface/update.test.ts:524:68)
    ● Update › Using PATCH to append › Is disallowed with default Read+Control access on parent
    TypeError: Cannot read property 'recursiveDelete' of undefined
    52 | 53 | afterEach(() => {
    > 54 | return solidLogicAlice.recursiveDelete(testFolderUrl);
    | ^
    55 | });
    56 | 57 | describe('Using PUT to append', () => {
    at Object.<anonymous> (test/surface/update.test.ts:54:28)
    ● Update › Using PATCH to overwrite › Is allowed with accessTo Read+Write access on resource
    Please make sure the cookie is valid, and add "https://tester" as a trusted app!
    at Object.getAuthFetcher (node_modules/solid-auth-fetcher/src/obtainAuthHeaders.ts:51:13)
    ● Update › Using PATCH to overwrite › Is allowed with accessTo Read+Write access on resource
    TypeError: Cannot read property 'fetch' of undefined
    565 | const resourceUrl = `${testFolderUrl}15/test.txt`;
    566 | // This will do mkdir-p:
    > 567 | const creationResult = await solidLogicAlice.fetch(resourceUrl, {
    | ^
    568 | method: 'PUT',
    569 | body: '<#hello> <#linked> <#world> .',
    570 | headers: {
    at test/surface/update.test.ts:567:53
    at step (test/surface/update.test.ts:33:23)
    at Object.next (test/surface/update.test.ts:14:53)
    at test/surface/update.test.ts:8:71
    at Object.<anonymous>.__awaiter (test/surface/update.test.ts:4:12)
    at Object.<anonymous> (test/surface/update.test.ts:564:66)
    ● Update › Using PATCH to overwrite › Is allowed with accessTo Read+Write access on resource
    TypeError: Cannot read property 'recursiveDelete' of undefined
    52 | 53 | afterEach(() => {
    > 54 | return solidLogicAlice.recursiveDelete(testFolderUrl);
    | ^
    55 | });
    56 | 57 | describe('Using PUT to append', () => {
    at Object.<anonymous> (test/surface/update.test.ts:54:28)
    ● Update › Using PATCH to overwrite › Is disallowed with accessTo Read+Append+Control access on resource
    Please make sure the cookie is valid, and add "https://tester" as a trusted app!
    at Object.getAuthFetcher (node_modules/solid-auth-fetcher/src/obtainAuthHeaders.ts:51:13)
    ● Update › Using PATCH to overwrite › Is disallowed with accessTo Read+Append+Control access on resource
    TypeError: Cannot read property 'fetch' of undefined
    596 | const resourceUrl = `${testFolderUrl}16/test.txt`;
    597 | // This will do mkdir-p:
    > 598 | const creationResult = await solidLogicAlice.fetch(resourceUrl, {
    | ^
    599 | method: 'PUT',
    600 | body: '<#hello> <#linked> <#world> .',
    601 | headers: {
    at test/surface/update.test.ts:598:53
    at step (test/surface/update.test.ts:33:23)
    at Object.next (test/surface/update.test.ts:14:53)
    at test/surface/update.test.ts:8:71
    at Object.<anonymous>.__awaiter (test/surface/update.test.ts:4:12)
    at Object.<anonymous> (test/surface/update.test.ts:595:78)
    ● Update › Using PATCH to overwrite › Is disallowed with accessTo Read+Append+Control access on resource
    TypeError: Cannot read property 'recursiveDelete' of undefined
    52 | 53 | afterEach(() => {
    > 54 | return solidLogicAlice.recursiveDelete(testFolderUrl);
    | ^
    55 | });
    56 | 57 | describe('Using PUT to append', () => {
    at Object.<anonymous> (test/surface/update.test.ts:54:28)
    ● Update › Using PATCH to overwrite › Is disallowed with accessTo Write+Control access on resource
    Please make sure the cookie is valid, and add "https://tester" as a trusted app!
    at Object.getAuthFetcher (node_modules/solid-auth-fetcher/src/obtainAuthHeaders.ts:51:13)
    ● Update › Using PATCH to overwrite › Is disallowed with accessTo Write+Control access on resource
    TypeError: Cannot read property 'fetch' of undefined
    631 | const resourceUrl = `${testFolderUrl}17/test.txt`;
    632 | // This will do mkdir-p:
    > 633 | const creationResult = await solidLogicAlice.fetch(resourceUrl, {
    | ^
    634 | method: 'PUT',
    635 | body: '<#hello> <#linked> <#world> .',
    636 | headers: {
    at test/surface/update.test.ts:633:53
    at step (test/surface/update.test.ts:33:23)
    at Object.next (test/surface/update.test.ts:14:53)
    at test/surface/update.test.ts:8:71
    at Object.<anonymous>.__awaiter (test/surface/update.test.ts:4:12)
    at Object.<anonymous> (test/surface/update.test.ts:630:72)
    ● Update › Using PATCH to overwrite › Is disallowed with accessTo Write+Control access on resource
    TypeError: Cannot read property 'recursiveDelete' of undefined
    52 | 53 | afterEach(() => {
    > 54 | return solidLogicAlice.recursiveDelete(testFolderUrl);
    | ^
    55 | });
    56 | 57 | describe('Using PUT to append', () => {
    at Object.<anonymous> (test/surface/update.test.ts:54:28)
    ● Update › Using PATCH to overwrite › Is allowed with default Read+Write access on parent
    Please make sure the cookie is valid, and add "https://tester" as a trusted app!
    at Object.getAuthFetcher (node_modules/solid-auth-fetcher/src/obtainAuthHeaders.ts:51:13)
    ● Update › Using PATCH to overwrite › Is allowed with default Read+Write access on parent
    TypeError: Cannot read property 'fetch' of undefined
    667 | const resourceUrl = `${containerUrl}test.txt`;
    668 | // This will do mkdir-p:
    > 669 | const creationResult = await solidLogicAlice.fetch(resourceUrl, {
    | ^
    670 | method: 'PUT',
    671 | body: '<#hello> <#linked> <#world> .',
    672 | headers: {
    at test/surface/update.test.ts:669:53
    at step (test/surface/update.test.ts:33:23)
    at Object.next (test/surface/update.test.ts:14:53)
    at test/surface/update.test.ts:8:71
    at Object.<anonymous>.__awaiter (test/surface/update.test.ts:4:12)
    at Object.<anonymous> (test/surface/update.test.ts:665:63)
    ● Update › Using PATCH to overwrite › Is allowed with default Read+Write access on parent
    TypeError: Cannot read property 'recursiveDelete' of undefined
    52 | 53 | afterEach(() => {
    > 54 | return solidLogicAlice.recursiveDelete(testFolderUrl);
    | ^
    55 | });
    56 | 57 | describe('Using PUT to append', () => {
    at Object.<anonymous> (test/surface/update.test.ts:54:28)
    ● Update › Using PATCH to overwrite › Is disallowed with default Read+Append+Control access on parent
    Please make sure the cookie is valid, and add "https://tester" as a trusted app!
    at Object.getAuthFetcher (node_modules/solid-auth-fetcher/src/obtainAuthHeaders.ts:51:13)
    ● Update › Using PATCH to overwrite › Is disallowed with default Read+Append+Control access on parent
    TypeError: Cannot read property 'fetch' of undefined
    703 | const resourceUrl = `${containerUrl}test.txt`;
    704 | // This will do mkdir-p:
    > 705 | const creationResult = await solidLogicAlice.fetch(resourceUrl, {
    | ^
    706 | method: 'PUT',
    707 | body: '<#hello> <#linked> <#world> .',
    708 | headers: {
    at test/surface/update.test.ts:705:53
    at step (test/surface/update.test.ts:33:23)
    at Object.next (test/surface/update.test.ts:14:53)
    at test/surface/update.test.ts:8:71
    at Object.<anonymous>.__awaiter (test/surface/update.test.ts:4:12)
    at Object.<anonymous> (test/surface/update.test.ts:701:75)
    ● Update › Using PATCH to overwrite › Is disallowed with default Read+Append+Control access on parent
    TypeError: Cannot read property 'recursiveDelete' of undefined
    52 | 53 | afterEach(() => {
    > 54 | return solidLogicAlice.recursiveDelete(testFolderUrl);
    | ^
    55 | });
    56 | 57 | describe('Using PUT to append', () => {
    at Object.<anonymous> (test/surface/update.test.ts:54:28)
    ● Update › Using PATCH to overwrite › Is disallowed with default Write+Control access on parent
    Please make sure the cookie is valid, and add "https://tester" as a trusted app!
    at Object.getAuthFetcher (node_modules/solid-auth-fetcher/src/obtainAuthHeaders.ts:51:13)
    ● Update › Using PATCH to overwrite › Is disallowed with default Write+Control access on parent
    TypeError: Cannot read property 'fetch' of undefined
    740 | const resourceUrl = `${containerUrl}test.txt`;
    741 | // This will do mkdir-p:
    > 742 | const creationResult = await solidLogicAlice.fetch(resourceUrl, {
    | ^
    743 | method: 'PUT',
    744 | body: '<#hello> <#linked> <#world> .',
    745 | headers: {
    at test/surface/update.test.ts:742:53
    at step (test/surface/update.test.ts:33:23)
    at Object.next (test/surface/update.test.ts:14:53)
    at test/surface/update.test.ts:8:71
    at Object.<anonymous>.__awaiter (test/surface/update.test.ts:4:12)
    at Object.<anonymous> (test/surface/update.test.ts:738:69)
    ● Update › Using PATCH to overwrite › Is disallowed with default Write+Control access on parent
    TypeError: Cannot read property 'recursiveDelete' of undefined
    52 | 53 | afterEach(() => {
    > 54 | return solidLogicAlice.recursiveDelete(testFolderUrl);
    | ^
    55 | });
    56 | 57 | describe('Using PUT to append', () => {
    at Object.<anonymous> (test/surface/update.test.ts:54:28)
    
  • test/surface/create.test.ts

    Details
    ● Console
    console.warn
    Adding slash to the end of ALICE's storage root ->"https://server/storage"+"/"
    25 | let storageRoot = getEnvVars(who).storageRoot;
    26 | if (storageRoot.substr(-1) !== '/') {
    > 27 | console.warn(`Adding slash to the end of ${who}'s storage root ->"${storageRoot}"+"/"`);
    | ^
    28 | storageRoot += '/';
    29 | }
    30 | const testFolder = `web-access-control-tests-${new Date().getTime()}`;
    at Object.generateTestFolder (test/helpers/env.ts:27:13)
    at Suite.<anonymous> (test/surface/create.test.ts:46:29)
    at Object.<anonymous> (test/surface/create.test.ts:38:1)
    ● Create › Using POST to existing container › Is allowed with accessTo Append access
    Please make sure the cookie is valid, and add "https://tester" as a trusted app!
    at Object.getAuthFetcher (node_modules/solid-auth-fetcher/src/obtainAuthHeaders.ts:51:13)
    ● Create › Using POST to existing container › Is allowed with accessTo Append access
    TypeError: Cannot read property 'fetch' of undefined
    59 | const containerUrl = `${testFolderUrl}1/accessToAppend/`;
    60 | // This will do mkdir-p:
    > 61 | await solidLogicAlice.fetch(`${containerUrl}test.txt`, {
    | ^
    62 | method: 'PUT',
    63 | body: 'hello',
    64 | headers: {
    at test/surface/create.test.ts:61:29
    at step (test/surface/create.test.ts:33:23)
    at Object.next (test/surface/create.test.ts:14:53)
    at test/surface/create.test.ts:8:71
    at Object.<anonymous>.__awaiter (test/surface/create.test.ts:4:12)
    at Object.<anonymous> (test/surface/create.test.ts:58:50)
    ● Create › Using POST to existing container › Is allowed with accessTo Append access
    TypeError: Cannot read property 'recursiveDelete' of undefined
    52 | 53 | afterEach(() => {
    > 54 | return solidLogicAlice.recursiveDelete(testFolderUrl);
    | ^
    55 | });
    56 | 57 | describe('Using POST to existing container', () => {
    at Object.<anonymous> (test/surface/create.test.ts:54:28)
    ● Create › Using POST to existing container › Is allowed with accessTo Write access
    Please make sure the cookie is valid, and add "https://tester" as a trusted app!
    at Object.getAuthFetcher (node_modules/solid-auth-fetcher/src/obtainAuthHeaders.ts:51:13)
    ● Create › Using POST to existing container › Is allowed with accessTo Write access
    TypeError: Cannot read property 'fetch' of undefined
    88 | const containerUrl = `${testFolderUrl}2/accessToWrite/`;
    89 | // This will do mkdir-p:
    > 90 | await solidLogicAlice.fetch(`${containerUrl}test.txt`, {
    | ^
    91 | method: 'PUT',
    92 | body: 'hello',
    93 | headers: {
    at test/surface/create.test.ts:90:29
    at step (test/surface/create.test.ts:33:23)
    at Object.next (test/surface/create.test.ts:14:53)
    at test/surface/create.test.ts:8:71
    at Object.<anonymous>.__awaiter (test/surface/create.test.ts:4:12)
    at Object.<anonymous> (test/surface/create.test.ts:87:49)
    ● Create › Using POST to existing container › Is allowed with accessTo Write access
    TypeError: Cannot read property 'recursiveDelete' of undefined
    52 | 53 | afterEach(() => {
    > 54 | return solidLogicAlice.recursiveDelete(testFolderUrl);
    | ^
    55 | });
    56 | 57 | describe('Using POST to existing container', () => {
    at Object.<anonymous> (test/surface/create.test.ts:54:28)
    ● Create › Using POST to existing container › Is disallowed otherwise
    Please make sure the cookie is valid, and add "https://tester" as a trusted app!
    at Object.getAuthFetcher (node_modules/solid-auth-fetcher/src/obtainAuthHeaders.ts:51:13)
    ● Create › Using POST to existing container › Is disallowed otherwise
    TypeError: Cannot read property 'fetch' of undefined
    114 | const containerUrl = `${testFolderUrl}3/allOtherModes/`;
    115 | // This will do mkdir-p:
    > 116 | await solidLogicAlice.fetch(`${containerUrl}test.txt`, {
    | ^
    117 | method: 'PUT',
    118 | body: 'hello',
    119 | headers: {
    at test/surface/create.test.ts:116:29
    at step (test/surface/create.test.ts:33:23)
    at Object.next (test/surface/create.test.ts:14:53)
    at test/surface/create.test.ts:8:71
    at Object.<anonymous>.__awaiter (test/surface/create.test.ts:4:12)
    at Object.<anonymous> (test/surface/create.test.ts:113:35)
    ● Create › Using POST to existing container › Is disallowed otherwise
    TypeError: Cannot read property 'recursiveDelete' of undefined
    52 | 53 | afterEach(() => {
    > 54 | return solidLogicAlice.recursiveDelete(testFolderUrl);
    | ^
    55 | });
    56 | 57 | describe('Using POST to existing container', () => {
    at Object.<anonymous> (test/surface/create.test.ts:54:28)
    ● Create › Using PUT in existing container › Is allowed with accessTo Write and default Write access
    Please make sure the cookie is valid, and add "https://tester" as a trusted app!
    at Object.getAuthFetcher (node_modules/solid-auth-fetcher/src/obtainAuthHeaders.ts:51:13)
    ● Create › Using PUT in existing container › Is allowed with accessTo Write and default Write access
    TypeError: Cannot read property 'fetch' of undefined
    146 | const containerUrl = `${testFolderUrl}4/accessToAndDefaultWrite/`;
    147 | // This will do mkdir-p:
    > 148 | await solidLogicAlice.fetch(`${containerUrl}test.txt`, {
    | ^
    149 | method: 'PUT',
    150 | body: 'hello',
    151 | headers: {
    at test/surface/create.test.ts:148:29
    at step (test/surface/create.test.ts:33:23)
    at Object.next (test/surface/create.test.ts:14:53)
    at test/surface/create.test.ts:8:71
    at Object.<anonymous>.__awaiter (test/surface/create.test.ts:4:12)
    at Object.<anonymous> (test/surface/create.test.ts:145:67)
    ● Create › Using PUT in existing container › Is allowed with accessTo Write and default Write access
    TypeError: Cannot read property 'recursiveDelete' of undefined
    52 | 53 | afterEach(() => {
    > 54 | return solidLogicAlice.recursiveDelete(testFolderUrl);
    | ^
    55 | });
    56 | 57 | describe('Using POST to existing container', () => {
    at Object.<anonymous> (test/surface/create.test.ts:54:28)
    ● Create › Using PUT in existing container › Is allowed with accessTo Append and default Write access
    Please make sure the cookie is valid, and add "https://tester" as a trusted app!
    at Object.getAuthFetcher (node_modules/solid-auth-fetcher/src/obtainAuthHeaders.ts:51:13)
    ● Create › Using PUT in existing container › Is allowed with accessTo Append and default Write access
    TypeError: Cannot read property 'fetch' of undefined
    176 | const containerUrl = `${testFolderUrl}5/accessToAndDefaultWrite/`;
    177 | // This will do mkdir-p:
    > 178 | await solidLogicAlice.fetch(`${containerUrl}test.txt`, {
    | ^
    179 | method: 'PUT',
    180 | body: 'hello',
    181 | headers: {
    at test/surface/create.test.ts:178:29
    at step (test/surface/create.test.ts:33:23)
    at Object.next (test/surface/create.test.ts:14:53)
    at test/surface/create.test.ts:8:71
    at Object.<anonymous>.__awaiter (test/surface/create.test.ts:4:12)
    at Object.<anonymous> (test/surface/create.test.ts:175:68)
    ● Create › Using PUT in existing container › Is allowed with accessTo Append and default Write access
    TypeError: Cannot read property 'recursiveDelete' of undefined
    52 | 53 | afterEach(() => {
    > 54 | return solidLogicAlice.recursiveDelete(testFolderUrl);
    | ^
    55 | });
    56 | 57 | describe('Using POST to existing container', () => {
    at Object.<anonymous> (test/surface/create.test.ts:54:28)
    ● Create › Using PUT in existing container › is disallowed without default Write
    Please make sure the cookie is valid, and add "https://tester" as a trusted app!
    at Object.getAuthFetcher (node_modules/solid-auth-fetcher/src/obtainAuthHeaders.ts:51:13)
    ● Create › Using PUT in existing container › is disallowed without default Write
    TypeError: Cannot read property 'fetch' of undefined
    206 | const containerUrl = `${testFolderUrl}6/allOtherModes/`;
    207 | // This will do mkdir-p:
    > 208 | await solidLogicAlice.fetch(`${containerUrl}test.txt`, {
    | ^
    209 | method: 'PUT',
    210 | body: 'hello',
    211 | headers: {
    at test/surface/create.test.ts:208:29
    at step (test/surface/create.test.ts:33:23)
    at Object.next (test/surface/create.test.ts:14:53)
    at test/surface/create.test.ts:8:71
    at Object.<anonymous>.__awaiter (test/surface/create.test.ts:4:12)
    at Object.<anonymous> (test/surface/create.test.ts:205:47)
    ● Create › Using PUT in existing container › is disallowed without default Write
    TypeError: Cannot read property 'recursiveDelete' of undefined
    52 | 53 | afterEach(() => {
    > 54 | return solidLogicAlice.recursiveDelete(testFolderUrl);
    | ^
    55 | });
    56 | 57 | describe('Using POST to existing container', () => {
    at Object.<anonymous> (test/surface/create.test.ts:54:28)
    ● Create › Using PUT in existing container › is disallowed without accessTo Write or Append
    Please make sure the cookie is valid, and add "https://tester" as a trusted app!
    at Object.getAuthFetcher (node_modules/solid-auth-fetcher/src/obtainAuthHeaders.ts:51:13)
    ● Create › Using PUT in existing container › is disallowed without accessTo Write or Append
    TypeError: Cannot read property 'fetch' of undefined
    237 | const containerUrl = `${testFolderUrl}7/allOtherModes/`;
    238 | // This will do mkdir-p:
    > 239 | await solidLogicAlice.fetch(`${containerUrl}test.txt`, {
    | ^
    240 | method: 'PUT',
    241 | body: 'hello',
    242 | headers: {
    at test/surface/create.test.ts:239:29
    at step (test/surface/create.test.ts:33:23)
    at Object.next (test/surface/create.test.ts:14:53)
    at test/surface/create.test.ts:8:71
    at Object.<anonymous>.__awaiter (test/surface/create.test.ts:4:12)
    at Object.<anonymous> (test/surface/create.test.ts:236:58)
    ● Create › Using PUT in existing container › is disallowed without accessTo Write or Append
    TypeError: Cannot read property 'recursiveDelete' of undefined
    52 | 53 | afterEach(() => {
    > 54 | return solidLogicAlice.recursiveDelete(testFolderUrl);
    | ^
    55 | });
    56 | 57 | describe('Using POST to existing container', () => {
    at Object.<anonymous> (test/surface/create.test.ts:54:28)
    ● Create › Using PATCH in existing container › Is allowed with accessTo Write and default Write access
    Please make sure the cookie is valid, and add "https://tester" as a trusted app!
    at Object.getAuthFetcher (node_modules/solid-auth-fetcher/src/obtainAuthHeaders.ts:51:13)
    ● Create › Using PATCH in existing container › Is allowed with accessTo Write and default Write access
    TypeError: Cannot read property 'fetch' of undefined
    271 | const containerUrl = `${testFolderUrl}8/accessToAndDefaultWrite/`;
    272 | // This will do mkdir-p:
    > 273 | await solidLogicAlice.fetch(`${containerUrl}test.txt`, {
    | ^
    274 | method: 'PUT',
    275 | body: 'hello',
    276 | headers: {
    at test/surface/create.test.ts:273:29
    at step (test/surface/create.test.ts:33:23)
    at Object.next (test/surface/create.test.ts:14:53)
    at test/surface/create.test.ts:8:71
    at Object.<anonymous>.__awaiter (test/surface/create.test.ts:4:12)
    at Object.<anonymous> (test/surface/create.test.ts:270:67)
    ● Create › Using PATCH in existing container › Is allowed with accessTo Write and default Write access
    TypeError: Cannot read property 'recursiveDelete' of undefined
    52 | 53 | afterEach(() => {
    > 54 | return solidLogicAlice.recursiveDelete(testFolderUrl);
    | ^
    55 | });
    56 | 57 | describe('Using POST to existing container', () => {
    at Object.<anonymous> (test/surface/create.test.ts:54:28)
    ● Create › Using PATCH in existing container › Is allowed with accessTo Append and default Write access
    Please make sure the cookie is valid, and add "https://tester" as a trusted app!
    at Object.getAuthFetcher (node_modules/solid-auth-fetcher/src/obtainAuthHeaders.ts:51:13)
    ● Create › Using PATCH in existing container › Is allowed with accessTo Append and default Write access
    TypeError: Cannot read property 'fetch' of undefined
    300 | const containerUrl = `${testFolderUrl}9/accessToAndDefaultWrite/`;
    301 | // This will do mkdir-p:
    > 302 | await solidLogicAlice.fetch(`${containerUrl}test.txt`, {
    | ^
    303 | method: 'PUT',
    304 | body: 'hello',
    305 | headers: {
    at test/surface/create.test.ts:302:29
    at step (test/surface/create.test.ts:33:23)
    at Object.next (test/surface/create.test.ts:14:53)
    at test/surface/create.test.ts:8:71
    at Object.<anonymous>.__awaiter (test/surface/create.test.ts:4:12)
    at Object.<anonymous> (test/surface/create.test.ts:299:68)
    ● Create › Using PATCH in existing container › Is allowed with accessTo Append and default Write access
    TypeError: Cannot read property 'recursiveDelete' of undefined
    52 | 53 | afterEach(() => {
    > 54 | return solidLogicAlice.recursiveDelete(testFolderUrl);
    | ^
    55 | });
    56 | 57 | describe('Using POST to existing container', () => {
    at Object.<anonymous> (test/surface/create.test.ts:54:28)
    ● Create › Using PATCH in existing container › is disallowed without default Write
    Please make sure the cookie is valid, and add "https://tester" as a trusted app!
    at Object.getAuthFetcher (node_modules/solid-auth-fetcher/src/obtainAuthHeaders.ts:51:13)
    ● Create › Using PATCH in existing container › is disallowed without default Write
    TypeError: Cannot read property 'fetch' of undefined
    330 | const containerUrl = `${testFolderUrl}10/allOtherModes/`;
    331 | // This will do mkdir-p:
    > 332 | await solidLogicAlice.fetch(`${containerUrl}test.txt`, {
    | ^
    333 | method: 'PUT',
    334 | body: 'hello',
    335 | headers: {
    at test/surface/create.test.ts:332:29
    at step (test/surface/create.test.ts:33:23)
    at Object.next (test/surface/create.test.ts:14:53)
    at test/surface/create.test.ts:8:71
    at Object.<anonymous>.__awaiter (test/surface/create.test.ts:4:12)
    at Object.<anonymous> (test/surface/create.test.ts:329:47)
    ● Create › Using PATCH in existing container › is disallowed without default Write
    TypeError: Cannot read property 'recursiveDelete' of undefined
    52 | 53 | afterEach(() => {
    > 54 | return solidLogicAlice.recursiveDelete(testFolderUrl);
    | ^
    55 | });
    56 | 57 | describe('Using POST to existing container', () => {
    at Object.<anonymous> (test/surface/create.test.ts:54:28)
    ● Create › Using PATCH in existing container › is disallowed without accessTo Write or Append
    Please make sure the cookie is valid, and add "https://tester" as a trusted app!
    at Object.getAuthFetcher (node_modules/solid-auth-fetcher/src/obtainAuthHeaders.ts:51:13)
    ● Create › Using PATCH in existing container › is disallowed without accessTo Write or Append
    TypeError: Cannot read property 'fetch' of undefined
    362 | const containerUrl = `${testFolderUrl}11/allOtherModes/`;
    363 | // This will do mkdir-p:
    > 364 | await solidLogicAlice.fetch(`${containerUrl}test.txt`, {
    | ^
    365 | method: 'PUT',
    366 | body: 'hello',
    367 | headers: {
    at test/surface/create.test.ts:364:29
    at step (test/surface/create.test.ts:33:23)
    at Object.next (test/surface/create.test.ts:14:53)
    at test/surface/create.test.ts:8:71
    at Object.<anonymous>.__awaiter (test/surface/create.test.ts:4:12)
    at Object.<anonymous> (test/surface/create.test.ts:361:58)
    ● Create › Using PATCH in existing container › is disallowed without accessTo Write or Append
    TypeError: Cannot read property 'recursiveDelete' of undefined
    52 | 53 | afterEach(() => {
    > 54 | return solidLogicAlice.recursiveDelete(testFolderUrl);
    | ^
    55 | });
    56 | 57 | describe('Using POST to existing container', () => {
    at Object.<anonymous> (test/surface/create.test.ts:54:28)
    ● Create › Using PUT in non-existing container › Is allowed with accessTo Write and default Write access
    Please make sure the cookie is valid, and add "https://tester" as a trusted app!
    at Object.getAuthFetcher (node_modules/solid-auth-fetcher/src/obtainAuthHeaders.ts:51:13)
    ● Create › Using PUT in non-existing container › Is allowed with accessTo Write and default Write access
    TypeError: Cannot read property 'fetch' of undefined
    395 | let containerUrl = `${testFolderUrl}12/accessToAndDefaultWrite/`;
    396 | // This will do mkdir-p:
    > 397 | await solidLogicAlice.fetch(`${containerUrl}test.txt`, {
    | ^
    398 | method: 'PUT',
    399 | body: 'hello',
    400 | headers: {
    at test/surface/create.test.ts:397:29
    at step (test/surface/create.test.ts:33:23)
    at Object.next (test/surface/create.test.ts:14:53)
    at test/surface/create.test.ts:8:71
    at Object.<anonymous>.__awaiter (test/surface/create.test.ts:4:12)
    at Object.<anonymous> (test/surface/create.test.ts:394:67)
    ● Create › Using PUT in non-existing container › Is allowed with accessTo Write and default Write access
    TypeError: Cannot read property 'recursiveDelete' of undefined
    52 | 53 | afterEach(() => {
    > 54 | return solidLogicAlice.recursiveDelete(testFolderUrl);
    | ^
    55 | });
    56 | 57 | describe('Using POST to existing container', () => {
    at Object.<anonymous> (test/surface/create.test.ts:54:28)
    ● Create › Using PUT in non-existing container › Is allowed with accessTo Append and default Write access
    Please make sure the cookie is valid, and add "https://tester" as a trusted app!
    at Object.getAuthFetcher (node_modules/solid-auth-fetcher/src/obtainAuthHeaders.ts:51:13)
    ● Create › Using PUT in non-existing container › Is allowed with accessTo Append and default Write access
    TypeError: Cannot read property 'fetch' of undefined
    425 | const containerUrl = `${testFolderUrl}13/accessToAndDefaultWrite/`;
    426 | // This will do mkdir-p:
    > 427 | await solidLogicAlice.fetch(`${containerUrl}test.txt`, {
    | ^
    428 | method: 'PUT',
    429 | body: 'hello',
    430 | headers: {
    at test/surface/create.test.ts:427:29
    at step (test/surface/create.test.ts:33:23)
    at Object.next (test/surface/create.test.ts:14:53)
    at test/surface/create.test.ts:8:71
    at Object.<anonymous>.__awaiter (test/surface/create.test.ts:4:12)
    at Object.<anonymous> (test/surface/create.test.ts:424:68)
    ● Create › Using PUT in non-existing container › Is allowed with accessTo Append and default Write access
    TypeError: Cannot read property 'recursiveDelete' of undefined
    52 | 53 | afterEach(() => {
    > 54 | return solidLogicAlice.recursiveDelete(testFolderUrl);
    | ^
    55 | });
    56 | 57 | describe('Using POST to existing container', () => {
    at Object.<anonymous> (test/surface/create.test.ts:54:28)
    ● Create › Using PUT in non-existing container › is disallowed without default Write
    Please make sure the cookie is valid, and add "https://tester" as a trusted app!
    at Object.getAuthFetcher (node_modules/solid-auth-fetcher/src/obtainAuthHeaders.ts:51:13)
    ● Create › Using PUT in non-existing container › is disallowed without default Write
    TypeError: Cannot read property 'fetch' of undefined
    456 | const containerUrl = `${testFolderUrl}14/allOtherModes/`;
    457 | // This will do mkdir-p:
    > 458 | await solidLogicAlice.fetch(`${containerUrl}test.txt`, {
    | ^
    459 | method: 'PUT',
    460 | body: 'hello',
    461 | headers: {
    at test/surface/create.test.ts:458:29
    at step (test/surface/create.test.ts:33:23)
    at Object.next (test/surface/create.test.ts:14:53)
    at test/surface/create.test.ts:8:71
    at Object.<anonymous>.__awaiter (test/surface/create.test.ts:4:12)
    at Object.<anonymous> (test/surface/create.test.ts:455:47)
    ● Create › Using PUT in non-existing container › is disallowed without default Write
    TypeError: Cannot read property 'recursiveDelete' of undefined
    52 | 53 | afterEach(() => {
    > 54 | return solidLogicAlice.recursiveDelete(testFolderUrl);
    | ^
    55 | });
    56 | 57 | describe('Using POST to existing container', () => {
    at Object.<anonymous> (test/surface/create.test.ts:54:28)
    ● Create › Using PUT in non-existing container › is disallowed without accessTo Write or Append
    Please make sure the cookie is valid, and add "https://tester" as a trusted app!
    at Object.getAuthFetcher (node_modules/solid-auth-fetcher/src/obtainAuthHeaders.ts:51:13)
    ● Create › Using PUT in non-existing container › is disallowed without accessTo Write or Append
    TypeError: Cannot read property 'fetch' of undefined
    487 | const containerUrl = `${testFolderUrl}15/allOtherModes/`;
    488 | // This will do mkdir-p:
    > 489 | await solidLogicAlice.fetch(`${containerUrl}test.txt`, {
    | ^
    490 | method: 'PUT',
    491 | body: 'hello',
    492 | headers: {
    at test/surface/create.test.ts:489:29
    at step (test/surface/create.test.ts:33:23)
    at Object.next (test/surface/create.test.ts:14:53)
    at test/surface/create.test.ts:8:71
    at Object.<anonymous>.__awaiter (test/surface/create.test.ts:4:12)
    at Object.<anonymous> (test/surface/create.test.ts:486:58)
    ● Create › Using PUT in non-existing container › is disallowed without accessTo Write or Append
    TypeError: Cannot read property 'recursiveDelete' of undefined
    52 | 53 | afterEach(() => {
    > 54 | return solidLogicAlice.recursiveDelete(testFolderUrl);
    | ^
    55 | });
    56 | 57 | describe('Using POST to existing container', () => {
    at Object.<anonymous> (test/surface/create.test.ts:54:28)
    ● Create › Using PATCH in non-existing container › Is allowed with accessTo Write and default Write access
    Please make sure the cookie is valid, and add "https://tester" as a trusted app!
    at Object.getAuthFetcher (node_modules/solid-auth-fetcher/src/obtainAuthHeaders.ts:51:13)
    ● Create › Using PATCH in non-existing container › Is allowed with accessTo Write and default Write access
    TypeError: Cannot read property 'fetch' of undefined
    521 | const containerUrl = `${testFolderUrl}16/accessToAndDefaultWrite/`;
    522 | // This will do mkdir-p:
    > 523 | await solidLogicAlice.fetch(`${containerUrl}test.txt`, {
    | ^
    524 | method: 'PUT',
    525 | body: 'hello',
    526 | headers: {
    at test/surface/create.test.ts:523:29
    at step (test/surface/create.test.ts:33:23)
    at Object.next (test/surface/create.test.ts:14:53)
    at test/surface/create.test.ts:8:71
    at Object.<anonymous>.__awaiter (test/surface/create.test.ts:4:12)
    at Object.<anonymous> (test/surface/create.test.ts:520:67)
    ● Create › Using PATCH in non-existing container › Is allowed with accessTo Write and default Write access
    TypeError: Cannot read property 'recursiveDelete' of undefined
    52 | 53 | afterEach(() => {
    > 54 | return solidLogicAlice.recursiveDelete(testFolderUrl);
    | ^
    55 | });
    56 | 57 | describe('Using POST to existing container', () => {
    at Object.<anonymous> (test/surface/create.test.ts:54:28)
    ● Create › Using PATCH in non-existing container › Is allowed with accessTo Append and default Write access
    Please make sure the cookie is valid, and add "https://tester" as a trusted app!
    at Object.getAuthFetcher (node_modules/solid-auth-fetcher/src/obtainAuthHeaders.ts:51:13)
    ● Create › Using PATCH in non-existing container › Is allowed with accessTo Append and default Write access
    TypeError: Cannot read property 'fetch' of undefined
    550 | const containerUrl = `${testFolderUrl}17/accessToAndDefaultWrite/`;
    551 | // This will do mkdir-p:
    > 552 | await solidLogicAlice.fetch(`${containerUrl}test.txt`, {
    | ^
    553 | method: 'PUT',
    554 | body: 'hello',
    555 | headers: {
    at test/surface/create.test.ts:552:29
    at step (test/surface/create.test.ts:33:23)
    at Object.next (test/surface/create.test.ts:14:53)
    at test/surface/create.test.ts:8:71
    at Object.<anonymous>.__awaiter (test/surface/create.test.ts:4:12)
    at Object.<anonymous> (test/surface/create.test.ts:549:68)
    ● Create › Using PATCH in non-existing container › Is allowed with accessTo Append and default Write access
    TypeError: Cannot read property 'recursiveDelete' of undefined
    52 | 53 | afterEach(() => {
    > 54 | return solidLogicAlice.recursiveDelete(testFolderUrl);
    | ^
    55 | });
    56 | 57 | describe('Using POST to existing container', () => {
    at Object.<anonymous> (test/surface/create.test.ts:54:28)
    ● Create › Using PATCH in non-existing container › is disallowed without default Write
    Please make sure the cookie is valid, and add "https://tester" as a trusted app!
    at Object.getAuthFetcher (node_modules/solid-auth-fetcher/src/obtainAuthHeaders.ts:51:13)
    ● Create › Using PATCH in non-existing container › is disallowed without default Write
    TypeError: Cannot read property 'fetch' of undefined
    580 | const containerUrl = `${testFolderUrl}18/allOtherModes/`;
    581 | // This will do mkdir-p:
    > 582 | await solidLogicAlice.fetch(`${containerUrl}test.txt`, {
    | ^
    583 | method: 'PUT',
    584 | body: 'hello',
    585 | headers: {
    at test/surface/create.test.ts:582:29
    at step (test/surface/create.test.ts:33:23)
    at Object.next (test/surface/create.test.ts:14:53)
    at test/surface/create.test.ts:8:71
    at Object.<anonymous>.__awaiter (test/surface/create.test.ts:4:12)
    at Object.<anonymous> (test/surface/create.test.ts:579:47)
    ● Create › Using PATCH in non-existing container › is disallowed without default Write
    TypeError: Cannot read property 'recursiveDelete' of undefined
    52 | 53 | afterEach(() => {
    > 54 | return solidLogicAlice.recursiveDelete(testFolderUrl);
    | ^
    55 | });
    56 | 57 | describe('Using POST to existing container', () => {
    at Object.<anonymous> (test/surface/create.test.ts:54:28)
    ● Create › Using PATCH in non-existing container › is disallowed without accessTo Write or Append
    Please make sure the cookie is valid, and add "https://tester" as a trusted app!
    at Object.getAuthFetcher (node_modules/solid-auth-fetcher/src/obtainAuthHeaders.ts:51:13)
    ● Create › Using PATCH in non-existing container › is disallowed without accessTo Write or Append
    TypeError: Cannot read property 'fetch' of undefined
    610 | const containerUrl = `${testFolderUrl}19/allOtherModes/`;
    611 | // This will do mkdir-p:
    > 612 | await solidLogicAlice.fetch(`${containerUrl}test.txt`, {
    | ^
    613 | method: 'PUT',
    614 | body: 'hello',
    615 | headers: {
    at test/surface/create.test.ts:612:29
    at step (test/surface/create.test.ts:33:23)
    at Object.next (test/surface/create.test.ts:14:53)
    at test/surface/create.test.ts:8:71
    at Object.<anonymous>.__awaiter (test/surface/create.test.ts:4:12)
    at Object.<anonymous> (test/surface/create.test.ts:609:58)
    ● Create › Using PATCH in non-existing container › is disallowed without accessTo Write or Append
    TypeError: Cannot read property 'recursiveDelete' of undefined
    52 | 53 | afterEach(() => {
    > 54 | return solidLogicAlice.recursiveDelete(testFolderUrl);
    | ^
    55 | });
    56 | 57 | describe('Using POST to existing container', () => {
    at Object.<anonymous> (test/surface/create.test.ts:54:28)
    
  • test/surface/read-public.test.ts

    Details
    ● Console
    console.warn
    Adding slash to the end of ALICE's storage root ->"https://server/storage"+"/"
    25 | let storageRoot = getEnvVars(who).storageRoot;
    26 | if (storageRoot.substr(-1) !== '/') {
    > 27 | console.warn(`Adding slash to the end of ${who}'s storage root ->"${storageRoot}"+"/"`);
    | ^
    28 | storageRoot += '/';
    29 | }
    30 | const testFolder = `web-access-control-tests-${new Date().getTime()}`;
    at Object.generateTestFolder (test/helpers/env.ts:27:13)
    at Suite.<anonymous> (test/surface/read-public.test.ts:46:29)
    at Object.<anonymous> (test/surface/read-public.test.ts:38:1)
    ● Read-Public › Is allowed with accessTo Read access on non-container resource
    Please make sure the cookie is valid, and add "https://tester" as a trusted app!
    at Object.getAuthFetcher (node_modules/solid-auth-fetcher/src/obtainAuthHeaders.ts:51:13)
    ● Read-Public › Is allowed with accessTo Read access on non-container resource
    TypeError: Cannot read property 'fetch' of undefined
    57 | const resourceUrl = `${testFolderUrl}1/test.txt`;
    58 | // This will do mkdir-p:
    > 59 | const creationResult = await solidLogicAlice.fetch(resourceUrl, {
    | ^
    60 | method: 'PUT',
    61 | body: '<#hello> <#linked> <#world> .',
    62 | headers: {
    at test/surface/read-public.test.ts:59:51
    at step (test/surface/read-public.test.ts:33:23)
    at Object.next (test/surface/read-public.test.ts:14:53)
    at test/surface/read-public.test.ts:8:71
    at Object.<anonymous>.__awaiter (test/surface/read-public.test.ts:4:12)
    at Object.<anonymous> (test/surface/read-public.test.ts:56:72)
    ● Read-Public › Is allowed with accessTo Read access on non-container resource
    TypeError: Cannot read property 'recursiveDelete' of undefined
    52 | 53 | afterEach(() => {
    > 54 | return solidLogicAlice.recursiveDelete(testFolderUrl);
    | ^
    55 | });
    56 | it('Is allowed with accessTo Read access on non-container resource', async () => {
    57 | const resourceUrl = `${testFolderUrl}1/test.txt`;
    at Object.<anonymous> (test/surface/read-public.test.ts:54:28)
    ● Read-Public › Is disallowed with accessTo Append+Write+Control access on non-container resource
    Please make sure the cookie is valid, and add "https://tester" as a trusted app!
    at Object.getAuthFetcher (node_modules/solid-auth-fetcher/src/obtainAuthHeaders.ts:51:13)
    ● Read-Public › Is disallowed with accessTo Append+Write+Control access on non-container resource
    TypeError: Cannot read property 'fetch' of undefined
    80 | const resourceUrl = `${testFolderUrl}2/test.txt`;
    81 | // This will do mkdir-p:
    > 82 | const creationResult = await solidLogicAlice.fetch(resourceUrl, {
    | ^
    83 | method: 'PUT',
    84 | body: '<#hello> <#linked> <#world> .',
    85 | headers: {
    at test/surface/read-public.test.ts:82:51
    at step (test/surface/read-public.test.ts:33:23)
    at Object.next (test/surface/read-public.test.ts:14:53)
    at test/surface/read-public.test.ts:8:71
    at Object.<anonymous>.__awaiter (test/surface/read-public.test.ts:4:12)
    at Object.<anonymous> (test/surface/read-public.test.ts:79:91)
    ● Read-Public › Is disallowed with accessTo Append+Write+Control access on non-container resource
    TypeError: Cannot read property 'recursiveDelete' of undefined
    52 | 53 | afterEach(() => {
    > 54 | return solidLogicAlice.recursiveDelete(testFolderUrl);
    | ^
    55 | });
    56 | it('Is allowed with accessTo Read access on non-container resource', async () => {
    57 | const resourceUrl = `${testFolderUrl}1/test.txt`;
    at Object.<anonymous> (test/surface/read-public.test.ts:54:28)
    ● Read-Public › Is allowed with default Read access on parent of non-container
    Please make sure the cookie is valid, and add "https://tester" as a trusted app!
    at Object.getAuthFetcher (node_modules/solid-auth-fetcher/src/obtainAuthHeaders.ts:51:13)
    ● Read-Public › Is allowed with default Read access on parent of non-container
    TypeError: Cannot read property 'fetch' of undefined
    106 | const resourceUrl = `${containerUrl}test.txt`;
    107 | // This will do mkdir-p:
    > 108 | const creationResult = await solidLogicAlice.fetch(resourceUrl, {
    | ^
    109 | method: 'PUT',
    110 | body: '<#hello> <#linked> <#world> .',
    111 | headers: {
    at test/surface/read-public.test.ts:108:51
    at step (test/surface/read-public.test.ts:33:23)
    at Object.next (test/surface/read-public.test.ts:14:53)
    at test/surface/read-public.test.ts:8:71
    at Object.<anonymous>.__awaiter (test/surface/read-public.test.ts:4:12)
    at Object.<anonymous> (test/surface/read-public.test.ts:104:72)
    ● Read-Public › Is allowed with default Read access on parent of non-container
    TypeError: Cannot read property 'recursiveDelete' of undefined
    52 | 53 | afterEach(() => {
    > 54 | return solidLogicAlice.recursiveDelete(testFolderUrl);
    | ^
    55 | });
    56 | it('Is allowed with accessTo Read access on non-container resource', async () => {
    57 | const resourceUrl = `${testFolderUrl}1/test.txt`;
    at Object.<anonymous> (test/surface/read-public.test.ts:54:28)
    ● Read-Public › Is disallowed with default Append+Write+Control access on parent of non-container
    Please make sure the cookie is valid, and add "https://tester" as a trusted app!
    at Object.getAuthFetcher (node_modules/solid-auth-fetcher/src/obtainAuthHeaders.ts:51:13)
    ● Read-Public › Is disallowed with default Append+Write+Control access on parent of non-container
    TypeError: Cannot read property 'fetch' of undefined
    130 | const resourceUrl = `${containerUrl}test.txt`;
    131 | // This will do mkdir-p:
    > 132 | const creationResult = await solidLogicAlice.fetch(resourceUrl, {
    | ^
    133 | method: 'PUT',
    134 | body: '<#hello> <#linked> <#world> .',
    135 | headers: {
    at test/surface/read-public.test.ts:132:51
    at step (test/surface/read-public.test.ts:33:23)
    at Object.next (test/surface/read-public.test.ts:14:53)
    at test/surface/read-public.test.ts:8:71
    at Object.<anonymous>.__awaiter (test/surface/read-public.test.ts:4:12)
    at Object.<anonymous> (test/surface/read-public.test.ts:128:91)
    ● Read-Public › Is disallowed with default Append+Write+Control access on parent of non-container
    TypeError: Cannot read property 'recursiveDelete' of undefined
    52 | 53 | afterEach(() => {
    > 54 | return solidLogicAlice.recursiveDelete(testFolderUrl);
    | ^
    55 | });
    56 | it('Is allowed with accessTo Read access on non-container resource', async () => {
    57 | const resourceUrl = `${testFolderUrl}1/test.txt`;
    at Object.<anonymous> (test/surface/read-public.test.ts:54:28)
    ● Read-Public › Is allowed with accessTo Read access on container resource
    Please make sure the cookie is valid, and add "https://tester" as a trusted app!
    at Object.getAuthFetcher (node_modules/solid-auth-fetcher/src/obtainAuthHeaders.ts:51:13)
    ● Read-Public › Is allowed with accessTo Read access on container resource
    TypeError: Cannot read property 'fetch' of undefined
    154 | const resourceUrl = `${testFolderUrl}5/test/`;
    155 | // This will do mkdir-p:
    > 156 | const creationResult = await solidLogicAlice.fetch(`${resourceUrl}.dummy`, {
    | ^
    157 | method: 'PUT',
    158 | body: '<#hello> <#linked> <#world> .',
    159 | headers: {
    at test/surface/read-public.test.ts:156:51
    at step (test/surface/read-public.test.ts:33:23)
    at Object.next (test/surface/read-public.test.ts:14:53)
    at test/surface/read-public.test.ts:8:71
    at Object.<anonymous>.__awaiter (test/surface/read-public.test.ts:4:12)
    at Object.<anonymous> (test/surface/read-public.test.ts:153:68)
    ● Read-Public › Is allowed with accessTo Read access on container resource
    TypeError: Cannot read property 'recursiveDelete' of undefined
    52 | 53 | afterEach(() => {
    > 54 | return solidLogicAlice.recursiveDelete(testFolderUrl);
    | ^
    55 | });
    56 | it('Is allowed with accessTo Read access on non-container resource', async () => {
    57 | const resourceUrl = `${testFolderUrl}1/test.txt`;
    at Object.<anonymous> (test/surface/read-public.test.ts:54:28)
    ● Read-Public › Is disallowed with accessTo Append+Write+Control access on non-container resource
    Please make sure the cookie is valid, and add "https://tester" as a trusted app!
    at Object.getAuthFetcher (node_modules/solid-auth-fetcher/src/obtainAuthHeaders.ts:51:13)
    ● Read-Public › Is disallowed with accessTo Append+Write+Control access on non-container resource
    TypeError: Cannot read property 'fetch' of undefined
    178 | const resourceUrl = `${testFolderUrl}6/test/`;
    179 | // This will do mkdir-p:
    > 180 | const creationResult = await solidLogicAlice.fetch(`${resourceUrl}.dummy`, {
    | ^
    181 | method: 'PUT',
    182 | body: '<#hello> <#linked> <#world> .',
    183 | headers: {
    at test/surface/read-public.test.ts:180:51
    at step (test/surface/read-public.test.ts:33:23)
    at Object.next (test/surface/read-public.test.ts:14:53)
    at test/surface/read-public.test.ts:8:71
    at Object.<anonymous>.__awaiter (test/surface/read-public.test.ts:4:12)
    at Object.<anonymous> (test/surface/read-public.test.ts:177:91)
    ● Read-Public › Is disallowed with accessTo Append+Write+Control access on non-container resource
    TypeError: Cannot read property 'recursiveDelete' of undefined
    52 | 53 | afterEach(() => {
    > 54 | return solidLogicAlice.recursiveDelete(testFolderUrl);
    | ^
    55 | });
    56 | it('Is allowed with accessTo Read access on non-container resource', async () => {
    57 | const resourceUrl = `${testFolderUrl}1/test.txt`;
    at Object.<anonymous> (test/surface/read-public.test.ts:54:28)
    ● Read-Public › Is allowed with default Read access on parent of container
    Please make sure the cookie is valid, and add "https://tester" as a trusted app!
    at Object.getAuthFetcher (node_modules/solid-auth-fetcher/src/obtainAuthHeaders.ts:51:13)
    ● Read-Public › Is allowed with default Read access on parent of container
    TypeError: Cannot read property 'fetch' of undefined
    203 | const resourceUrl = `${containerUrl}test/`;
    204 | // This will do mkdir-p:
    > 205 | const creationResult = await solidLogicAlice.fetch(`${resourceUrl}.dummy`, {
    | ^
    206 | method: 'PUT',
    207 | body: '<#hello> <#linked> <#world> .',
    208 | headers: {
    at test/surface/read-public.test.ts:205:51
    at step (test/surface/read-public.test.ts:33:23)
    at Object.next (test/surface/read-public.test.ts:14:53)
    at test/surface/read-public.test.ts:8:71
    at Object.<anonymous>.__awaiter (test/surface/read-public.test.ts:4:12)
    at Object.<anonymous> (test/surface/read-public.test.ts:201:68)
    ● Read-Public › Is allowed with default Read access on parent of container
    TypeError: Cannot read property 'recursiveDelete' of undefined
    52 | 53 | afterEach(() => {
    > 54 | return solidLogicAlice.recursiveDelete(testFolderUrl);
    | ^
    55 | });
    56 | it('Is allowed with accessTo Read access on non-container resource', async () => {
    57 | const resourceUrl = `${testFolderUrl}1/test.txt`;
    at Object.<anonymous> (test/surface/read-public.test.ts:54:28)
    ● Read-Public › Is disallowed with default Append+Write+Control access on parent of non-container
    Please make sure the cookie is valid, and add "https://tester" as a trusted app!
    at Object.getAuthFetcher (node_modules/solid-auth-fetcher/src/obtainAuthHeaders.ts:51:13)
    ● Read-Public › Is disallowed with default Append+Write+Control access on parent of non-container
    TypeError: Cannot read property 'fetch' of undefined
    228 | const resourceUrl = `${containerUrl}test/`;
    229 | // This will do mkdir-p:
    > 230 | const creationResult = await solidLogicAlice.fetch(`${resourceUrl}.dummy`, {
    | ^
    231 | method: 'PUT',
    232 | body: '<#hello> <#linked> <#world> .',
    233 | headers: {
    at test/surface/read-public.test.ts:230:51
    at step (test/surface/read-public.test.ts:33:23)
    at Object.next (test/surface/read-public.test.ts:14:53)
    at test/surface/read-public.test.ts:8:71
    at Object.<anonymous>.__awaiter (test/surface/read-public.test.ts:4:12)
    at Object.<anonymous> (test/surface/read-public.test.ts:226:91)
    ● Read-Public › Is disallowed with default Append+Write+Control access on parent of non-container
    TypeError: Cannot read property 'recursiveDelete' of undefined
    52 | 53 | afterEach(() => {
    > 54 | return solidLogicAlice.recursiveDelete(testFolderUrl);
    | ^
    55 | });
    56 | it('Is allowed with accessTo Read access on non-container resource', async () => {
    57 | const resourceUrl = `${testFolderUrl}1/test.txt`;
    at Object.<anonymous> (test/surface/read-public.test.ts:54:28)
    
  • test/surface/read.test.ts

    Details
    ● Console
    console.warn
    Adding slash to the end of ALICE's storage root ->"https://server/storage"+"/"
    25 | let storageRoot = getEnvVars(who).storageRoot;
    26 | if (storageRoot.substr(-1) !== '/') {
    > 27 | console.warn(`Adding slash to the end of ${who}'s storage root ->"${storageRoot}"+"/"`);
    | ^
    28 | storageRoot += '/';
    29 | }
    30 | const testFolder = `web-access-control-tests-${new Date().getTime()}`;
    at Object.generateTestFolder (test/helpers/env.ts:27:13)
    at Suite.<anonymous> (test/surface/read.test.ts:46:29)
    at Object.<anonymous> (test/surface/read.test.ts:38:1)
    ● Read › Is allowed with accessTo Read access on non-container resource
    Please make sure the cookie is valid, and add "https://tester" as a trusted app!
    at Object.getAuthFetcher (node_modules/solid-auth-fetcher/src/obtainAuthHeaders.ts:51:13)
    ● Read › Is allowed with accessTo Read access on non-container resource
    TypeError: Cannot read property 'fetch' of undefined
    57 | const resourceUrl = `${testFolderUrl}1/test.txt`;
    58 | // This will do mkdir-p:
    > 59 | const creationResult = await solidLogicAlice.fetch(resourceUrl, {
    | ^
    60 | method: 'PUT',
    61 | body: '<#hello> <#linked> <#world> .',
    62 | headers: {
    at test/surface/read.test.ts:59:51
    at step (test/surface/read.test.ts:33:23)
    at Object.next (test/surface/read.test.ts:14:53)
    at test/surface/read.test.ts:8:71
    at Object.<anonymous>.__awaiter (test/surface/read.test.ts:4:12)
    at Object.<anonymous> (test/surface/read.test.ts:56:72)
    ● Read › Is allowed with accessTo Read access on non-container resource
    TypeError: Cannot read property 'recursiveDelete' of undefined
    52 | 53 | afterEach(() => {
    > 54 | return solidLogicAlice.recursiveDelete(testFolderUrl);
    | ^
    55 | });
    56 | it('Is allowed with accessTo Read access on non-container resource', async () => {
    57 | const resourceUrl = `${testFolderUrl}1/test.txt`;
    at Object.<anonymous> (test/surface/read.test.ts:54:28)
    ● Read › Is disallowed with accessTo Append+Write+Control access on non-container resource
    Please make sure the cookie is valid, and add "https://tester" as a trusted app!
    at Object.getAuthFetcher (node_modules/solid-auth-fetcher/src/obtainAuthHeaders.ts:51:13)
    ● Read › Is disallowed with accessTo Append+Write+Control access on non-container resource
    TypeError: Cannot read property 'fetch' of undefined
    80 | const resourceUrl = `${testFolderUrl}2/test.txt`;
    81 | // This will do mkdir-p:
    > 82 | const creationResult = await solidLogicAlice.fetch(resourceUrl, {
    | ^
    83 | method: 'PUT',
    84 | body: '<#hello> <#linked> <#world> .',
    85 | headers: {
    at test/surface/read.test.ts:82:51
    at step (test/surface/read.test.ts:33:23)
    at Object.next (test/surface/read.test.ts:14:53)
    at test/surface/read.test.ts:8:71
    at Object.<anonymous>.__awaiter (test/surface/read.test.ts:4:12)
    at Object.<anonymous> (test/surface/read.test.ts:79:91)
    ● Read › Is disallowed with accessTo Append+Write+Control access on non-container resource
    TypeError: Cannot read property 'recursiveDelete' of undefined
    52 | 53 | afterEach(() => {
    > 54 | return solidLogicAlice.recursiveDelete(testFolderUrl);
    | ^
    55 | });
    56 | it('Is allowed with accessTo Read access on non-container resource', async () => {
    57 | const resourceUrl = `${testFolderUrl}1/test.txt`;
    at Object.<anonymous> (test/surface/read.test.ts:54:28)
    ● Read › Is allowed with default Read access on parent of non-container
    Please make sure the cookie is valid, and add "https://tester" as a trusted app!
    at Object.getAuthFetcher (node_modules/solid-auth-fetcher/src/obtainAuthHeaders.ts:51:13)
    ● Read › Is allowed with default Read access on parent of non-container
    TypeError: Cannot read property 'fetch' of undefined
    106 | const resourceUrl = `${containerUrl}test.txt`;
    107 | // This will do mkdir-p:
    > 108 | const creationResult = await solidLogicAlice.fetch(resourceUrl, {
    | ^
    109 | method: 'PUT',
    110 | body: '<#hello> <#linked> <#world> .',
    111 | headers: {
    at test/surface/read.test.ts:108:51
    at step (test/surface/read.test.ts:33:23)
    at Object.next (test/surface/read.test.ts:14:53)
    at test/surface/read.test.ts:8:71
    at Object.<anonymous>.__awaiter (test/surface/read.test.ts:4:12)
    at Object.<anonymous> (test/surface/read.test.ts:104:72)
    ● Read › Is allowed with default Read access on parent of non-container
    TypeError: Cannot read property 'recursiveDelete' of undefined
    52 | 53 | afterEach(() => {
    > 54 | return solidLogicAlice.recursiveDelete(testFolderUrl);
    | ^
    55 | });
    56 | it('Is allowed with accessTo Read access on non-container resource', async () => {
    57 | const resourceUrl = `${testFolderUrl}1/test.txt`;
    at Object.<anonymous> (test/surface/read.test.ts:54:28)
    ● Read › Is disallowed with default Append+Write+Control access on parent of non-container
    Please make sure the cookie is valid, and add "https://tester" as a trusted app!
    at Object.getAuthFetcher (node_modules/solid-auth-fetcher/src/obtainAuthHeaders.ts:51:13)
    ● Read › Is disallowed with default Append+Write+Control access on parent of non-container
    TypeError: Cannot read property 'fetch' of undefined
    130 | const resourceUrl = `${containerUrl}test.txt`;
    131 | // This will do mkdir-p:
    > 132 | const creationResult = await solidLogicAlice.fetch(resourceUrl, {
    | ^
    133 | method: 'PUT',
    134 | body: '<#hello> <#linked> <#world> .',
    135 | headers: {
    at test/surface/read.test.ts:132:51
    at step (test/surface/read.test.ts:33:23)
    at Object.next (test/surface/read.test.ts:14:53)
    at test/surface/read.test.ts:8:71
    at Object.<anonymous>.__awaiter (test/surface/read.test.ts:4:12)
    at Object.<anonymous> (test/surface/read.test.ts:128:91)
    ● Read › Is disallowed with default Append+Write+Control access on parent of non-container
    TypeError: Cannot read property 'recursiveDelete' of undefined
    52 | 53 | afterEach(() => {
    > 54 | return solidLogicAlice.recursiveDelete(testFolderUrl);
    | ^
    55 | });
    56 | it('Is allowed with accessTo Read access on non-container resource', async () => {
    57 | const resourceUrl = `${testFolderUrl}1/test.txt`;
    at Object.<anonymous> (test/surface/read.test.ts:54:28)
    ● Read › Is allowed with accessTo Read access on container resource
    Please make sure the cookie is valid, and add "https://tester" as a trusted app!
    at Object.getAuthFetcher (node_modules/solid-auth-fetcher/src/obtainAuthHeaders.ts:51:13)
    ● Read › Is allowed with accessTo Read access on container resource
    TypeError: Cannot read property 'fetch' of undefined
    154 | const resourceUrl = `${testFolderUrl}5/test/`;
    155 | // This will do mkdir-p:
    > 156 | const creationResult = await solidLogicAlice.fetch(`${resourceUrl}.dummy`, {
    | ^
    157 | method: 'PUT',
    158 | body: '<#hello> <#linked> <#world> .',
    159 | headers: {
    at test/surface/read.test.ts:156:51
    at step (test/surface/read.test.ts:33:23)
    at Object.next (test/surface/read.test.ts:14:53)
    at test/surface/read.test.ts:8:71
    at Object.<anonymous>.__awaiter (test/surface/read.test.ts:4:12)
    at Object.<anonymous> (test/surface/read.test.ts:153:68)
    ● Read › Is allowed with accessTo Read access on container resource
    TypeError: Cannot read property 'recursiveDelete' of undefined
    52 | 53 | afterEach(() => {
    > 54 | return solidLogicAlice.recursiveDelete(testFolderUrl);
    | ^
    55 | });
    56 | it('Is allowed with accessTo Read access on non-container resource', async () => {
    57 | const resourceUrl = `${testFolderUrl}1/test.txt`;
    at Object.<anonymous> (test/surface/read.test.ts:54:28)
    ● Read › Is disallowed with accessTo Append+Write+Control access on non-container resource
    Please make sure the cookie is valid, and add "https://tester" as a trusted app!
    at Object.getAuthFetcher (node_modules/solid-auth-fetcher/src/obtainAuthHeaders.ts:51:13)
    ● Read › Is disallowed with accessTo Append+Write+Control access on non-container resource
    TypeError: Cannot read property 'fetch' of undefined
    178 | const resourceUrl = `${testFolderUrl}6/test/`;
    179 | // This will do mkdir-p:
    > 180 | const creationResult = await solidLogicAlice.fetch(`${resourceUrl}.dummy`, {
    | ^
    181 | method: 'PUT',
    182 | body: '<#hello> <#linked> <#world> .',
    183 | headers: {
    at test/surface/read.test.ts:180:51
    at step (test/surface/read.test.ts:33:23)
    at Object.next (test/surface/read.test.ts:14:53)
    at test/surface/read.test.ts:8:71
    at Object.<anonymous>.__awaiter (test/surface/read.test.ts:4:12)
    at Object.<anonymous> (test/surface/read.test.ts:177:91)
    ● Read › Is disallowed with accessTo Append+Write+Control access on non-container resource
    TypeError: Cannot read property 'recursiveDelete' of undefined
    52 | 53 | afterEach(() => {
    > 54 | return solidLogicAlice.recursiveDelete(testFolderUrl);
    | ^
    55 | });
    56 | it('Is allowed with accessTo Read access on non-container resource', async () => {
    57 | const resourceUrl = `${testFolderUrl}1/test.txt`;
    at Object.<anonymous> (test/surface/read.test.ts:54:28)
    ● Read › Is allowed with default Read access on parent of container
    Please make sure the cookie is valid, and add "https://tester" as a trusted app!
    at Object.getAuthFetcher (node_modules/solid-auth-fetcher/src/obtainAuthHeaders.ts:51:13)
    ● Read › Is allowed with default Read access on parent of container
    TypeError: Cannot read property 'fetch' of undefined
    203 | const resourceUrl = `${containerUrl}test/`;
    204 | // This will do mkdir-p:
    > 205 | const creationResult = await solidLogicAlice.fetch(`${resourceUrl}.dummy`, {
    | ^
    206 | method: 'PUT',
    207 | body: '<#hello> <#linked> <#world> .',
    208 | headers: {
    at test/surface/read.test.ts:205:51
    at step (test/surface/read.test.ts:33:23)
    at Object.next (test/surface/read.test.ts:14:53)
    at test/surface/read.test.ts:8:71
    at Object.<anonymous>.__awaiter (test/surface/read.test.ts:4:12)
    at Object.<anonymous> (test/surface/read.test.ts:201:68)
    ● Read › Is allowed with default Read access on parent of container
    TypeError: Cannot read property 'recursiveDelete' of undefined
    52 | 53 | afterEach(() => {
    > 54 | return solidLogicAlice.recursiveDelete(testFolderUrl);
    | ^
    55 | });
    56 | it('Is allowed with accessTo Read access on non-container resource', async () => {
    57 | const resourceUrl = `${testFolderUrl}1/test.txt`;
    at Object.<anonymous> (test/surface/read.test.ts:54:28)
    ● Read › Is disallowed with default Append+Write+Control access on parent of non-container
    Please make sure the cookie is valid, and add "https://tester" as a trusted app!
    at Object.getAuthFetcher (node_modules/solid-auth-fetcher/src/obtainAuthHeaders.ts:51:13)
    ● Read › Is disallowed with default Append+Write+Control access on parent of non-container
    TypeError: Cannot read property 'fetch' of undefined
    228 | const resourceUrl = `${containerUrl}test/`;
    229 | // This will do mkdir-p:
    > 230 | const creationResult = await solidLogicAlice.fetch(`${resourceUrl}.dummy`, {
    | ^
    231 | method: 'PUT',
    232 | body: '<#hello> <#linked> <#world> .',
    233 | headers: {
    at test/surface/read.test.ts:230:51
    at step (test/surface/read.test.ts:33:23)
    at Object.next (test/surface/read.test.ts:14:53)
    at test/surface/read.test.ts:8:71
    at Object.<anonymous>.__awaiter (test/surface/read.test.ts:4:12)
    at Object.<anonymous> (test/surface/read.test.ts:226:91)
    ● Read › Is disallowed with default Append+Write+Control access on parent of non-container
    TypeError: Cannot read property 'recursiveDelete' of undefined
    52 | 53 | afterEach(() => {
    > 54 | return solidLogicAlice.recursiveDelete(testFolderUrl);
    | ^
    55 | });
    56 | it('Is allowed with accessTo Read access on non-container resource', async () => {
    57 | const resourceUrl = `${testFolderUrl}1/test.txt`;
    at Object.<anonymous> (test/surface/read.test.ts:54:28)
    
  • test/surface/read-logged_in.test.ts

    Details
    ● Console
    console.warn
    Adding slash to the end of ALICE's storage root ->"https://server/storage"+"/"
    25 | let storageRoot = getEnvVars(who).storageRoot;
    26 | if (storageRoot.substr(-1) !== '/') {
    > 27 | console.warn(`Adding slash to the end of ${who}'s storage root ->"${storageRoot}"+"/"`);
    | ^
    28 | storageRoot += '/';
    29 | }
    30 | const testFolder = `web-access-control-tests-${new Date().getTime()}`;
    at Object.generateTestFolder (test/helpers/env.ts:27:13)
    at Suite.<anonymous> (test/surface/read-logged_in.test.ts:44:29)
    at Object.<anonymous> (test/surface/read-logged_in.test.ts:36:1)
    ● Read-LoggedIn › Is allowed with accessTo Read access on non-container resource
    Please make sure the cookie is valid, and add "https://tester" as a trusted app!
    at Object.getAuthFetcher (node_modules/solid-auth-fetcher/src/obtainAuthHeaders.ts:51:13)
    ● Read-LoggedIn › Is allowed with accessTo Read access on non-container resource
    TypeError: Cannot read property 'fetch' of undefined
    55 | const resourceUrl = `${testFolderUrl}1/test.txt`;
    56 | // This will do mkdir-p:
    > 57 | const creationResult = await solidLogicAlice.fetch(resourceUrl, {
    | ^
    58 | method: 'PUT',
    59 | body: '<#hello> <#linked> <#world> .',
    60 | headers: {
    at test/surface/read-logged_in.test.ts:57:51
    at step (test/surface/read-logged_in.test.ts:33:23)
    at Object.next (test/surface/read-logged_in.test.ts:14:53)
    at test/surface/read-logged_in.test.ts:8:71
    at Object.<anonymous>.__awaiter (test/surface/read-logged_in.test.ts:4:12)
    at Object.<anonymous> (test/surface/read-logged_in.test.ts:54:72)
    ● Read-LoggedIn › Is allowed with accessTo Read access on non-container resource
    TypeError: Cannot read property 'recursiveDelete' of undefined
    50 | 51 | afterEach(() => {
    > 52 | return solidLogicAlice.recursiveDelete(testFolderUrl);
    | ^
    53 | });
    54 | it('Is allowed with accessTo Read access on non-container resource', async () => {
    55 | const resourceUrl = `${testFolderUrl}1/test.txt`;
    at Object.<anonymous> (test/surface/read-logged_in.test.ts:52:28)
    ● Read-LoggedIn › Is disallowed with accessTo Append+Write+Control access on non-container resource
    Please make sure the cookie is valid, and add "https://tester" as a trusted app!
    at Object.getAuthFetcher (node_modules/solid-auth-fetcher/src/obtainAuthHeaders.ts:51:13)
    ● Read-LoggedIn › Is disallowed with accessTo Append+Write+Control access on non-container resource
    TypeError: Cannot read property 'fetch' of undefined
    78 | const resourceUrl = `${testFolderUrl}2/test.txt`;
    79 | // This will do mkdir-p:
    > 80 | const creationResult = await solidLogicAlice.fetch(resourceUrl, {
    | ^
    81 | method: 'PUT',
    82 | body: '<#hello> <#linked> <#world> .',
    83 | headers: {
    at test/surface/read-logged_in.test.ts:80:51
    at step (test/surface/read-logged_in.test.ts:33:23)
    at Object.next (test/surface/read-logged_in.test.ts:14:53)
    at test/surface/read-logged_in.test.ts:8:71
    at Object.<anonymous>.__awaiter (test/surface/read-logged_in.test.ts:4:12)
    at Object.<anonymous> (test/surface/read-logged_in.test.ts:77:91)
    ● Read-LoggedIn › Is disallowed with accessTo Append+Write+Control access on non-container resource
    TypeError: Cannot read property 'recursiveDelete' of undefined
    50 | 51 | afterEach(() => {
    > 52 | return solidLogicAlice.recursiveDelete(testFolderUrl);
    | ^
    53 | });
    54 | it('Is allowed with accessTo Read access on non-container resource', async () => {
    55 | const resourceUrl = `${testFolderUrl}1/test.txt`;
    at Object.<anonymous> (test/surface/read-logged_in.test.ts:52:28)
    ● Read-LoggedIn › Is allowed with default Read access on parent of non-container
    Please make sure the cookie is valid, and add "https://tester" as a trusted app!
    at Object.getAuthFetcher (node_modules/solid-auth-fetcher/src/obtainAuthHeaders.ts:51:13)
    ● Read-LoggedIn › Is allowed with default Read access on parent of non-container
    TypeError: Cannot read property 'fetch' of undefined
    104 | const resourceUrl = `${containerUrl}test.txt`;
    105 | // This will do mkdir-p:
    > 106 | const creationResult = await solidLogicAlice.fetch(resourceUrl, {
    | ^
    107 | method: 'PUT',
    108 | body: '<#hello> <#linked> <#world> .',
    109 | headers: {
    at test/surface/read-logged_in.test.ts:106:51
    at step (test/surface/read-logged_in.test.ts:33:23)
    at Object.next (test/surface/read-logged_in.test.ts:14:53)
    at test/surface/read-logged_in.test.ts:8:71
    at Object.<anonymous>.__awaiter (test/surface/read-logged_in.test.ts:4:12)
    at Object.<anonymous> (test/surface/read-logged_in.test.ts:102:72)
    ● Read-LoggedIn › Is allowed with default Read access on parent of non-container
    TypeError: Cannot read property 'recursiveDelete' of undefined
    50 | 51 | afterEach(() => {
    > 52 | return solidLogicAlice.recursiveDelete(testFolderUrl);
    | ^
    53 | });
    54 | it('Is allowed with accessTo Read access on non-container resource', async () => {
    55 | const resourceUrl = `${testFolderUrl}1/test.txt`;
    at Object.<anonymous> (test/surface/read-logged_in.test.ts:52:28)
    ● Read-LoggedIn › Is disallowed with default Append+Write+Control access on parent of non-container
    Please make sure the cookie is valid, and add "https://tester" as a trusted app!
    at Object.getAuthFetcher (node_modules/solid-auth-fetcher/src/obtainAuthHeaders.ts:51:13)
    ● Read-LoggedIn › Is disallowed with default Append+Write+Control access on parent of non-container
    TypeError: Cannot read property 'fetch' of undefined
    128 | const resourceUrl = `${containerUrl}test.txt`;
    129 | // This will do mkdir-p:
    > 130 | const creationResult = await solidLogicAlice.fetch(resourceUrl, {
    | ^
    131 | method: 'PUT',
    132 | body: '<#hello> <#linked> <#world> .',
    133 | headers: {
    at test/surface/read-logged_in.test.ts:130:51
    at step (test/surface/read-logged_in.test.ts:33:23)
    at Object.next (test/surface/read-logged_in.test.ts:14:53)
    at test/surface/read-logged_in.test.ts:8:71
    at Object.<anonymous>.__awaiter (test/surface/read-logged_in.test.ts:4:12)
    at Object.<anonymous> (test/surface/read-logged_in.test.ts:126:91)
    ● Read-LoggedIn › Is disallowed with default Append+Write+Control access on parent of non-container
    TypeError: Cannot read property 'recursiveDelete' of undefined
    50 | 51 | afterEach(() => {
    > 52 | return solidLogicAlice.recursiveDelete(testFolderUrl);
    | ^
    53 | });
    54 | it('Is allowed with accessTo Read access on non-container resource', async () => {
    55 | const resourceUrl = `${testFolderUrl}1/test.txt`;
    at Object.<anonymous> (test/surface/read-logged_in.test.ts:52:28)
    ● Read-LoggedIn › Is allowed with accessTo Read access on container resource
    Please make sure the cookie is valid, and add "https://tester" as a trusted app!
    at Object.getAuthFetcher (node_modules/solid-auth-fetcher/src/obtainAuthHeaders.ts:51:13)
    ● Read-LoggedIn › Is allowed with accessTo Read access on container resource
    TypeError: Cannot read property 'fetch' of undefined
    152 | const resourceUrl = `${testFolderUrl}5/test/`;
    153 | // This will do mkdir-p:
    > 154 | const creationResult = await solidLogicAlice.fetch(`${resourceUrl}.dummy`, {
    | ^
    155 | method: 'PUT',
    156 | body: '<#hello> <#linked> <#world> .',
    157 | headers: {
    at test/surface/read-logged_in.test.ts:154:51
    at step (test/surface/read-logged_in.test.ts:33:23)
    at Object.next (test/surface/read-logged_in.test.ts:14:53)
    at test/surface/read-logged_in.test.ts:8:71
    at Object.<anonymous>.__awaiter (test/surface/read-logged_in.test.ts:4:12)
    at Object.<anonymous> (test/surface/read-logged_in.test.ts:151:68)
    ● Read-LoggedIn › Is allowed with accessTo Read access on container resource
    TypeError: Cannot read property 'recursiveDelete' of undefined
    50 | 51 | afterEach(() => {
    > 52 | return solidLogicAlice.recursiveDelete(testFolderUrl);
    | ^
    53 | });
    54 | it('Is allowed with accessTo Read access on non-container resource', async () => {
    55 | const resourceUrl = `${testFolderUrl}1/test.txt`;
    at Object.<anonymous> (test/surface/read-logged_in.test.ts:52:28)
    ● Read-LoggedIn › Is disallowed with accessTo Append+Write+Control access on non-container resource
    Please make sure the cookie is valid, and add "https://tester" as a trusted app!
    at Object.getAuthFetcher (node_modules/solid-auth-fetcher/src/obtainAuthHeaders.ts:51:13)
    ● Read-LoggedIn › Is disallowed with accessTo Append+Write+Control access on non-container resource
    TypeError: Cannot read property 'fetch' of undefined
    176 | const resourceUrl = `${testFolderUrl}6/test/`;
    177 | // This will do mkdir-p:
    > 178 | const creationResult = await solidLogicAlice.fetch(`${resourceUrl}.dummy`, {
    | ^
    179 | method: 'PUT',
    180 | body: '<#hello> <#linked> <#world> .',
    181 | headers: {
    at test/surface/read-logged_in.test.ts:178:51
    at step (test/surface/read-logged_in.test.ts:33:23)
    at Object.next (test/surface/read-logged_in.test.ts:14:53)
    at test/surface/read-logged_in.test.ts:8:71
    at Object.<anonymous>.__awaiter (test/surface/read-logged_in.test.ts:4:12)
    at Object.<anonymous> (test/surface/read-logged_in.test.ts:175:91)
    ● Read-LoggedIn › Is disallowed with accessTo Append+Write+Control access on non-container resource
    TypeError: Cannot read property 'recursiveDelete' of undefined
    50 | 51 | afterEach(() => {
    > 52 | return solidLogicAlice.recursiveDelete(testFolderUrl);
    | ^
    53 | });
    54 | it('Is allowed with accessTo Read access on non-container resource', async () => {
    55 | const resourceUrl = `${testFolderUrl}1/test.txt`;
    at Object.<anonymous> (test/surface/read-logged_in.test.ts:52:28)
    ● Read-LoggedIn › Is allowed with default Read access on parent of container
    Please make sure the cookie is valid, and add "https://tester" as a trusted app!
    at Object.getAuthFetcher (node_modules/solid-auth-fetcher/src/obtainAuthHeaders.ts:51:13)
    ● Read-LoggedIn › Is allowed with default Read access on parent of container
    TypeError: Cannot read property 'fetch' of undefined
    201 | const resourceUrl = `${containerUrl}test/`;
    202 | // This will do mkdir-p:
    > 203 | const creationResult = await solidLogicAlice.fetch(`${resourceUrl}.dummy`, {
    | ^
    204 | method: 'PUT',
    205 | body: '<#hello> <#linked> <#world> .',
    206 | headers: {
    at test/surface/read-logged_in.test.ts:203:51
    at step (test/surface/read-logged_in.test.ts:33:23)
    at Object.next (test/surface/read-logged_in.test.ts:14:53)
    at test/surface/read-logged_in.test.ts:8:71
    at Object.<anonymous>.__awaiter (test/surface/read-logged_in.test.ts:4:12)
    at Object.<anonymous> (test/surface/read-logged_in.test.ts:199:68)
    ● Read-LoggedIn › Is allowed with default Read access on parent of container
    TypeError: Cannot read property 'recursiveDelete' of undefined
    50 | 51 | afterEach(() => {
    > 52 | return solidLogicAlice.recursiveDelete(testFolderUrl);
    | ^
    53 | });
    54 | it('Is allowed with accessTo Read access on non-container resource', async () => {
    55 | const resourceUrl = `${testFolderUrl}1/test.txt`;
    at Object.<anonymous> (test/surface/read-logged_in.test.ts:52:28)
    ● Read-LoggedIn › Is disallowed with default Append+Write+Control access on parent of non-container
    Please make sure the cookie is valid, and add "https://tester" as a trusted app!
    at Object.getAuthFetcher (node_modules/solid-auth-fetcher/src/obtainAuthHeaders.ts:51:13)
    ● Read-LoggedIn › Is disallowed with default Append+Write+Control access on parent of non-container
    TypeError: Cannot read property 'fetch' of undefined
    226 | const resourceUrl = `${containerUrl}test/`;
    227 | // This will do mkdir-p:
    > 228 | const creationResult = await solidLogicAlice.fetch(`${resourceUrl}.dummy`, {
    | ^
    229 | method: 'PUT',
    230 | body: '<#hello> <#linked> <#world> .',
    231 | headers: {
    at test/surface/read-logged_in.test.ts:228:51
    at step (test/surface/read-logged_in.test.ts:33:23)
    at Object.next (test/surface/read-logged_in.test.ts:14:53)
    at test/surface/read-logged_in.test.ts:8:71
    at Object.<anonymous>.__awaiter (test/surface/read-logged_in.test.ts:4:12)
    at Object.<anonymous> (test/surface/read-logged_in.test.ts:224:91)
    ● Read-LoggedIn › Is disallowed with default Append+Write+Control access on parent of non-container
    TypeError: Cannot read property 'recursiveDelete' of undefined
    50 | 51 | afterEach(() => {
    > 52 | return solidLogicAlice.recursiveDelete(testFolderUrl);
    | ^
    53 | });
    54 | it('Is allowed with accessTo Read access on non-container resource', async () => {
    55 | const resourceUrl = `${testFolderUrl}1/test.txt`;
    at Object.<anonymous> (test/surface/read-logged_in.test.ts:52:28)
    
  • test/surface/wac-allow.test.ts

    Details
    ● Console
    console.warn
    Adding slash to the end of ALICE's storage root ->"https://server/storage"+"/"
    25 | let storageRoot = getEnvVars(who).storageRoot;
    26 | if (storageRoot.substr(-1) !== '/') {
    > 27 | console.warn(`Adding slash to the end of ${who}'s storage root ->"${storageRoot}"+"/"`);
    | ^
    28 | storageRoot += '/';
    29 | }
    30 | const testFolder = `web-access-control-tests-${new Date().getTime()}`;
    at Object.generateTestFolder (test/helpers/env.ts:27:13)
    at Suite.<anonymous> (test/surface/wac-allow.test.ts:80:29)
    at Object.<anonymous> (test/surface/wac-allow.test.ts:72:1)
    console.warn
    Adding slash to the end of ALICE's storage root ->"https://server/storage"+"/"
    25 | let storageRoot = getEnvVars(who).storageRoot;
    26 | if (storageRoot.substr(-1) !== '/') {
    > 27 | console.warn(`Adding slash to the end of ${who}'s storage root ->"${storageRoot}"+"/"`);
    | ^
    28 | storageRoot += '/';
    29 | }
    30 | const testFolder = `web-access-control-tests-${new Date().getTime()}`;
    at Object.generateTestFolder (test/helpers/env.ts:27:13)
    at Suite.<anonymous> (test/surface/wac-allow.test.ts:159:29)
    at Object.<anonymous> (test/surface/wac-allow.test.ts:151:1)
    ● From accessTo › Public accessTo Read › Shows the correct WAC-Allow header to Bob
    Please make sure the cookie is valid, and add "https://tester" as a trusted app!
    at Object.getAuthFetcher (node_modules/solid-auth-fetcher/src/obtainAuthHeaders.ts:51:13)
    ● From accessTo › Public accessTo Read › Shows the correct WAC-Allow header to Bob
    TypeError: Cannot read property 'fetch' of undefined
    88 | const containerUrl = `${testFolderUrl}1/publicRead/`;
    89 | // This will do mkdir-p:
    > 90 | await solidLogicAlice.fetch(`${containerUrl}test.txt`, {
    | ^
    91 | method: 'PUT',
    92 | body: 'hello',
    93 | headers: {
    at test/surface/wac-allow.test.ts:90:29
    at step (test/surface/wac-allow.test.ts:33:23)
    at Object.next (test/surface/wac-allow.test.ts:14:53)
    at test/surface/wac-allow.test.ts:8:71
    at Object.<anonymous>.__awaiter (test/surface/wac-allow.test.ts:4:12)
    at Object.<anonymous> (test/surface/wac-allow.test.ts:87:15)
    ● From accessTo › Public accessTo Read › Shows the correct WAC-Allow header to Bob
    TypeError: Cannot read property 'fetch' of undefined
    107 | });
    108 | it(`Shows the correct WAC-Allow header to Bob`, async () => {
    > 109 | const result = await solidLogicBob.fetch(`${testFolderUrl}1/publicRead/`);
    | ^
    110 | expect(sortWac(result.headers.get('WAC-Allow'))).toEqual(sortWac('user="read",public="read"'));
    111 | });
    112 | it(`Shows the correct WAC-Allow header to the public`, async () => {
    at test/surface/wac-allow.test.ts:109:42
    at step (test/surface/wac-allow.test.ts:33:23)
    at Object.next (test/surface/wac-allow.test.ts:14:53)
    at test/surface/wac-allow.test.ts:8:71
    at Object.<anonymous>.__awaiter (test/surface/wac-allow.test.ts:4:12)
    at Object.<anonymous> (test/surface/wac-allow.test.ts:108:53)
    ● From accessTo › Public accessTo Read › Shows the correct WAC-Allow header to the public
    Please make sure the cookie is valid, and add "https://tester" as a trusted app!
    at Object.getAuthFetcher (node_modules/solid-auth-fetcher/src/obtainAuthHeaders.ts:51:13)
    ● From accessTo › Public accessTo Read › Shows the correct WAC-Allow header to the public
    TypeError: Cannot read property 'fetch' of undefined
    88 | const containerUrl = `${testFolderUrl}1/publicRead/`;
    89 | // This will do mkdir-p:
    > 90 | await solidLogicAlice.fetch(`${containerUrl}test.txt`, {
    | ^
    91 | method: 'PUT',
    92 | body: 'hello',
    93 | headers: {
    at test/surface/wac-allow.test.ts:90:29
    at step (test/surface/wac-allow.test.ts:33:23)
    at Object.next (test/surface/wac-allow.test.ts:14:53)
    at test/surface/wac-allow.test.ts:8:71
    at Object.<anonymous>.__awaiter (test/surface/wac-allow.test.ts:4:12)
    at Object.<anonymous> (test/surface/wac-allow.test.ts:87:15)
    ● From accessTo › Public accessTo Read+Append, Bob accessTo Write › Shows the correct WAC-Allow header to Bob
    Please make sure the cookie is valid, and add "https://tester" as a trusted app!
    at Object.getAuthFetcher (node_modules/solid-auth-fetcher/src/obtainAuthHeaders.ts:51:13)
    ● From accessTo › Public accessTo Read+Append, Bob accessTo Write › Shows the correct WAC-Allow header to Bob
    TypeError: Cannot read property 'fetch' of undefined
    120 | const containerUrl = `${testFolderUrl}2/publicReadBobWrite/`;
    121 | // This will do mkdir-p:
    > 122 | await solidLogicAlice.fetch(`${containerUrl}test.txt`, {
    | ^
    123 | method: 'PUT',
    124 | body: 'hello',
    125 | headers: {
    at test/surface/wac-allow.test.ts:122:29
    at step (test/surface/wac-allow.test.ts:33:23)
    at Object.next (test/surface/wac-allow.test.ts:14:53)
    at test/surface/wac-allow.test.ts:8:71
    at Object.<anonymous>.__awaiter (test/surface/wac-allow.test.ts:4:12)
    at Object.<anonymous> (test/surface/wac-allow.test.ts:119:15)
    ● From accessTo › Public accessTo Read+Append, Bob accessTo Write › Shows the correct WAC-Allow header to Bob
    TypeError: Cannot read property 'fetch' of undefined
    139 | });
    140 | it(`Shows the correct WAC-Allow header to Bob`, async () => {
    > 141 | const result = await solidLogicBob.fetch(`${testFolderUrl}2/publicReadBobWrite/`);
    | ^
    142 | expect(sortWac(result.headers.get('WAC-Allow'))).toEqual(sortWac('user="read write append",public="read append"'));
    143 | });
    144 | it(`Shows the correct WAC-Allow header to the public`, async () => {
    at test/surface/wac-allow.test.ts:141:42
    at step (test/surface/wac-allow.test.ts:33:23)
    at Object.next (test/surface/wac-allow.test.ts:14:53)
    at test/surface/wac-allow.test.ts:8:71
    at Object.<anonymous>.__awaiter (test/surface/wac-allow.test.ts:4:12)
    at Object.<anonymous> (test/surface/wac-allow.test.ts:140:53)
    ● From accessTo › Public accessTo Read+Append, Bob accessTo Write › Shows the correct WAC-Allow header to the public
    Please make sure the cookie is valid, and add "https://tester" as a trusted app!
    at Object.getAuthFetcher (node_modules/solid-auth-fetcher/src/obtainAuthHeaders.ts:51:13)
    ● From accessTo › Public accessTo Read+Append, Bob accessTo Write › Shows the correct WAC-Allow header to the public
    TypeError: Cannot read property 'fetch' of undefined
    120 | const containerUrl = `${testFolderUrl}2/publicReadBobWrite/`;
    121 | // This will do mkdir-p:
    > 122 | await solidLogicAlice.fetch(`${containerUrl}test.txt`, {
    | ^
    123 | method: 'PUT',
    124 | body: 'hello',
    125 | headers: {
    at test/surface/wac-allow.test.ts:122:29
    at step (test/surface/wac-allow.test.ts:33:23)
    at Object.next (test/surface/wac-allow.test.ts:14:53)
    at test/surface/wac-allow.test.ts:8:71
    at Object.<anonymous>.__awaiter (test/surface/wac-allow.test.ts:4:12)
    at Object.<anonymous> (test/surface/wac-allow.test.ts:119:15)
    ● From accessTo › Public accessTo Read+Append, Bob accessTo Write › Shows the correct WAC-Allow header to the public
    expect(received).toEqual(expected) // deep equality
    - Expected - 2
    + Received + 0
    Object {
    "public": Array [
    - "append",
    "read",
    ],
    "user": Array [
    - "append",
    "read",
    ],
    }
    144 | it(`Shows the correct WAC-Allow header to the public`, async () => {
    145 | const result = await fetch(`${testFolderUrl}2/publicReadBobWrite/`);
    > 146 | expect(sortWac(result.headers.get('WAC-Allow'))).toEqual(sortWac('user="read append",public="read append"'));
    | ^
    147 | });
    148 | });
    149 | });
    at test/surface/wac-allow.test.ts:146:56
    at step (test/surface/wac-allow.test.ts:33:23)
    at Object.next (test/surface/wac-allow.test.ts:14:53)
    at fulfilled (test/surface/wac-allow.test.ts:5:58)
    ● From default › Public default Read+Append, Bob default Write › Shows the correct WAC-Allow header to Bob
    Please make sure the cookie is valid, and add "https://tester" as a trusted app!
    at Object.getAuthFetcher (node_modules/solid-auth-fetcher/src/obtainAuthHeaders.ts:51:13)
    ● From default › Public default Read+Append, Bob default Write › Shows the correct WAC-Allow header to Bob
    TypeError: Cannot read property 'fetch' of undefined
    167 | const containerUrl = `${testFolderUrl}3/publicReadBobWrite/`;
    168 | // This will do mkdir-p:
    > 169 | await solidLogicAlice.fetch(`${containerUrl}test.txt`, {
    | ^
    170 | method: 'PUT',
    171 | body: 'hello',
    172 | headers: {
    at test/surface/wac-allow.test.ts:169:29
    at step (test/surface/wac-allow.test.ts:33:23)
    at Object.next (test/surface/wac-allow.test.ts:14:53)
    at test/surface/wac-allow.test.ts:8:71
    at Object.<anonymous>.__awaiter (test/surface/wac-allow.test.ts:4:12)
    at Object.<anonymous> (test/surface/wac-allow.test.ts:166:15)
    ● From default › Public default Read+Append, Bob default Write › Shows the correct WAC-Allow header to Bob
    TypeError: Cannot read property 'fetch' of undefined
    186 | });
    187 | it(`Shows the correct WAC-Allow header to Bob`, async () => {
    > 188 | const result = await solidLogicBob.fetch(`${testFolderUrl}3/publicReadBobWrite/test.txt`);
    | ^
    189 | expect(sortWac(result.headers.get('WAC-Allow'))).toEqual(sortWac('user="read write append",public="read append"'));
    190 | });
    191 | it(`Shows the correct WAC-Allow header to the public`, async () => {
    at test/surface/wac-allow.test.ts:188:42
    at step (test/surface/wac-allow.test.ts:33:23)
    at Object.next (test/surface/wac-allow.test.ts:14:53)
    at test/surface/wac-allow.test.ts:8:71
    at Object.<anonymous>.__awaiter (test/surface/wac-allow.test.ts:4:12)
    at Object.<anonymous> (test/surface/wac-allow.test.ts:187:53)
    ● From default › Public default Read+Append, Bob default Write › Shows the correct WAC-Allow header to the public
    Please make sure the cookie is valid, and add "https://tester" as a trusted app!
    at Object.getAuthFetcher (node_modules/solid-auth-fetcher/src/obtainAuthHeaders.ts:51:13)
    ● From default › Public default Read+Append, Bob default Write › Shows the correct WAC-Allow header to the public
    TypeError: Cannot read property 'fetch' of undefined
    167 | const containerUrl = `${testFolderUrl}3/publicReadBobWrite/`;
    168 | // This will do mkdir-p:
    > 169 | await solidLogicAlice.fetch(`${containerUrl}test.txt`, {
    | ^
    170 | method: 'PUT',
    171 | body: 'hello',
    172 | headers: {
    at test/surface/wac-allow.test.ts:169:29
    at step (test/surface/wac-allow.test.ts:33:23)
    at Object.next (test/surface/wac-allow.test.ts:14:53)
    at test/surface/wac-allow.test.ts:8:71
    at Object.<anonymous>.__awaiter (test/surface/wac-allow.test.ts:4:12)
    at Object.<anonymous> (test/surface/wac-allow.test.ts:166:15)
    ● From default › Public default Read+Append, Bob default Write › Shows the correct WAC-Allow header to the public
    expect(received).toEqual(expected) // deep equality
    - Expected - 2
    + Received + 0
    Object {
    "public": Array [
    - "append",
    "read",
    ],
    "user": Array [
    - "append",
    "read",
    ],
    }
    191 | it(`Shows the correct WAC-Allow header to the public`, async () => {
    192 | const result = await fetch(`${testFolderUrl}3/publicReadBobWrite/test.txt`);
    > 193 | expect(sortWac(result.headers.get('WAC-Allow'))).toEqual(sortWac('user="read append",public="read append"'));
    | ^
    194 | });
    195 | });
    196 | });
    at test/surface/wac-allow.test.ts:193:56
    at step (test/surface/wac-allow.test.ts:33:23)
    at Object.next (test/surface/wac-allow.test.ts:14:53)
    at fulfilled (test/surface/wac-allow.test.ts:5:58)
    
  • test/surface/acl-doc-application.test.ts

    Details
     ● Console
    console.warn
    Adding slash to the end of ALICE's storage root ->"https://server/storage"+"/"
    25 | let storageRoot = getEnvVars(who).storageRoot;
    26 | if (storageRoot.substr(-1) !== '/') {
    > 27 | console.warn(`Adding slash to the end of ${who}'s storage root ->"${storageRoot}"+"/"`);
    | ^
    28 | storageRoot += '/';
    29 | }
    30 | const testFolder = `web-access-control-tests-${new Date().getTime()}`;
    at Object.generateTestFolder (test/helpers/env.ts:27:13)
    at Suite.<anonymous> (test/surface/acl-doc-application.test.ts:42:31)
    at Suite.<anonymous> (test/surface/acl-doc-application.test.ts:41:3)
    console.warn
    Adding slash to the end of ALICE's storage root ->"https://server/storage"+"/"
    25 | let storageRoot = getEnvVars(who).storageRoot;
    26 | if (storageRoot.substr(-1) !== '/') {
    > 27 | console.warn(`Adding slash to the end of ${who}'s storage root ->"${storageRoot}"+"/"`);
    | ^
    28 | storageRoot += '/';
    29 | }
    30 | const testFolder = `web-access-control-tests-${new Date().getTime()}`;
    at Object.generateTestFolder (test/helpers/env.ts:27:13)
    at Suite.<anonymous> (test/surface/acl-doc-application.test.ts:85:31)
    at Suite.<anonymous> (test/surface/acl-doc-application.test.ts:84:3)
    console.warn
    Adding slash to the end of ALICE's storage root ->"https://server/storage"+"/"
    25 | let storageRoot = getEnvVars(who).storageRoot;
    26 | if (storageRoot.substr(-1) !== '/') {
    > 27 | console.warn(`Adding slash to the end of ${who}'s storage root ->"${storageRoot}"+"/"`);
    | ^
    28 | storageRoot += '/';
    29 | }
    30 | const testFolder = `web-access-control-tests-${new Date().getTime()}`;
    at Object.generateTestFolder (test/helpers/env.ts:27:13)
    at Suite.<anonymous> (test/surface/acl-doc-application.test.ts:128:31)
    at Suite.<anonymous> (test/surface/acl-doc-application.test.ts:127:3)
    ● ACL doc application › No access on container › does not allow GET denied/
    Please make sure the cookie is valid, and add "https://tester" as a trusted app!
    at Object.getAuthFetcher (node_modules/solid-auth-fetcher/src/obtainAuthHeaders.ts:51:13)
    ● ACL doc application › No access on container › does not allow GET denied/
    TypeError: Cannot read property 'fetch' of undefined
    45 | beforeAll(async () => {
    46 | // This will do mkdir-p:
    > 47 | await solidLogicAlice.fetch(`${testFolderUrl}denied/noAclDoc/noAclDoc.txt`, {
    | ^
    48 | method: 'PUT',
    49 | body: 'hello'
    50 | });
    at test/surface/acl-doc-application.test.ts:47:29
    at step (test/surface/acl-doc-application.test.ts:33:23)
    at Object.next (test/surface/acl-doc-application.test.ts:14:53)
    at test/surface/acl-doc-application.test.ts:8:71
    at Object.<anonymous>.__awaiter (test/surface/acl-doc-application.test.ts:4:12)
    at Object.<anonymous> (test/surface/acl-doc-application.test.ts:45:15)
    ● ACL doc application › No access on container › does not allow GET denied/
    TypeError: Cannot read property 'fetch' of undefined
    67 | 68 | it('does not allow GET denied/', async () => {
    > 69 | const result = await solidLogicBob.fetch(`${testFolderUrl}denied/`);
    | ^
    70 | expect(result.status).toEqual(403);
    71 | });
    72 | at test/surface/acl-doc-application.test.ts:69:42
    at step (test/surface/acl-doc-application.test.ts:33:23)
    at Object.next (test/surface/acl-doc-application.test.ts:14:53)
    at test/surface/acl-doc-application.test.ts:8:71
    at Object.<anonymous>.__awaiter (test/surface/acl-doc-application.test.ts:4:12)
    at Object.<anonymous> (test/surface/acl-doc-application.test.ts:68:38)
    ● ACL doc application › No access on container › does not allow GET denied/noAclDoc/
    Please make sure the cookie is valid, and add "https://tester" as a trusted app!
    at Object.getAuthFetcher (node_modules/solid-auth-fetcher/src/obtainAuthHeaders.ts:51:13)
    ● ACL doc application › No access on container › does not allow GET denied/noAclDoc/
    TypeError: Cannot read property 'fetch' of undefined
    45 | beforeAll(async () => {
    46 | // This will do mkdir-p:
    > 47 | await solidLogicAlice.fetch(`${testFolderUrl}denied/noAclDoc/noAclDoc.txt`, {
    | ^
    48 | method: 'PUT',
    49 | body: 'hello'
    50 | });
    at test/surface/acl-doc-application.test.ts:47:29
    at step (test/surface/acl-doc-application.test.ts:33:23)
    at Object.next (test/surface/acl-doc-application.test.ts:14:53)
    at test/surface/acl-doc-application.test.ts:8:71
    at Object.<anonymous>.__awaiter (test/surface/acl-doc-application.test.ts:4:12)
    at Object.<anonymous> (test/surface/acl-doc-application.test.ts:45:15)
    ● ACL doc application › No access on container › does not allow GET denied/noAclDoc/
    TypeError: Cannot read property 'fetch' of undefined
    72 | 73 | it('does not allow GET denied/noAclDoc/', async () => {
    > 74 | const result = await solidLogicBob.fetch(`${testFolderUrl}denied/noAclDoc/`);
    | ^
    75 | expect(result.status).toEqual(403);
    76 | });
    77 | at test/surface/acl-doc-application.test.ts:74:42
    at step (test/surface/acl-doc-application.test.ts:33:23)
    at Object.next (test/surface/acl-doc-application.test.ts:14:53)
    at test/surface/acl-doc-application.test.ts:8:71
    at Object.<anonymous>.__awaiter (test/surface/acl-doc-application.test.ts:4:12)
    at Object.<anonymous> (test/surface/acl-doc-application.test.ts:73:47)
    ● ACL doc application › No access on container › does not allow GET denied/noAclDoc/noAclDoc.txt
    Please make sure the cookie is valid, and add "https://tester" as a trusted app!
    at Object.getAuthFetcher (node_modules/solid-auth-fetcher/src/obtainAuthHeaders.ts:51:13)
    ● ACL doc application › No access on container › does not allow GET denied/noAclDoc/noAclDoc.txt
    TypeError: Cannot read property 'fetch' of undefined
    45 | beforeAll(async () => {
    46 | // This will do mkdir-p:
    > 47 | await solidLogicAlice.fetch(`${testFolderUrl}denied/noAclDoc/noAclDoc.txt`, {
    | ^
    48 | method: 'PUT',
    49 | body: 'hello'
    50 | });
    at test/surface/acl-doc-application.test.ts:47:29
    at step (test/surface/acl-doc-application.test.ts:33:23)
    at Object.next (test/surface/acl-doc-application.test.ts:14:53)
    at test/surface/acl-doc-application.test.ts:8:71
    at Object.<anonymous>.__awaiter (test/surface/acl-doc-application.test.ts:4:12)
    at Object.<anonymous> (test/surface/acl-doc-application.test.ts:45:15)
    ● ACL doc application › No access on container › does not allow GET denied/noAclDoc/noAclDoc.txt
    TypeError: Cannot read property 'fetch' of undefined
    77 | 78 | it('does not allow GET denied/noAclDoc/noAclDoc.txt', async () => {
    > 79 | const result = await solidLogicBob.fetch(`${testFolderUrl}denied/noAclDoc/noAclDoc.txt`);
    | ^
    80 | expect(result.status).toEqual(403);
    81 | });
    82 | });
    at test/surface/acl-doc-application.test.ts:79:42
    at step (test/surface/acl-doc-application.test.ts:33:23)
    at Object.next (test/surface/acl-doc-application.test.ts:14:53)
    at test/surface/acl-doc-application.test.ts:8:71
    at Object.<anonymous>.__awaiter (test/surface/acl-doc-application.test.ts:4:12)
    at Object.<anonymous> (test/surface/acl-doc-application.test.ts:78:59)
    ● ACL doc application › ACL doc with acl:accessTo on container › allows GET accessTo/
    Please make sure the cookie is valid, and add "https://tester" as a trusted app!
    at Object.getAuthFetcher (node_modules/solid-auth-fetcher/src/obtainAuthHeaders.ts:51:13)
    ● ACL doc application › ACL doc with acl:accessTo on container › allows GET accessTo/
    TypeError: Cannot read property 'fetch' of undefined
    88 | beforeAll(async () => {
    89 | // This will do mkdir-p:
    > 90 | await solidLogicAlice.fetch(`${containerUrl}noAclDoc/noAclDoc.txt`, {
    | ^
    91 | method: 'PUT',
    92 | body: 'hello'
    93 | });
    at test/surface/acl-doc-application.test.ts:90:29
    at step (test/surface/acl-doc-application.test.ts:33:23)
    at Object.next (test/surface/acl-doc-application.test.ts:14:53)
    at test/surface/acl-doc-application.test.ts:8:71
    at Object.<anonymous>.__awaiter (test/surface/acl-doc-application.test.ts:4:12)
    at Object.<anonymous> (test/surface/acl-doc-application.test.ts:88:15)
    ● ACL doc application › ACL doc with acl:accessTo on container › allows GET accessTo/
    TypeError: Cannot read property 'fetch' of undefined
    110 | 111 | it('allows GET accessTo/', async () => {
    > 112 | const result = await solidLogicBob.fetch(containerUrl);
    | ^
    113 | expect(responseCodeGroup(result.status)).toEqual("2xx");
    114 | });
    115 | at test/surface/acl-doc-application.test.ts:112:42
    at step (test/surface/acl-doc-application.test.ts:33:23)
    at Object.next (test/surface/acl-doc-application.test.ts:14:53)
    at test/surface/acl-doc-application.test.ts:8:71
    at Object.<anonymous>.__awaiter (test/surface/acl-doc-application.test.ts:4:12)
    at Object.<anonymous> (test/surface/acl-doc-application.test.ts:111:32)
    ● ACL doc application › ACL doc with acl:accessTo on container › does not allow GET accessTo/noAclDoc/
    Please make sure the cookie is valid, and add "https://tester" as a trusted app!
    at Object.getAuthFetcher (node_modules/solid-auth-fetcher/src/obtainAuthHeaders.ts:51:13)
    ● ACL doc application › ACL doc with acl:accessTo on container › does not allow GET accessTo/noAclDoc/
    TypeError: Cannot read property 'fetch' of undefined
    88 | beforeAll(async () => {
    89 | // This will do mkdir-p:
    > 90 | await solidLogicAlice.fetch(`${containerUrl}noAclDoc/noAclDoc.txt`, {
    | ^
    91 | method: 'PUT',
    92 | body: 'hello'
    93 | });
    at test/surface/acl-doc-application.test.ts:90:29
    at step (test/surface/acl-doc-application.test.ts:33:23)
    at Object.next (test/surface/acl-doc-application.test.ts:14:53)
    at test/surface/acl-doc-application.test.ts:8:71
    at Object.<anonymous>.__awaiter (test/surface/acl-doc-application.test.ts:4:12)
    at Object.<anonymous> (test/surface/acl-doc-application.test.ts:88:15)
    ● ACL doc application › ACL doc with acl:accessTo on container › does not allow GET accessTo/noAclDoc/
    TypeError: Cannot read property 'fetch' of undefined
    115 | 116 | it('does not allow GET accessTo/noAclDoc/', async () => {
    > 117 | const result = await solidLogicBob.fetch(`${containerUrl}noAclDoc/`);
    | ^
    118 | expect(result.status).toEqual(403);
    119 | });
    120 | at test/surface/acl-doc-application.test.ts:117:42
    at step (test/surface/acl-doc-application.test.ts:33:23)
    at Object.next (test/surface/acl-doc-application.test.ts:14:53)
    at test/surface/acl-doc-application.test.ts:8:71
    at Object.<anonymous>.__awaiter (test/surface/acl-doc-application.test.ts:4:12)
    at Object.<anonymous> (test/surface/acl-doc-application.test.ts:116:49)
    ● ACL doc application › ACL doc with acl:accessTo on container › does not allow GET accessTo/noAclDoc/noAclDoc.txt
    Please make sure the cookie is valid, and add "https://tester" as a trusted app!
    at Object.getAuthFetcher (node_modules/solid-auth-fetcher/src/obtainAuthHeaders.ts:51:13)
    ● ACL doc application › ACL doc with acl:accessTo on container › does not allow GET accessTo/noAclDoc/noAclDoc.txt
    TypeError: Cannot read property 'fetch' of undefined
    88 | beforeAll(async () => {
    89 | // This will do mkdir-p:
    > 90 | await solidLogicAlice.fetch(`${containerUrl}noAclDoc/noAclDoc.txt`, {
    | ^
    91 | method: 'PUT',
    92 | body: 'hello'
    93 | });
    at test/surface/acl-doc-application.test.ts:90:29
    at step (test/surface/acl-doc-application.test.ts:33:23)
    at Object.next (test/surface/acl-doc-application.test.ts:14:53)
    at test/surface/acl-doc-application.test.ts:8:71
    at Object.<anonymous>.__awaiter (test/surface/acl-doc-application.test.ts:4:12)
    at Object.<anonymous> (test/surface/acl-doc-application.test.ts:88:15)
    ● ACL doc application › ACL doc with acl:accessTo on container › does not allow GET accessTo/noAclDoc/noAclDoc.txt
    TypeError: Cannot read property 'fetch' of undefined
    120 | 121 | it('does not allow GET accessTo/noAclDoc/noAclDoc.txt', async () => {
    > 122 | const result = await solidLogicBob.fetch(`${containerUrl}noAclDoc/noAclDoc.txt`);
    | ^
    123 | expect(result.status).toEqual(403);
    124 | });
    125 | });
    at test/surface/acl-doc-application.test.ts:122:42
    at step (test/surface/acl-doc-application.test.ts:33:23)
    at Object.next (test/surface/acl-doc-application.test.ts:14:53)
    at test/surface/acl-doc-application.test.ts:8:71
    at Object.<anonymous>.__awaiter (test/surface/acl-doc-application.test.ts:4:12)
    at Object.<anonymous> (test/surface/acl-doc-application.test.ts:121:61)
    ● ACL doc application › ACL doc with acl:default on container › does not allow GET accessTo/
    Please make sure the cookie is valid, and add "https://tester" as a trusted app!
    at Object.getAuthFetcher (node_modules/solid-auth-fetcher/src/obtainAuthHeaders.ts:51:13)
    ● ACL doc application › ACL doc with acl:default on container › does not allow GET accessTo/
    TypeError: Cannot read property 'fetch' of undefined
    131 | beforeAll(async () => {
    132 | // This will do mkdir-p:
    > 133 | await solidLogicAlice.fetch(`${containerUrl}noAclDoc/noAclDoc.txt`, {
    | ^
    134 | method: 'PUT',
    135 | body: 'hello'
    136 | });
    at test/surface/acl-doc-application.test.ts:133:29
    at step (test/surface/acl-doc-application.test.ts:33:23)
    at Object.next (test/surface/acl-doc-application.test.ts:14:53)
    at test/surface/acl-doc-application.test.ts:8:71
    at Object.<anonymous>.__awaiter (test/surface/acl-doc-application.test.ts:4:12)
    at Object.<anonymous> (test/surface/acl-doc-application.test.ts:131:15)
    ● ACL doc application › ACL doc with acl:default on container › does not allow GET accessTo/
    TypeError: Cannot read property 'fetch' of undefined
    152 | });
    153 | it('does not allow GET accessTo/', async () => {
    > 154 | const result = await solidLogicBob.fetch(containerUrl);
    | ^
    155 | expect(result.status).toEqual(403);
    156 | });
    157 | at test/surface/acl-doc-application.test.ts:154:42
    at step (test/surface/acl-doc-application.test.ts:33:23)
    at Object.next (test/surface/acl-doc-application.test.ts:14:53)
    at test/surface/acl-doc-application.test.ts:8:71
    at Object.<anonymous>.__awaiter (test/surface/acl-doc-application.test.ts:4:12)
    at Object.<anonymous> (test/surface/acl-doc-application.test.ts:153:40)
    ● ACL doc application › ACL doc with acl:default on container › allows GET accessTo/noAclDoc/
    Please make sure the cookie is valid, and add "https://tester" as a trusted app!
    at Object.getAuthFetcher (node_modules/solid-auth-fetcher/src/obtainAuthHeaders.ts:51:13)
    ● ACL doc application › ACL doc with acl:default on container › allows GET accessTo/noAclDoc/
    TypeError: Cannot read property 'fetch' of undefined
    131 | beforeAll(async () => {
    132 | // This will do mkdir-p:
    > 133 | await solidLogicAlice.fetch(`${containerUrl}noAclDoc/noAclDoc.txt`, {
    | ^
    134 | method: 'PUT',
    135 | body: 'hello'
    136 | });
    at test/surface/acl-doc-application.test.ts:133:29
    at step (test/surface/acl-doc-application.test.ts:33:23)
    at Object.next (test/surface/acl-doc-application.test.ts:14:53)
    at test/surface/acl-doc-application.test.ts:8:71
    at Object.<anonymous>.__awaiter (test/surface/acl-doc-application.test.ts:4:12)
    at Object.<anonymous> (test/surface/acl-doc-application.test.ts:131:15)
    ● ACL doc application › ACL doc with acl:default on container › allows GET accessTo/noAclDoc/
    TypeError: Cannot read property 'fetch' of undefined
    157 | 158 | it('allows GET accessTo/noAclDoc/', async () => {
    > 159 | const result = await solidLogicBob.fetch(`${containerUrl}noAclDoc/`);
    | ^
    160 | expect(responseCodeGroup(result.status)).toEqual("2xx");
    161 | });
    162 | at test/surface/acl-doc-application.test.ts:159:42
    at step (test/surface/acl-doc-application.test.ts:33:23)
    at Object.next (test/surface/acl-doc-application.test.ts:14:53)
    at test/surface/acl-doc-application.test.ts:8:71
    at Object.<anonymous>.__awaiter (test/surface/acl-doc-application.test.ts:4:12)
    at Object.<anonymous> (test/surface/acl-doc-application.test.ts:158:41)
    ● ACL doc application › ACL doc with acl:default on container › allows GET accessTo/noAclDoc/noAclDoc.txt
    Please make sure the cookie is valid, and add "https://tester" as a trusted app!
    at Object.getAuthFetcher (node_modules/solid-auth-fetcher/src/obtainAuthHeaders.ts:51:13)
    ● ACL doc application › ACL doc with acl:default on container › allows GET accessTo/noAclDoc/noAclDoc.txt
    TypeError: Cannot read property 'fetch' of undefined
    131 | beforeAll(async () => {
    132 | // This will do mkdir-p:
    > 133 | await solidLogicAlice.fetch(`${containerUrl}noAclDoc/noAclDoc.txt`, {
    | ^
    134 | method: 'PUT',
    135 | body: 'hello'
    136 | });
    at test/surface/acl-doc-application.test.ts:133:29
    at step (test/surface/acl-doc-application.test.ts:33:23)
    at Object.next (test/surface/acl-doc-application.test.ts:14:53)
    at test/surface/acl-doc-application.test.ts:8:71
    at Object.<anonymous>.__awaiter (test/surface/acl-doc-application.test.ts:4:12)
    at Object.<anonymous> (test/surface/acl-doc-application.test.ts:131:15)
    ● ACL doc application › ACL doc with acl:default on container › allows GET accessTo/noAclDoc/noAclDoc.txt
    TypeError: Cannot read property 'fetch' of undefined
    162 | 163 | it('allows GET accessTo/noAclDoc/noAclDoc.txt', async () => {
    > 164 | const result = await solidLogicBob.fetch(`${containerUrl}noAclDoc/noAclDoc.txt`);
    | ^
    165 | expect(responseCodeGroup(result.status)).toEqual("2xx");
    166 | });
    167 | });
    at test/surface/acl-doc-application.test.ts:164:42
    at step (test/surface/acl-doc-application.test.ts:33:23)
    at Object.next (test/surface/acl-doc-application.test.ts:14:53)
    at test/surface/acl-doc-application.test.ts:8:71
    at Object.<anonymous>.__awaiter (test/surface/acl-doc-application.test.ts:4:12)
    at Object.<anonymous> (test/surface/acl-doc-application.test.ts:163:53)
    
  • test/surface/delete.test.ts

    Details
     ● Console
    console.warn
    Adding slash to the end of ALICE's storage root ->"https://server/storage"+"/"
    25 | let storageRoot = getEnvVars(who).storageRoot;
    26 | if (storageRoot.substr(-1) !== '/') {
    > 27 | console.warn(`Adding slash to the end of ${who}'s storage root ->"${storageRoot}"+"/"`);
    | ^
    28 | storageRoot += '/';
    29 | }
    30 | const testFolder = `web-access-control-tests-${new Date().getTime()}`;
    at Object.generateTestFolder (test/helpers/env.ts:27:13)
    at Suite.<anonymous> (test/surface/delete.test.ts:46:29)
    at Object.<anonymous> (test/surface/delete.test.ts:38:1)
    ● Delete › Is allowed with accessTo Write access on resource
    Please make sure the cookie is valid, and add "https://tester" as a trusted app!
    at Object.getAuthFetcher (node_modules/solid-auth-fetcher/src/obtainAuthHeaders.ts:51:13)
    ● Delete › Is allowed with accessTo Write access on resource
    TypeError: Cannot read property 'fetch' of undefined
    58 | const resourceUrl = `${testFolderUrl}1/accessToAppend/test.txt`;
    59 | // This will do mkdir-p:
    > 60 | const creationResult = await solidLogicAlice.fetch(resourceUrl, {
    | ^
    61 | method: 'PUT',
    62 | body: '<#hello> <#linked> <#world> .',
    63 | headers: {
    at test/surface/delete.test.ts:60:51
    at step (test/surface/delete.test.ts:33:23)
    at Object.next (test/surface/delete.test.ts:14:53)
    at test/surface/delete.test.ts:8:71
    at Object.<anonymous>.__awaiter (test/surface/delete.test.ts:4:12)
    at Object.<anonymous> (test/surface/delete.test.ts:57:59)
    ● Delete › Is allowed with accessTo Write access on resource
    TypeError: Cannot read property 'recursiveDelete' of undefined
    52 | 53 | afterEach(() => {
    > 54 | return solidLogicAlice.recursiveDelete(testFolderUrl);
    | ^
    55 | });
    56 | 57 | it('Is allowed with accessTo Write access on resource', async () => {
    at Object.<anonymous> (test/surface/delete.test.ts:54:28)
    ● Delete › Is disallowed with accessTo Read+Append+Control access on resource
    Please make sure the cookie is valid, and add "https://tester" as a trusted app!
    at Object.getAuthFetcher (node_modules/solid-auth-fetcher/src/obtainAuthHeaders.ts:51:13)
    ● Delete › Is disallowed with accessTo Read+Append+Control access on resource
    TypeError: Cannot read property 'fetch' of undefined
    84 | const resourceUrl = `${testFolderUrl}2/accessToAppend/test.txt`;
    85 | // This will do mkdir-p:
    > 86 | const creationResult = await solidLogicAlice.fetch(resourceUrl, {
    | ^
    87 | method: 'PUT',
    88 | body: '<#hello> <#linked> <#world> .',
    89 | headers: {
    at test/surface/delete.test.ts:86:51
    at step (test/surface/delete.test.ts:33:23)
    at Object.next (test/surface/delete.test.ts:14:53)
    at test/surface/delete.test.ts:8:71
    at Object.<anonymous>.__awaiter (test/surface/delete.test.ts:4:12)
    at Object.<anonymous> (test/surface/delete.test.ts:83:76)
    ● Delete › Is disallowed with accessTo Read+Append+Control access on resource
    TypeError: Cannot read property 'recursiveDelete' of undefined
    52 | 53 | afterEach(() => {
    > 54 | return solidLogicAlice.recursiveDelete(testFolderUrl);
    | ^
    55 | });
    56 | 57 | it('Is allowed with accessTo Write access on resource', async () => {
    at Object.<anonymous> (test/surface/delete.test.ts:54:28)
    ● Delete › Is allowed with default Write access on parent
    Please make sure the cookie is valid, and add "https://tester" as a trusted app!
    at Object.getAuthFetcher (node_modules/solid-auth-fetcher/src/obtainAuthHeaders.ts:51:13)
    ● Delete › Is allowed with default Write access on parent
    TypeError: Cannot read property 'fetch' of undefined
    111 | const resourceUrl = `${containerUrl}test.txt`;
    112 | // This will do mkdir-p:
    > 113 | const creationResult = await solidLogicAlice.fetch(resourceUrl, {
    | ^
    114 | method: 'PUT',
    115 | body: '<#hello> <#linked> <#world> .',
    116 | headers: {
    at test/surface/delete.test.ts:113:51
    at step (test/surface/delete.test.ts:33:23)
    at Object.next (test/surface/delete.test.ts:14:53)
    at test/surface/delete.test.ts:8:71
    at Object.<anonymous>.__awaiter (test/surface/delete.test.ts:4:12)
    at Object.<anonymous> (test/surface/delete.test.ts:109:56)
    ● Delete › Is allowed with default Write access on parent
    TypeError: Cannot read property 'recursiveDelete' of undefined
    52 | 53 | afterEach(() => {
    > 54 | return solidLogicAlice.recursiveDelete(testFolderUrl);
    | ^
    55 | });
    56 | 57 | it('Is allowed with accessTo Write access on resource', async () => {
    at Object.<anonymous> (test/surface/delete.test.ts:54:28)
    ● Delete › Is disallowed with default Read+Append+Control access on parent
    Please make sure the cookie is valid, and add "https://tester" as a trusted app!
    at Object.getAuthFetcher (node_modules/solid-auth-fetcher/src/obtainAuthHeaders.ts:51:13)
    ● Delete › Is disallowed with default Read+Append+Control access on parent
    TypeError: Cannot read property 'fetch' of undefined
    138 | const resourceUrl = `${containerUrl}test.txt`;
    139 | // This will do mkdir-p:
    > 140 | const creationResult = await solidLogicAlice.fetch(resourceUrl, {
    | ^
    141 | method: 'PUT',
    142 | body: '<#hello> <#linked> <#world> .',
    143 | headers: {
    at test/surface/delete.test.ts:140:51
    at step (test/surface/delete.test.ts:33:23)
    at Object.next (test/surface/delete.test.ts:14:53)
    at test/surface/delete.test.ts:8:71
    at Object.<anonymous>.__awaiter (test/surface/delete.test.ts:4:12)
    at Object.<anonymous> (test/surface/delete.test.ts:136:73)
    ● Delete › Is disallowed with default Read+Append+Control access on parent
    TypeError: Cannot read property 'recursiveDelete' of undefined
    52 | 53 | afterEach(() => {
    > 54 | return solidLogicAlice.recursiveDelete(testFolderUrl);
    | ^
    55 | });
    56 | 57 | it('Is allowed with accessTo Write access on resource', async () => {
    at Object.<anonymous> (test/surface/delete.test.ts:54:28)
    
  • test/surface/fetch-pod-root-acl.test.ts

    Details
    ● Alice's storage root › has an ACL
    Please make sure the cookie is valid, and add "https://tester" as a trusted app!
    at Object.getAuthFetcher (node_modules/solid-auth-fetcher/src/obtainAuthHeaders.ts:51:13)
    ● Alice's storage root › has an ACL
    TypeError: Cannot read property 'length' of undefined
    15 | 16 | test("has an ACL", async () => {
    > 17 | expect(podRoots.length).toEqual(1);
    | ^
    18 | const aclDocUrl = await solidLogicAlice.findAclDocUrl(podRoots[0]);
    19 | await solidLogicAlice.load(aclDocUrl);
    20 | expect(solidLogicAlice.store.statementsMatching(undefined, undefined, undefined, sym(aclDocUrl)).length).toBeGreaterThan(0);
    at test/surface/fetch-pod-root-acl.test.ts:17:21
    at step (test/surface/fetch-pod-root-acl.test.ts:33:23)
    at Object.next (test/surface/fetch-pod-root-acl.test.ts:14:53)
    at test/surface/fetch-pod-root-acl.test.ts:8:71
    at Object.<anonymous>.__awaiter (test/surface/fetch-pod-root-acl.test.ts:4:12)
    at Object.<anonymous> (test/surface/fetch-pod-root-acl.test.ts:16:22)
    

The webid-provider and solid-crud tests seem stable:

> webid-provider-tests@2.0.3 jest
Test Suites: 5 passed, 5 total
Tests: 36 passed, 36 total
Snapshots: 0 total
Time: 11.176 s
Ran all test suites.
> solid-crud-tests@5.1.0 jest
Test Suites: 1 skipped, 6 passed, 6 of 7 total
Tests: 11 skipped, 58 passed, 69 total
Snapshots: 0 total
Time: 50.789 s
Ran all test suites.

Metadata

Metadata

Labels

No labels
No labels

Type

No type

Projects

Status
In Progress

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions