From cd299ae7a21a95c1023c2b7c38624234ead1d464 Mon Sep 17 00:00:00 2001 From: Roy Hyunjin Han Date: Thu, 10 Jul 2014 14:08:47 -0700 Subject: Allow hyphens in project name Convert hyphens in project_name to underscores in pkg_name --- pyramid/scripts/pcreate.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/pyramid/scripts/pcreate.py b/pyramid/scripts/pcreate.py index 4c1f432fb..edf2c39f7 100644 --- a/pyramid/scripts/pcreate.py +++ b/pyramid/scripts/pcreate.py @@ -81,7 +81,8 @@ class PCreateCommand(object): args = self.args output_dir = os.path.abspath(os.path.normpath(args[0])) project_name = os.path.basename(os.path.split(output_dir)[1]) - pkg_name = _bad_chars_re.sub('', project_name.lower()) + pkg_name = _bad_chars_re.sub( + '', project_name.lower().replace('-', '_')) safe_name = pkg_resources.safe_name(project_name) egg_name = pkg_resources.to_filename(safe_name) -- cgit v1.2.3 From d47b360cde1d98a67874f88adea69c57ee708dad Mon Sep 17 00:00:00 2001 From: Roy Hyunjin Han Date: Mon, 28 Jul 2014 11:31:45 -0400 Subject: Add test_scaffold_with_hyphen_in_project_name --- pyramid/tests/test_scripts/test_pcreate.py | 87 +++++++++++++++--------------- 1 file changed, 43 insertions(+), 44 deletions(-) diff --git a/pyramid/tests/test_scripts/test_pcreate.py b/pyramid/tests/test_scripts/test_pcreate.py index 2488e9595..d2eef2ae9 100644 --- a/pyramid/tests/test_scripts/test_pcreate.py +++ b/pyramid/tests/test_scripts/test_pcreate.py @@ -1,4 +1,6 @@ import unittest +from os import getcwd +from os.path import abspath, join, normpath class TestPCreateCommand(unittest.TestCase): def setUp(self): @@ -50,153 +52,150 @@ class TestPCreateCommand(unittest.TestCase): self.assertTrue(out.startswith('You must provide a project name')) def test_unknown_scaffold_name(self): - cmd = self._makeOne('-s', 'dummyXX', 'distro') + cmd = self._makeOne('-s', 'dummyXX', 'Distro') result = cmd.run() self.assertEqual(result, 2) out = self.out_.getvalue() self.assertTrue(out.startswith('Unavailable scaffolds')) def test_known_scaffold_single_rendered(self): - import os cmd = self._makeOne('-s', 'dummy', 'Distro') scaffold = DummyScaffold('dummy') cmd.scaffolds = [scaffold] - cmd.pyramid_dist = DummyDist("0.1") + cmd.pyramid_dist = DummyDist('0.1') result = cmd.run() self.assertEqual(result, 0) self.assertEqual( - scaffold.output_dir, - os.path.normpath(os.path.join(os.getcwd(), 'Distro')) - ) + scaffold.output_dir, normpath(join(getcwd(), 'Distro'))) self.assertEqual( scaffold.vars, {'project': 'Distro', 'egg': 'Distro', 'package': 'distro', - 'pyramid_version': '0.1', 'pyramid_docs_branch':'0.1-branch'}) + 'pyramid_version': '0.1', 'pyramid_docs_branch': '0.1-branch'}) + + def test_scaffold_with_hyphen_in_project_name(self): + cmd = self._makeOne('-s', 'dummy', 'Distro-') + scaffold = DummyScaffold('dummy') + cmd.scaffolds = [scaffold] + cmd.pyramid_dist = DummyDist('0.1') + result = cmd.run() + self.assertEqual(result, 0) + self.assertEqual( + scaffold.output_dir, normpath(join(getcwd(), 'Distro-'))) + self.assertEqual( + scaffold.vars, + {'project': 'Distro-', 'egg': 'Distro_', 'package': 'distro_', + 'pyramid_version': '0.1', 'pyramid_docs_branch': '0.1-branch'}) def test_known_scaffold_absolute_path(self): - import os - path = os.path.abspath('Distro') + path = abspath('Distro') cmd = self._makeOne('-s', 'dummy', path) - cmd.pyramid_dist = DummyDist("0.1") + cmd.pyramid_dist = DummyDist('0.1') scaffold = DummyScaffold('dummy') cmd.scaffolds = [scaffold] - cmd.pyramid_dist = DummyDist("0.1") + cmd.pyramid_dist = DummyDist('0.1') result = cmd.run() self.assertEqual(result, 0) self.assertEqual( - scaffold.output_dir, - os.path.normpath(os.path.join(os.getcwd(), 'Distro')) - ) + scaffold.output_dir, normpath(join(getcwd(), 'Distro'))) self.assertEqual( scaffold.vars, {'project': 'Distro', 'egg': 'Distro', 'package': 'distro', - 'pyramid_version': '0.1', 'pyramid_docs_branch':'0.1-branch'}) + 'pyramid_version': '0.1', 'pyramid_docs_branch': '0.1-branch'}) def test_known_scaffold_multiple_rendered(self): - import os cmd = self._makeOne('-s', 'dummy1', '-s', 'dummy2', 'Distro') scaffold1 = DummyScaffold('dummy1') scaffold2 = DummyScaffold('dummy2') cmd.scaffolds = [scaffold1, scaffold2] - cmd.pyramid_dist = DummyDist("0.1") + cmd.pyramid_dist = DummyDist('0.1') result = cmd.run() self.assertEqual(result, 0) self.assertEqual( - scaffold1.output_dir, - os.path.normpath(os.path.join(os.getcwd(), 'Distro')) - ) + scaffold1.output_dir, normpath(join(getcwd(), 'Distro'))) self.assertEqual( scaffold1.vars, {'project': 'Distro', 'egg': 'Distro', 'package': 'distro', - 'pyramid_version': '0.1', 'pyramid_docs_branch':'0.1-branch'}) + 'pyramid_version': '0.1', 'pyramid_docs_branch': '0.1-branch'}) self.assertEqual( - scaffold2.output_dir, - os.path.normpath(os.path.join(os.getcwd(), 'Distro')) - ) + scaffold2.output_dir, normpath(join(getcwd(), 'Distro'))) self.assertEqual( scaffold2.vars, {'project': 'Distro', 'egg': 'Distro', 'package': 'distro', - 'pyramid_version': '0.1', 'pyramid_docs_branch':'0.1-branch'}) + 'pyramid_version': '0.1', 'pyramid_docs_branch': '0.1-branch'}) def test_known_scaffold_with_path_as_project_target_rendered(self): - import os cmd = self._makeOne('-s', 'dummy', '/tmp/foo/Distro/') scaffold = DummyScaffold('dummy') cmd.scaffolds = [scaffold] - cmd.pyramid_dist = DummyDist("0.1") + cmd.pyramid_dist = DummyDist('0.1') result = cmd.run() self.assertEqual(result, 0) self.assertEqual( - scaffold.output_dir, - os.path.normpath(os.path.join(os.getcwd(), '/tmp/foo/Distro')) - ) + scaffold.output_dir, normpath(join(getcwd(), '/tmp/foo/Distro'))) self.assertEqual( scaffold.vars, {'project': 'Distro', 'egg': 'Distro', 'package': 'distro', - 'pyramid_version': '0.1', 'pyramid_docs_branch':'0.1-branch'}) - + 'pyramid_version': '0.1', 'pyramid_docs_branch': '0.1-branch'}) def test_scaffold_with_prod_pyramid_version(self): cmd = self._makeOne('-s', 'dummy', 'Distro') scaffold = DummyScaffold('dummy') cmd.scaffolds = [scaffold] - cmd.pyramid_dist = DummyDist("0.2") + cmd.pyramid_dist = DummyDist('0.2') result = cmd.run() self.assertEqual(result, 0) self.assertEqual( scaffold.vars, {'project': 'Distro', 'egg': 'Distro', 'package': 'distro', - 'pyramid_version': '0.2', 'pyramid_docs_branch':'0.2-branch'}) + 'pyramid_version': '0.2', 'pyramid_docs_branch': '0.2-branch'}) def test_scaffold_with_prod_pyramid_long_version(self): cmd = self._makeOne('-s', 'dummy', 'Distro') scaffold = DummyScaffold('dummy') cmd.scaffolds = [scaffold] - cmd.pyramid_dist = DummyDist("0.2.1") + cmd.pyramid_dist = DummyDist('0.2.1') result = cmd.run() self.assertEqual(result, 0) self.assertEqual( scaffold.vars, {'project': 'Distro', 'egg': 'Distro', 'package': 'distro', - 'pyramid_version': '0.2.1', 'pyramid_docs_branch':'0.2-branch'}) + 'pyramid_version': '0.2.1', 'pyramid_docs_branch': '0.2-branch'}) def test_scaffold_with_prod_pyramid_unparsable_version(self): cmd = self._makeOne('-s', 'dummy', 'Distro') scaffold = DummyScaffold('dummy') cmd.scaffolds = [scaffold] - cmd.pyramid_dist = DummyDist("abc") + cmd.pyramid_dist = DummyDist('abc') result = cmd.run() self.assertEqual(result, 0) self.assertEqual( scaffold.vars, {'project': 'Distro', 'egg': 'Distro', 'package': 'distro', - 'pyramid_version': 'abc', 'pyramid_docs_branch':'latest'}) + 'pyramid_version': 'abc', 'pyramid_docs_branch': 'latest'}) def test_scaffold_with_dev_pyramid_version(self): cmd = self._makeOne('-s', 'dummy', 'Distro') scaffold = DummyScaffold('dummy') cmd.scaffolds = [scaffold] - cmd.pyramid_dist = DummyDist("0.12dev") + cmd.pyramid_dist = DummyDist('0.12dev') result = cmd.run() self.assertEqual(result, 0) self.assertEqual( scaffold.vars, {'project': 'Distro', 'egg': 'Distro', 'package': 'distro', - 'pyramid_version': '0.12dev', - 'pyramid_docs_branch': 'master'}) + 'pyramid_version': '0.12dev', 'pyramid_docs_branch': 'master'}) def test_scaffold_with_dev_pyramid_long_version(self): cmd = self._makeOne('-s', 'dummy', 'Distro') scaffold = DummyScaffold('dummy') cmd.scaffolds = [scaffold] - cmd.pyramid_dist = DummyDist("0.10.1dev") + cmd.pyramid_dist = DummyDist('0.10.1dev') result = cmd.run() self.assertEqual(result, 0) self.assertEqual( scaffold.vars, {'project': 'Distro', 'egg': 'Distro', 'package': 'distro', - 'pyramid_version': '0.10.1dev', - 'pyramid_docs_branch': 'master'}) + 'pyramid_version': '0.10.1dev', 'pyramid_docs_branch': 'master'}) class Test_main(unittest.TestCase): -- cgit v1.2.3 From c1ef71cec60b0bfeac0445c3c30ae46a976f2b31 Mon Sep 17 00:00:00 2001 From: Roy Hyunjin Han Date: Thu, 31 Jul 2014 19:37:49 -0400 Subject: Minimize changes to increase merge likelihood --- pyramid/tests/test_scripts/test_pcreate.py | 82 ++++++++++++++++++------------ 1 file changed, 50 insertions(+), 32 deletions(-) diff --git a/pyramid/tests/test_scripts/test_pcreate.py b/pyramid/tests/test_scripts/test_pcreate.py index d2eef2ae9..020721ca7 100644 --- a/pyramid/tests/test_scripts/test_pcreate.py +++ b/pyramid/tests/test_scripts/test_pcreate.py @@ -1,6 +1,4 @@ import unittest -from os import getcwd -from os.path import abspath, join, normpath class TestPCreateCommand(unittest.TestCase): def setUp(self): @@ -52,150 +50,170 @@ class TestPCreateCommand(unittest.TestCase): self.assertTrue(out.startswith('You must provide a project name')) def test_unknown_scaffold_name(self): - cmd = self._makeOne('-s', 'dummyXX', 'Distro') + cmd = self._makeOne('-s', 'dummyXX', 'distro') result = cmd.run() self.assertEqual(result, 2) out = self.out_.getvalue() self.assertTrue(out.startswith('Unavailable scaffolds')) def test_known_scaffold_single_rendered(self): + import os cmd = self._makeOne('-s', 'dummy', 'Distro') scaffold = DummyScaffold('dummy') cmd.scaffolds = [scaffold] - cmd.pyramid_dist = DummyDist('0.1') + cmd.pyramid_dist = DummyDist("0.1") result = cmd.run() self.assertEqual(result, 0) self.assertEqual( - scaffold.output_dir, normpath(join(getcwd(), 'Distro'))) + scaffold.output_dir, + os.path.normpath(os.path.join(os.getcwd(), 'Distro')) + ) self.assertEqual( scaffold.vars, {'project': 'Distro', 'egg': 'Distro', 'package': 'distro', - 'pyramid_version': '0.1', 'pyramid_docs_branch': '0.1-branch'}) + 'pyramid_version': '0.1', 'pyramid_docs_branch':'0.1-branch'}) def test_scaffold_with_hyphen_in_project_name(self): + import os cmd = self._makeOne('-s', 'dummy', 'Distro-') scaffold = DummyScaffold('dummy') cmd.scaffolds = [scaffold] - cmd.pyramid_dist = DummyDist('0.1') + cmd.pyramid_dist = DummyDist("0.1") result = cmd.run() self.assertEqual(result, 0) self.assertEqual( - scaffold.output_dir, normpath(join(getcwd(), 'Distro-'))) + scaffold.output_dir, + os.path.normpath(os.path.join(os.getcwd(), 'Distro-')) + ) self.assertEqual( scaffold.vars, {'project': 'Distro-', 'egg': 'Distro_', 'package': 'distro_', - 'pyramid_version': '0.1', 'pyramid_docs_branch': '0.1-branch'}) + 'pyramid_version': '0.1', 'pyramid_docs_branch':'0.1-branch'}) def test_known_scaffold_absolute_path(self): - path = abspath('Distro') + import os + path = os.path.abspath('Distro') cmd = self._makeOne('-s', 'dummy', path) - cmd.pyramid_dist = DummyDist('0.1') + cmd.pyramid_dist = DummyDist("0.1") scaffold = DummyScaffold('dummy') cmd.scaffolds = [scaffold] - cmd.pyramid_dist = DummyDist('0.1') + cmd.pyramid_dist = DummyDist("0.1") result = cmd.run() self.assertEqual(result, 0) self.assertEqual( - scaffold.output_dir, normpath(join(getcwd(), 'Distro'))) + scaffold.output_dir, + os.path.normpath(os.path.join(os.getcwd(), 'Distro')) + ) self.assertEqual( scaffold.vars, {'project': 'Distro', 'egg': 'Distro', 'package': 'distro', - 'pyramid_version': '0.1', 'pyramid_docs_branch': '0.1-branch'}) + 'pyramid_version': '0.1', 'pyramid_docs_branch':'0.1-branch'}) def test_known_scaffold_multiple_rendered(self): + import os cmd = self._makeOne('-s', 'dummy1', '-s', 'dummy2', 'Distro') scaffold1 = DummyScaffold('dummy1') scaffold2 = DummyScaffold('dummy2') cmd.scaffolds = [scaffold1, scaffold2] - cmd.pyramid_dist = DummyDist('0.1') + cmd.pyramid_dist = DummyDist("0.1") result = cmd.run() self.assertEqual(result, 0) self.assertEqual( - scaffold1.output_dir, normpath(join(getcwd(), 'Distro'))) + scaffold1.output_dir, + os.path.normpath(os.path.join(os.getcwd(), 'Distro')) + ) self.assertEqual( scaffold1.vars, {'project': 'Distro', 'egg': 'Distro', 'package': 'distro', - 'pyramid_version': '0.1', 'pyramid_docs_branch': '0.1-branch'}) + 'pyramid_version': '0.1', 'pyramid_docs_branch':'0.1-branch'}) self.assertEqual( - scaffold2.output_dir, normpath(join(getcwd(), 'Distro'))) + scaffold2.output_dir, + os.path.normpath(os.path.join(os.getcwd(), 'Distro')) + ) self.assertEqual( scaffold2.vars, {'project': 'Distro', 'egg': 'Distro', 'package': 'distro', - 'pyramid_version': '0.1', 'pyramid_docs_branch': '0.1-branch'}) + 'pyramid_version': '0.1', 'pyramid_docs_branch':'0.1-branch'}) def test_known_scaffold_with_path_as_project_target_rendered(self): + import os cmd = self._makeOne('-s', 'dummy', '/tmp/foo/Distro/') scaffold = DummyScaffold('dummy') cmd.scaffolds = [scaffold] - cmd.pyramid_dist = DummyDist('0.1') + cmd.pyramid_dist = DummyDist("0.1") result = cmd.run() self.assertEqual(result, 0) self.assertEqual( - scaffold.output_dir, normpath(join(getcwd(), '/tmp/foo/Distro'))) + scaffold.output_dir, + os.path.normpath(os.path.join(os.getcwd(), '/tmp/foo/Distro')) + ) self.assertEqual( scaffold.vars, {'project': 'Distro', 'egg': 'Distro', 'package': 'distro', - 'pyramid_version': '0.1', 'pyramid_docs_branch': '0.1-branch'}) + 'pyramid_version': '0.1', 'pyramid_docs_branch':'0.1-branch'}) + def test_scaffold_with_prod_pyramid_version(self): cmd = self._makeOne('-s', 'dummy', 'Distro') scaffold = DummyScaffold('dummy') cmd.scaffolds = [scaffold] - cmd.pyramid_dist = DummyDist('0.2') + cmd.pyramid_dist = DummyDist("0.2") result = cmd.run() self.assertEqual(result, 0) self.assertEqual( scaffold.vars, {'project': 'Distro', 'egg': 'Distro', 'package': 'distro', - 'pyramid_version': '0.2', 'pyramid_docs_branch': '0.2-branch'}) + 'pyramid_version': '0.2', 'pyramid_docs_branch':'0.2-branch'}) def test_scaffold_with_prod_pyramid_long_version(self): cmd = self._makeOne('-s', 'dummy', 'Distro') scaffold = DummyScaffold('dummy') cmd.scaffolds = [scaffold] - cmd.pyramid_dist = DummyDist('0.2.1') + cmd.pyramid_dist = DummyDist("0.2.1") result = cmd.run() self.assertEqual(result, 0) self.assertEqual( scaffold.vars, {'project': 'Distro', 'egg': 'Distro', 'package': 'distro', - 'pyramid_version': '0.2.1', 'pyramid_docs_branch': '0.2-branch'}) + 'pyramid_version': '0.2.1', 'pyramid_docs_branch':'0.2-branch'}) def test_scaffold_with_prod_pyramid_unparsable_version(self): cmd = self._makeOne('-s', 'dummy', 'Distro') scaffold = DummyScaffold('dummy') cmd.scaffolds = [scaffold] - cmd.pyramid_dist = DummyDist('abc') + cmd.pyramid_dist = DummyDist("abc") result = cmd.run() self.assertEqual(result, 0) self.assertEqual( scaffold.vars, {'project': 'Distro', 'egg': 'Distro', 'package': 'distro', - 'pyramid_version': 'abc', 'pyramid_docs_branch': 'latest'}) + 'pyramid_version': 'abc', 'pyramid_docs_branch':'latest'}) def test_scaffold_with_dev_pyramid_version(self): cmd = self._makeOne('-s', 'dummy', 'Distro') scaffold = DummyScaffold('dummy') cmd.scaffolds = [scaffold] - cmd.pyramid_dist = DummyDist('0.12dev') + cmd.pyramid_dist = DummyDist("0.12dev") result = cmd.run() self.assertEqual(result, 0) self.assertEqual( scaffold.vars, {'project': 'Distro', 'egg': 'Distro', 'package': 'distro', - 'pyramid_version': '0.12dev', 'pyramid_docs_branch': 'master'}) + 'pyramid_version': '0.12dev', + 'pyramid_docs_branch': 'master'}) def test_scaffold_with_dev_pyramid_long_version(self): cmd = self._makeOne('-s', 'dummy', 'Distro') scaffold = DummyScaffold('dummy') cmd.scaffolds = [scaffold] - cmd.pyramid_dist = DummyDist('0.10.1dev') + cmd.pyramid_dist = DummyDist("0.10.1dev") result = cmd.run() self.assertEqual(result, 0) self.assertEqual( scaffold.vars, {'project': 'Distro', 'egg': 'Distro', 'package': 'distro', - 'pyramid_version': '0.10.1dev', 'pyramid_docs_branch': 'master'}) + 'pyramid_version': '0.10.1dev', + 'pyramid_docs_branch': 'master'}) class Test_main(unittest.TestCase): -- cgit v1.2.3