11import {
22 basename , extname , isObject , stripTags , parseIssueHref ,
33 parseUrl , translateMonth , translateDay , blobToDataURI ,
4- toAbsoluteUrl , encodeURLEncodedBase64 , decodeURLEncodedBase64 , isImageFile , isVideoFile ,
4+ toAbsoluteUrl , encodeURLEncodedBase64 , decodeURLEncodedBase64 , isImageFile , isVideoFile , parseIssueNewHref ,
55} from './utils.ts' ;
66
77test ( 'basename' , ( ) => {
@@ -28,21 +28,27 @@ test('stripTags', () => {
2828} ) ;
2929
3030test ( 'parseIssueHref' , ( ) => {
31- expect ( parseIssueHref ( '/owner/repo/issues/1' ) ) . toEqual ( { owner : 'owner' , repo : 'repo' , type : 'issues' , index : '1' } ) ;
32- expect ( parseIssueHref ( '/owner/repo/pulls/1?query' ) ) . toEqual ( { owner : 'owner' , repo : 'repo' , type : 'pulls' , index : '1' } ) ;
33- expect ( parseIssueHref ( '/owner/repo/issues/1#hash' ) ) . toEqual ( { owner : 'owner' , repo : 'repo' , type : 'issues' , index : '1' } ) ;
34- expect ( parseIssueHref ( '/sub/owner/repo/issues/1' ) ) . toEqual ( { owner : 'owner' , repo : 'repo' , type : 'issues' , index : '1' } ) ;
35- expect ( parseIssueHref ( '/sub/sub2/owner/repo/pulls/1' ) ) . toEqual ( { owner : 'owner' , repo : 'repo' , type : 'pulls' , index : '1' } ) ;
36- expect ( parseIssueHref ( '/sub/sub2/owner/repo/issues/1?query' ) ) . toEqual ( { owner : 'owner' , repo : 'repo' , type : 'issues' , index : '1' } ) ;
37- expect ( parseIssueHref ( '/sub/sub2/owner/repo/issues/1#hash' ) ) . toEqual ( { owner : 'owner' , repo : 'repo' , type : 'issues' , index : '1' } ) ;
38- expect ( parseIssueHref ( 'https://example.com/owner/repo/issues/1' ) ) . toEqual ( { owner : 'owner' , repo : 'repo' , type : 'issues' , index : '1' } ) ;
39- expect ( parseIssueHref ( 'https://example.com/owner/repo/pulls/1?query' ) ) . toEqual ( { owner : 'owner' , repo : 'repo' , type : 'pulls' , index : '1' } ) ;
40- expect ( parseIssueHref ( 'https://example.com/owner/repo/issues/1#hash' ) ) . toEqual ( { owner : 'owner' , repo : 'repo' , type : 'issues' , index : '1' } ) ;
41- expect ( parseIssueHref ( 'https://example.com/sub/owner/repo/issues/1' ) ) . toEqual ( { owner : 'owner' , repo : 'repo' , type : 'issues' , index : '1' } ) ;
42- expect ( parseIssueHref ( 'https://example.com/sub/sub2/owner/repo/pulls/1' ) ) . toEqual ( { owner : 'owner' , repo : 'repo' , type : 'pulls' , index : '1' } ) ;
43- expect ( parseIssueHref ( 'https://example.com/sub/sub2/owner/repo/issues/1?query' ) ) . toEqual ( { owner : 'owner' , repo : 'repo' , type : 'issues' , index : '1' } ) ;
44- expect ( parseIssueHref ( 'https://example.com/sub/sub2/owner/repo/issues/1#hash' ) ) . toEqual ( { owner : 'owner' , repo : 'repo' , type : 'issues' , index : '1' } ) ;
45- expect ( parseIssueHref ( '' ) ) . toEqual ( { owner : undefined , repo : undefined , type : undefined , index : undefined } ) ;
31+ expect ( parseIssueHref ( '/owner/repo/issues/1' ) ) . toEqual ( { ownerName : 'owner' , repoName : 'repo' , pathType : 'issues' , indexString : '1' } ) ;
32+ expect ( parseIssueHref ( '/owner/repo/pulls/1?query' ) ) . toEqual ( { ownerName : 'owner' , repoName : 'repo' , pathType : 'pulls' , indexString : '1' } ) ;
33+ expect ( parseIssueHref ( '/owner/repo/issues/1#hash' ) ) . toEqual ( { ownerName : 'owner' , repoName : 'repo' , pathType : 'issues' , indexString : '1' } ) ;
34+ expect ( parseIssueHref ( '/sub/owner/repo/issues/1' ) ) . toEqual ( { ownerName : 'owner' , repoName : 'repo' , pathType : 'issues' , indexString : '1' } ) ;
35+ expect ( parseIssueHref ( '/sub/sub2/owner/repo/pulls/1' ) ) . toEqual ( { ownerName : 'owner' , repoName : 'repo' , pathType : 'pulls' , indexString : '1' } ) ;
36+ expect ( parseIssueHref ( '/sub/sub2/owner/repo/issues/1?query' ) ) . toEqual ( { ownerName : 'owner' , repoName : 'repo' , pathType : 'issues' , indexString : '1' } ) ;
37+ expect ( parseIssueHref ( '/sub/sub2/owner/repo/issues/1#hash' ) ) . toEqual ( { ownerName : 'owner' , repoName : 'repo' , pathType : 'issues' , indexString : '1' } ) ;
38+ expect ( parseIssueHref ( 'https://example.com/owner/repo/issues/1' ) ) . toEqual ( { ownerName : 'owner' , repoName : 'repo' , pathType : 'issues' , indexString : '1' } ) ;
39+ expect ( parseIssueHref ( 'https://example.com/owner/repo/pulls/1?query' ) ) . toEqual ( { ownerName : 'owner' , repoName : 'repo' , pathType : 'pulls' , indexString : '1' } ) ;
40+ expect ( parseIssueHref ( 'https://example.com/owner/repo/issues/1#hash' ) ) . toEqual ( { ownerName : 'owner' , repoName : 'repo' , pathType : 'issues' , indexString : '1' } ) ;
41+ expect ( parseIssueHref ( 'https://example.com/sub/owner/repo/issues/1' ) ) . toEqual ( { ownerName : 'owner' , repoName : 'repo' , pathType : 'issues' , indexString : '1' } ) ;
42+ expect ( parseIssueHref ( 'https://example.com/sub/sub2/owner/repo/pulls/1' ) ) . toEqual ( { ownerName : 'owner' , repoName : 'repo' , pathType : 'pulls' , indexString : '1' } ) ;
43+ expect ( parseIssueHref ( 'https://example.com/sub/sub2/owner/repo/issues/1?query' ) ) . toEqual ( { ownerName : 'owner' , repoName : 'repo' , pathType : 'issues' , indexString : '1' } ) ;
44+ expect ( parseIssueHref ( 'https://example.com/sub/sub2/owner/repo/issues/1#hash' ) ) . toEqual ( { ownerName : 'owner' , repoName : 'repo' , pathType : 'issues' , indexString : '1' } ) ;
45+ expect ( parseIssueHref ( '' ) ) . toEqual ( { ownerName : undefined , repoName : undefined , type : undefined , index : undefined } ) ;
46+ } ) ;
47+
48+ test ( 'parseIssueNewHref' , ( ) => {
49+ expect ( parseIssueNewHref ( '/owner/repo/issues/new' ) ) . toEqual ( { ownerName : 'owner' , repoName : 'repo' , pathType : 'issues' } ) ;
50+ expect ( parseIssueNewHref ( '/owner/repo/issues/new?query' ) ) . toEqual ( { ownerName : 'owner' , repoName : 'repo' , pathType : 'issues' } ) ;
51+ expect ( parseIssueNewHref ( '/sub/owner/repo/issues/new#hash' ) ) . toEqual ( { ownerName : 'owner' , repoName : 'repo' , pathType : 'issues' } ) ;
4652} ) ;
4753
4854test ( 'parseUrl' , ( ) => {
0 commit comments