nodeSolidServer / nodeSolidServer/node-solid-server

Enable WebID-TLS integration tests (fix self-signed cert verification loop)

Open Beginner friendly
#1,841 2 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
JavaScript
Stars
1.8k
Forks
308
PR merge metrics
No merged PRs in 30d

Description

Summary

In October 2019, WebID-TLS tests were disabled with describe.skip() (commit 778095ad). The authentication code still works - just the tests are skipped and CI lacks DNS setup.

Fix size: ~10 lines changed.

The Bug

// Added Oct 29, 2019 by jaxoncreed
describe.skip('ACL with WebID+TLS', function () {  // <-- this .skip

The comment says "TLS is currently broken" but the code isn't broken - the tests just need tim.localhost to resolve to 127.0.0.1.

The Fix

1. Remove 5x .skip from test/integration/acl-tls-test.mjs:

  • Line 67, 134, 571, 616, 946

2. Add 4 lines to CI (.github/workflows/ci.yml):

- name: Setup hosts for TLS tests
  run: |
    echo "127.0.0.1 tim.localhost" | sudo tee -a /etc/hosts
    echo "127.0.0.1 nicola.localhost" | sudo tee -a /etc/hosts

Done.

Verification

The code works today:

  • Server starts with --auth tls
  • Responds to requests ✅
  • Test certificates match test profiles ✅
  • cert:modulus in profile matches cert ✅

Why It Matters

  • README still advertises --auth tls support
  • Solid spec requires OIDC, doesn't forbid TLS
  • Server-to-server, CLI, IoT use cases need non-browser auth
  • W3C LWS working group discussing enterprise mTLS needs (LWS-UCS #40)

References

  • Commit that introduced skip: 778095ad (Oct 29, 2019)
  • PR where TimBL approved TLS+OIDC coexistence: #650

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with test/integration/acl-tls-test.mjs and inspect the five describe.skip locations at lines 67, 134, 571, 616, and 946. Then read .github/workflows/ci.yml and verify how CI configures hosts. Done means the WebID-TLS integration tests run in CI with tim.localhost and nicola.localhost resolving to 127.0.0.1.

Written by the indexing model from the issue text.

Assessment

Tech stack
github-actions, javascript
Domain
ci-cd, testing
Issue type
Bug
Difficulty
2/5
Estimated time
1-3 hours
Activity status
Stale
Clarity
Clearly specified
Newbie friendliness
65/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.