diff options
author | rsiemens <ryanjsiemens@gmail.com> | 2019-01-27 11:30:06 -0800 |
---|---|---|
committer | Tim Graham <timograham@gmail.com> | 2019-01-28 18:23:41 -0500 |
commit | bc9f0b32039325e96683e0e4a3ea84428a336c8d (patch) | |
tree | bc37951a5330572a3d32dc5eb05522d38b69870e /tests/user_commands | |
parent | 16454ac35f6a24a04b23a9340b0d62c33edbc1ea (diff) | |
download | django-bc9f0b32039325e96683e0e4a3ea84428a336c8d.tar.gz |
Refs #29973 -- Extracted helper functions from makemessages.
Diffstat (limited to 'tests/user_commands')
-rw-r--r-- | tests/user_commands/tests.py | 25 |
1 files changed, 24 insertions, 1 deletions
diff --git a/tests/user_commands/tests.py b/tests/user_commands/tests.py index 45fe0aaf46..25ab82baed 100644 --- a/tests/user_commands/tests.py +++ b/tests/user_commands/tests.py @@ -8,7 +8,8 @@ from django.apps import apps from django.core import management from django.core.management import BaseCommand, CommandError, find_commands from django.core.management.utils import ( - find_command, get_random_secret_key, popen_wrapper, + find_command, get_random_secret_key, is_ignored_path, + normalize_path_patterns, popen_wrapper, ) from django.db import connection from django.test import SimpleTestCase, override_settings @@ -268,3 +269,25 @@ class UtilsTests(SimpleTestCase): self.assertEqual(len(key), 50) for char in key: self.assertIn(char, 'abcdefghijklmnopqrstuvwxyz0123456789!@#$%^&*(-_=+)') + + def test_is_ignored_path_true(self): + patterns = ( + ['foo/bar/baz'], + ['baz'], + ['foo/bar/baz'], + ['*/baz'], + ['*'], + ['b?z'], + ['[abc]az'], + ['*/ba[!z]/baz'], + ) + for ignore_patterns in patterns: + with self.subTest(ignore_patterns=ignore_patterns): + self.assertIs(is_ignored_path('foo/bar/baz', ignore_patterns=ignore_patterns), True) + + def test_is_ignored_path_false(self): + self.assertIs(is_ignored_path('foo/bar/baz', ignore_patterns=['foo/bar/bat', 'bar', 'flub/blub']), False) + + def test_normalize_path_patterns_truncates_wildcard_base(self): + expected = [os.path.normcase(p) for p in ['foo/bar', 'bar/*/']] + self.assertEqual(normalize_path_patterns(['foo/bar/*', 'bar/*/']), expected) |