mirror of
				https://github.com/actions/setup-node.git
				synced 2025-10-31 04:24:33 -04:00 
			
		
		
		
	* Updates * Update * Update * Update * Update * Yarn sometimes prefers npmrc, so use same token * Description * Update readme * Feedback * Add type * new toolkit and scoped registries * npmrc in RUNNER_TEMP * Dont always auth * Try exporting blank token * Get auth working for now pending runner changes * Fix string interpolation for auth token. * Don't export both userconfigs * Update authutil.js * Add single quotes for authString * Fix the registry string. * Use userconfig and append trailing slash * Keep in root of repo * Try just adding auth token * Remove auth token * Try changes again * Add tests * Npm and GPR samples * Add types
		
			
				
	
	
		
			94 lines
		
	
	
		
			2.6 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			94 lines
		
	
	
		
			2.6 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
| const test = require('tap').test
 | |
| const nock = require('nock')
 | |
| 
 | |
| const Octokit = require('@octokit/rest')
 | |
|   .plugin(require('.'))
 | |
| 
 | |
| test('@octokit/pagination-methods', (t) => {
 | |
|   nock('https://api.github.com', {
 | |
|     reqheaders: {
 | |
|       authorization: 'token secrettoken123'
 | |
|     }
 | |
|   })
 | |
|     .get('/organizations')
 | |
|     .query({ page: 3, per_page: 1 })
 | |
|     .reply(200, [{}], {
 | |
|       'Link': '<https://api.github.com/organizations?page=4&per_page=1>; rel="next", <https://api.github.com/organizations?page=1&per_page=1>; rel="first", <https://api.github.com/organizations?page=2&per_page=1>; rel="prev"',
 | |
|       'X-GitHub-Media-Type': 'octokit.v3; format=json'
 | |
|     })
 | |
|     .get('/organizations')
 | |
|     .query({ page: 1, per_page: 1 })
 | |
|     .reply(200, [{}])
 | |
|     .get('/organizations')
 | |
|     .query({ page: 2, per_page: 1 })
 | |
|     .reply(200, [{}])
 | |
|     .get('/organizations')
 | |
|     .query({ page: 4, per_page: 1 })
 | |
|     .reply(404, {})
 | |
| 
 | |
|   const octokit = new Octokit()
 | |
| 
 | |
|   octokit.authenticate({
 | |
|     type: 'token',
 | |
|     token: 'secrettoken123'
 | |
|   })
 | |
| 
 | |
|   return octokit.orgs.getAll({
 | |
|     page: 3,
 | |
|     per_page: 1
 | |
|   })
 | |
| 
 | |
|     .then((response) => {
 | |
|       t.ok(octokit.hasNextPage(response))
 | |
|       t.ok(octokit.hasPreviousPage(response))
 | |
|       t.ok(octokit.hasFirstPage(response))
 | |
|       t.notOk(octokit.hasLastPage(response))
 | |
| 
 | |
|       const noop = () => {}
 | |
| 
 | |
|       return Promise.all([
 | |
|         octokit.getFirstPage(response)
 | |
|           .then(response => {
 | |
|             t.doesNotThrow(() => {
 | |
|               octokit.hasPreviousPage(response)
 | |
|             })
 | |
|             t.notOk(octokit.hasPreviousPage(response))
 | |
|           }),
 | |
|         octokit.getPreviousPage(response, { foo: 'bar', accept: 'application/vnd.octokit.v3+json' }),
 | |
|         octokit.getNextPage(response).catch(noop),
 | |
|         octokit.getLastPage(response, { foo: 'bar' })
 | |
|           .catch(error => {
 | |
|             t.equals(error.code, 404)
 | |
|           }),
 | |
|         // test error with promise
 | |
|         octokit.getLastPage(response).catch(noop)
 | |
|       ])
 | |
|     })
 | |
| 
 | |
|     .catch(t.error)
 | |
| })
 | |
| 
 | |
| test('carries accept header correctly', () => {
 | |
|   nock('https://api.github.com', {
 | |
|     reqheaders: {
 | |
|       accept: 'application/vnd.github.hellcat-preview+json'
 | |
|     }
 | |
|   })
 | |
|     .get('/user/teams')
 | |
|     .query({ per_page: 1 })
 | |
|     .reply(200, [{}], {
 | |
|       'Link': '<https://api.github.com/user/teams?page=2&per_page=1>; rel="next"',
 | |
|       'X-GitHub-Media-Type': 'github; param=hellcat-preview; format=json'
 | |
|     })
 | |
|     .get('/user/teams')
 | |
|     .query({ page: 2, per_page: 1 })
 | |
|     .reply(200, [])
 | |
| 
 | |
|   const octokit = new Octokit()
 | |
| 
 | |
|   return octokit.users.getTeams({ per_page: 1 })
 | |
|     .then(response => {
 | |
|       return octokit.getNextPage(response)
 | |
|     })
 | |
| })
 |