mirror of
				https://code.forgejo.org/actions/checkout.git
				synced 2025-11-04 06:39:11 +00:00 
			
		
		
		
	add tests
This commit is contained in:
		
							parent
							
								
									5e05fe08e6
								
							
						
					
					
						commit
						3dcd7a5490
					
				
					 1 changed files with 46 additions and 0 deletions
				
			
		
							
								
								
									
										46
									
								
								__test__/url-helper.test.ts
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										46
									
								
								__test__/url-helper.test.ts
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,46 @@
 | 
			
		|||
import * as urlHelper from '../lib/url-helper'
 | 
			
		||||
 | 
			
		||||
import { IGitSourceSettings } from '../lib/git-source-settings';
 | 
			
		||||
 | 
			
		||||
function getSettings(u: string): IGitSourceSettings {
 | 
			
		||||
  return {
 | 
			
		||||
    githubServerUrl: u,
 | 
			
		||||
    repositoryPath: '',
 | 
			
		||||
    repositoryOwner: 'some-owner',
 | 
			
		||||
    repositoryName: 'some-name',
 | 
			
		||||
    ref: '', commit: '', clean: false, filter: undefined,
 | 
			
		||||
    sparseCheckout: [], sparseCheckoutConeMode: false,
 | 
			
		||||
    fetchDepth: 0, fetchTags: false, showProgress: false,
 | 
			
		||||
    lfs: false, submodules: false, nestedSubmodules: false,
 | 
			
		||||
    authToken: '', sshKey: '', sshKnownHosts: '', sshStrict: false,
 | 
			
		||||
    persistCredentials: false, workflowOrganizationId: undefined,
 | 
			
		||||
    setSafeDirectory: false
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
describe('url-helper tests', () => {
 | 
			
		||||
  it('getFetchUrl works on GitHub repos', async () => {
 | 
			
		||||
    expect(urlHelper.getFetchUrl(getSettings('https://github.com'))).toBe(
 | 
			
		||||
      "https://github.com/some-owner/some-name"
 | 
			
		||||
    )
 | 
			
		||||
  })
 | 
			
		||||
 | 
			
		||||
  it('getFetchUrl works on 3rd party repos with sub-path', async () => {
 | 
			
		||||
    expect(urlHelper.getFetchUrl(getSettings('https://other.com/subpath'))).toBe(
 | 
			
		||||
      'https://other.com/subpath/some-owner/some-name'
 | 
			
		||||
    )
 | 
			
		||||
  })
 | 
			
		||||
 | 
			
		||||
  it('getFetchUrl works on 3rd party repos with ssh keys', async () => {
 | 
			
		||||
    expect(urlHelper.getFetchUrl(getSettings('https://other.com/subpath'))).toBe(
 | 
			
		||||
      'https://other.com/subpath/some-owner/some-name'
 | 
			
		||||
    )
 | 
			
		||||
  })
 | 
			
		||||
 | 
			
		||||
  it('getFetchUrl works with ssh credentials', async () => {
 | 
			
		||||
    let settings = getSettings('https://other.com/subpath');
 | 
			
		||||
    settings.sshKey = 'not-empty'
 | 
			
		||||
    expect(urlHelper.getFetchUrl(settings)).toBe(
 | 
			
		||||
      'git@other.com:some-owner/some-name.git'
 | 
			
		||||
    )
 | 
			
		||||
  })
 | 
			
		||||
})
 | 
			
		||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue