~ knotless Search/
↑↓ move↵ open⇧↵ all results

chadtmiller.com/pds.js

An atproto PDS in JavaScript, for Cloudflare Workers and Node

0
0
main
22 lines · 717 B Raw History
import { describe, expect, it } from 'vitest';
import { cloneUrl } from '../src/checkout.js';

describe('cloneUrl', () => {
  it('addresses the PDS smart HTTP endpoint', () => {
    expect(cloneUrl('https://pds.example.com', 'did:plc:abc', 'proj')).toBe(
      'https://pds.example.com/git/did:plc:abc/proj',
    );
  });

  it('tolerates a trailing slash on the service', () => {
    expect(cloneUrl('https://pds.example.com/', 'did:plc:abc', 'proj')).toBe(
      'https://pds.example.com/git/did:plc:abc/proj',
    );
  });

  it('escapes a repository name', () => {
    expect(cloneUrl('https://pds.example.com', 'did:plc:abc', 'a b')).toBe(
      'https://pds.example.com/git/did:plc:abc/a%20b',
    );
  });
});