bpo-35661: Store the venv prompt in pyvenv.cfg (GH-11440) · python/cpython@d5a70c6 (original) (raw)
3 files changed
lines changed
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -113,10 +113,16 @@ def test_prompt(self): | ||
113 | 113 | builder = venv.EnvBuilder() |
114 | 114 | context = builder.ensure_directories(self.env_dir) |
115 | 115 | self.assertEqual(context.prompt, '(%s) ' % env_name) |
116 | +builder.create(self.env_dir) | |
117 | +data = self.get_text_file_contents('pyvenv.cfg') | |
118 | +self.assertNotIn("prompt = ", data) | |
116 | 119 | |
117 | 120 | builder = venv.EnvBuilder(prompt='My prompt') |
118 | 121 | context = builder.ensure_directories(self.env_dir) |
119 | 122 | self.assertEqual(context.prompt, '(My prompt) ') |
123 | +builder.create(self.env_dir) | |
124 | +data = self.get_text_file_contents('pyvenv.cfg') | |
125 | +self.assertIn("prompt = 'My prompt'\n", data) | |
120 | 126 | |
121 | 127 | @skipInVenv |
122 | 128 | def test_prefixes(self): |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -154,6 +154,8 @@ def create_configuration(self, context): | ||
154 | 154 | incl = 'false' |
155 | 155 | f.write('include-system-site-packages = %s\n' % incl) |
156 | 156 | f.write('version = %d.%d.%d\n' % sys.version_info[:3]) |
157 | +if self.prompt is not None: | |
158 | +f.write(f'prompt = {self.prompt!r}\n') | |
157 | 159 | |
158 | 160 | def symlink_or_copy(self, src, dst, relative_symlinks_ok=False): |
159 | 161 | """ |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
1 | +Store the venv prompt in pyvenv.cfg. |