Return an npm package tarball download URL given a namespace, name, version and a base registry URL. For example: >>> expected = 'https://registry.npmjs.org/@invisionag/eslint-config-ivx/-/eslint-config-ivx-0.1.4.tgz' >>> assert npm_download_url('@invisionag', 'eslint-config-iv
(namespace, name, version, registry='https://registry.npmjs.org')
| 1481 | |
| 1482 | |
| 1483 | def npm_download_url(namespace, name, version, registry='https://registry.npmjs.org'): |
| 1484 | """ |
| 1485 | Return an npm package tarball download URL given a namespace, name, version |
| 1486 | and a base registry URL. |
| 1487 | |
| 1488 | For example: |
| 1489 | >>> expected = 'https://registry.npmjs.org/@invisionag/eslint-config-ivx/-/eslint-config-ivx-0.1.4.tgz' |
| 1490 | >>> assert npm_download_url('@invisionag', 'eslint-config-ivx', '0.1.4') == expected |
| 1491 | |
| 1492 | >>> expected = 'https://registry.npmjs.org/angular/-/angular-1.6.6.tgz' |
| 1493 | >>> assert npm_download_url('', 'angular', '1.6.6') == expected |
| 1494 | |
| 1495 | >>> expected = 'https://registry.npmjs.org/angular/-/angular-1.6.6.tgz' |
| 1496 | >>> assert npm_download_url(None, 'angular', '1.6.6') == expected |
| 1497 | |
| 1498 | >>> assert not npm_download_url(None, None, None) |
| 1499 | """ |
| 1500 | if name and version: |
| 1501 | if namespace: |
| 1502 | ns_name = f'{namespace}/{name}' |
| 1503 | else: |
| 1504 | ns_name = name |
| 1505 | return f'{registry}/{ns_name}/-/{name}-{version}.tgz' |
| 1506 | |
| 1507 | |
| 1508 | def npm_api_url(namespace, name, version=None, registry='https://registry.npmjs.org'): |
no outgoing calls
no test coverage detected