# -*- coding: utf-8 -*-1# This program is free software; you can redistribute it and/or modify2# it under the terms of the GNU General Public License as published by3# the Free Software Foundation; either version 2 of the License, or4# (at your option) any later version.5#6# This program is distributed in the hope that it will be useful,7# but WITHOUT ANY WARRANTY; without even the implied warranty of8# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the9# GNU General Public License for more details.10#11# You should have received a copy of the GNU General Public License12# along with this program; if not, write to the Free Software13# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,14# MA 02110-1301, USA.15#16# Author: Mauro Soria1718from unittest import TestCase1920from lib.core.scanner import BaseScanner21from lib.core.settings import REFLECTED_PATH_MARKER222324class TestScanner(TestCase):25def test_generate_redirect_regex(self):26self.assertEqual(27BaseScanner.generate_redirect_regex(28"http://example.com/abc/foo/xyz",29"foo",30"http://example.com/abc/bar/zyx",31"bar",32),33rf"^http://example\.com/abc{REFLECTED_PATH_MARKER}/.*$",34"Redirect regex generator gives unexpected result"35)363738