예제 #1
0
 def test_parse_name(self):
     n = Npm2Deb('[email protected]')
     self.assertEqual(n.name, "jade")
     x = Npm2Deb('@ava/write-file-atomic')
     self.assertEqual(x.name, '@ava/write-file-atomic')
     y = Npm2Deb('@types/[email protected]')
     self.assertEqual(y.name, '@types/jquery')
     z = Npm2Deb('@types/jquery')
     self.assertEqual(z.name, '@types/jquery')
예제 #2
0
 def test_watch_npmregistry(self):
     # must create a npmregistry since we do not know about git url
     n = Npm2Deb('yg-panache')
     n.create_base_debian()
     n.create_watch()
     line = self._get_debfile_line('watch', '/npmregistry')
     self.assertTrue(line is not None and len(line) > 0)
예제 #3
0
 def test_debhelper(self):
     n = Npm2Deb('parse-url')
     n.create_base_debian()
     n.create_control()
     self.assertEqual(
         self._get_debfile_line("control", " debhelper-compat ("),
         ' debhelper-compat (= %s)' % DEBHELPER)
예제 #4
0
 def test_watch_github_with_no_tags(self):
     # must fallback on npmregistry if no tags in github
     n = Npm2Deb('security')
     n.create_base_debian()
     n.create_watch()
     line = self._get_debfile_line('watch', '/npmregistry')
     self.assertTrue(line is not None and len(line) > 0)
예제 #5
0
 def test_write_tests(self):
     n = Npm2Deb('debug')
     n.create_base_debian()
     n.create_tests()
     line = self._get_debfile_line('tests/control', 'node-debug')
     self.assertEqual(line, 'Depends: node-debug')
     line = self._get_debfile_line('tests/require', 'debug')
     self.assertEqual(line, """node -e "require('debug');\"""")
예제 #6
0
 def test_debhelper_as_argument(self):
     MY_DEBHELPER = DEBHELPER + 1
     n = Npm2Deb('parse-url', {'debhelper': MY_DEBHELPER})
     n.create_base_debian()
     n.create_control()
     self.assertEqual(
         self._get_debfile_line("control", " debhelper-compat ("),
         ' debhelper-compat (= %s)' % MY_DEBHELPER)
예제 #7
0
 def test_json_via_file(self):
     file_name = '/tmp/test_json_via_file'
     test_name = "test_name"
     with open(file_name, 'w') as fd:
         fd.write('{"name":"%s"}' % test_name)
     n = Npm2Deb(file_name)
     os.remove(file_name)
     self.assertEqual(n.name, test_name)
예제 #8
0
 def test_init_no_npm_module(self):
     try:
         Npm2Deb('MODULE_NOT_IN_NPM')
         raise Exception
     except Exception as err:
         self.assertTrue(isinstance(err, ValueError))
         # must suggest type of failure
         self.assertTrue(str(err).find('npm reports errors about') >= 0)
예제 #9
0
파일: scripts.py 프로젝트: kapouer/npm2deb
def get_npm2deb_instance(args):
    if not args.node_module or len(args.node_module) is 0:
        print('please specify a node_module.')
        exit(1)
    try:
        return Npm2Deb(args=vars(args))
    except ValueError as value_error:
        print value_error
        exit(1)
예제 #10
0
 def test_init_module_multiple_version(self):
     try:
         n = Npm2Deb('[email protected]')
         raise Exception
     except Exception as err:
         self.assertTrue(isinstance(err, ValueError))
         # must suggest type of failure
         self.assertTrue(str(err).find(\
             'More than one version found. Please specify one of:') >= 0)
예제 #11
0
    def test_debhelper_as_argument(self):
        MY_DEBHELPER = DEBHELPER + 1
        n = Npm2Deb('parse-url', {'debhelper': MY_DEBHELPER})
        n.create_base_debian()
        n.create_control()
        debhelper = None
        with open('debian/control', 'r') as control:
            for line in control.readlines():
                if line.find('debhelper') >= 0:
                    debhelper = line.strip('\n')
                    break
        self.assertEqual(debhelper, ' debhelper (>= %s)' % MY_DEBHELPER)

        compat = None
        with open('debian/compat', 'r') as compat_fd:
            compat = compat_fd.read().strip('\n')
        self.assertEqual(compat, str(MY_DEBHELPER))
예제 #12
0
    def test_debhelper_default(self):
        n = Npm2Deb('parse-url')
        n.create_base_debian()
        n.create_control()
        debhelper = None
        with open('debian/control', 'r') as control:
            for line in control.readlines():
                if line.find('debhelper') >= 0:
                    debhelper = line.strip('\n')
                    break
        self.assertEqual(debhelper, ' debhelper (>= %s)' % DEBHELPER)

        compat = None
        with open('debian/compat', 'r') as compat_fd:
            compat = compat_fd.read().strip('\n')
        self.assertEqual(compat, str(DEBHELPER))

        rmtree('debian')
예제 #13
0
 def test_json_via_url(self):
     n = Npm2Deb('https://raw.githubusercontent.com/' +
                 'expressjs/serve-index/master/package.json')
     self.assertEqual(n.name, 'serve-index')
예제 #14
0
 def test_json_via_npm(self):
     n = Npm2Deb('serve-index')
     self.assertEqual(n.name, 'serve-index')
예제 #15
0
 def test_debian_license_as_argument(self):
     n = Npm2Deb('amdefine', {'debian_license': 'GPL-3'})
     self.assertEqual(n.debian_license, 'GPL-3')
예제 #16
0
 def test_upstream_license_equals_debian_license(self):
     n = Npm2Deb('parse-url')
     self.assertEqual(n.upstream_license, n.debian_license)
예제 #17
0
 def test_upstream_license_as_argument(self):
     n = Npm2Deb('amdefine', {'upstream_license': 'MIT'})
     self.assertEqual(n.upstream_license, 'MIT')
예제 #18
0
 def test_upstream_license_as_list(self):
     n = Npm2Deb('amdefine')
     self.assertEqual(n.upstream_license, 'BSD')
예제 #19
0
 def test_upstream_license_as_dict(self):
     n = Npm2Deb('utils-merge')
     self.assertEqual(n.upstream_license, 'Expat')
예제 #20
0
 def test_upstream_license_as_str(self):
     n = Npm2Deb('parse-url')
     self.assertEqual(n.upstream_license, 'Expat')
예제 #21
0
 def test_manpages(self):
     n = Npm2Deb('jade')
     n.create_base_debian()
     n.create_manpages()
     self.assertEqual(self._get_debfile_line('manpages', 'jade.1'),
                      "jade.1")
예제 #22
0
 def test_issue_10(self):
     n = Npm2Deb('lastfm')
     n.create_base_debian()
     n.create_control()
예제 #23
0
 def test_watch_github(self):
     n = Npm2Deb('serve-static')
     n.create_base_debian()
     n.create_watch()
     line = self._get_debfile_line('watch', '/tags')
     self.assertTrue(line is not None and len(line) > 0)
예제 #24
0
 def test_install_bin(self):
     n = Npm2Deb('mocha')
     n.create_base_debian()
     n.create_links()
     line = self._get_debfile_line('links', 'mocha')
     self.assertEqual(line, 'usr/lib/nodejs/mocha/bin/mocha usr/bin/mocha')
예제 #25
0
 def test_repository_defined_as_string(self):
     n = Npm2Deb('ipaddr.js')
     self.assertEqual(n.upstream_repo_url,
                      'https://github.com/whitequark/ipaddr.js')