summaryrefslogtreecommitdiff
path: root/tests/user_commands
diff options
context:
space:
mode:
authorrsiemens <ryanjsiemens@gmail.com>2019-01-27 11:30:06 -0800
committerTim Graham <timograham@gmail.com>2019-01-28 18:23:41 -0500
commitbc9f0b32039325e96683e0e4a3ea84428a336c8d (patch)
treebc37951a5330572a3d32dc5eb05522d38b69870e /tests/user_commands
parent16454ac35f6a24a04b23a9340b0d62c33edbc1ea (diff)
downloaddjango-bc9f0b32039325e96683e0e4a3ea84428a336c8d.tar.gz
Refs #29973 -- Extracted helper functions from makemessages.
Diffstat (limited to 'tests/user_commands')
-rw-r--r--tests/user_commands/tests.py25
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)