Exemplo n.º 1
0
    def test_all_line_numbers(self):
        s2 = ImportStatement([2, 7], 'b')
        s1 = ImportStatement([1, 2], 'a')

        group = BaseImportGroup()
        group.statements = [s1, s2]

        self.assertListEqual(group.all_line_numbers(), [1, 2, 7])
Exemplo n.º 2
0
    def test_all_line_numbers(self):
        s2 = ImportStatement([2, 7], "b")
        s1 = ImportStatement([1, 2], "a")

        group = BaseImportGroup()
        group.statements = [s1, s2]

        self.assertListEqual(group.all_line_numbers(), [1, 2, 7])
Exemplo n.º 3
0
    def test_add_statement_false(self, mock_should):
        mock_should.return_value = False

        group = BaseImportGroup()
        group.add_statement(mock.sentinel.statement)

        self.assertListEqual(group.statements, [])
        mock_should.assert_called_once_with(mock.sentinel.statement)
Exemplo n.º 4
0
    def test_as_string(self):
        group = BaseImportGroup()
        group.statements = [ImportStatement([], 'b'),
                            ImportStatement([], 'a')]

        self.assertEqual(
            group.as_string(),
            'import a\n'
            'import b'
        )
Exemplo n.º 5
0
    def test_as_string_with_artifacts(self):
        group = BaseImportGroup(file_artifacts={'sep': '\r\n'})
        group.statements = [ImportStatement([], 'b'),
                            ImportStatement([], 'a')]

        self.assertEqual(
            group.as_string(),
            'import a\r\n'
            'import b'
        )
Exemplo n.º 6
0
    def test_merged_statements_special(self):
        group = BaseImportGroup()
        group.statements = [ImportStatement([], 'a', [ImportLeaf('*')]),
                            ImportStatement([], 'b', [ImportLeaf('c')])]

        actual = group.merged_statements

        self.assertListEqual(sorted(actual), [
            ImportStatement([], 'a', [ImportLeaf('*')]),
            ImportStatement([], 'b', [ImportLeaf('c')]),
        ])
Exemplo n.º 7
0
    def test_formatted(self):
        group = BaseImportGroup()
        group.statements = [
            ImportStatement([], 'b' * 80,
                            [ImportLeaf('c'), ImportLeaf('d')]),
            ImportStatement([], 'a')
        ]

        self.assertEqual(
            group.formatted(),
            'import a\n' + 'from {} import (\n'.format('b' * 80) + '    c,\n' +
            '    d,\n' + ')')
Exemplo n.º 8
0
    def test_formatted(self):
        group = BaseImportGroup()
        group.statements = [
            ImportStatement([], "b" * 80,
                            [ImportLeaf("c"), ImportLeaf("d")]),
            ImportStatement([], "a"),
        ]

        self.assertEqual(
            group.formatted(),
            "import a\n" + "from {} import (\n".format("b" * 80) + "    c,\n" +
            "    d,\n" + ")",
        )
Exemplo n.º 9
0
    def test_unique_statements(self,
                               mock_set,
                               mock_list,
                               mock_sorted):
        group = BaseImportGroup()
        group.statements = mock.sentinel.statements

        actual = group.unique_statements

        self.assertEqual(actual, mock_sorted.return_value)

        mock_set.assert_called_once_with(mock.sentinel.statements)
        mock_list.assert_called_once_with(mock_set.return_value)
        mock_sorted.assert_called_once_with(mock_list.return_value)
Exemplo n.º 10
0
    def test_formatted(self):
        group = BaseImportGroup()
        group.statements = [
            ImportStatement([], "b" * 80, [ImportLeaf("c"), ImportLeaf("d")]),
            ImportStatement([], "a"),
        ]

        self.assertEqual(
            group.formatted(),
            "import a\n"
            + "from {} import (\n".format("b" * 80)
            + "    c,\n"
            + "    d,\n"
            + ")",
        )
Exemplo n.º 11
0
    def test_formatted_with_artifacts(self):
        artifacts = {'sep': '\r\n'}
        group = BaseImportGroup(file_artifacts=artifacts)
        group.statements = [
            ImportStatement(list(),
                            'b' * 80,
                            [ImportLeaf('c'), ImportLeaf('d')],
                            file_artifacts=artifacts),
            ImportStatement([], 'a', file_artifacts=artifacts)
        ]

        self.assertEqual(
            group.formatted(),
            'import a\r\n' + 'from {} import (\r\n'.format('b' * 80) +
            '    c,\r\n' + '    d,\r\n' + ')')
Exemplo n.º 12
0
    def test_merged_statements_special(self):
        group = BaseImportGroup()
        group.statements = [
            ImportStatement([], "a", [ImportLeaf("*")]),
            ImportStatement([], "b", [ImportLeaf("c")]),
        ]

        actual = group.merged_statements

        self.assertListEqual(
            sorted(actual),
            [
                ImportStatement([], "a", [ImportLeaf("*")]),
                ImportStatement([], "b", [ImportLeaf("c")]),
            ],
        )
Exemplo n.º 13
0
 def test_str(self, mock_as_string):
     self.assertEqual(
         getattr(BaseImportGroup(),
                 '__{}__'.format(six.text_type.__name__))(),
         mock_as_string.return_value
     )
     mock_as_string.assert_called_once_with()
Exemplo n.º 14
0
    def test_formatted(self):
        group = BaseImportGroup()
        group.statements = [
            ImportStatement([], 'b' * 80, [ImportLeaf('c'),
                                           ImportLeaf('d')]),
            ImportStatement([], 'a')
        ]

        self.assertEqual(
            group.formatted(),
            'import a\n' +
            'from {} import (\n'.format('b' * 80) +
            '    c,\n' +
            '    d,\n' +
            ')'
        )
Exemplo n.º 15
0
    def test_merged_statements_special(self):
        group = BaseImportGroup()
        group.statements = [
            ImportStatement([], "a", [ImportLeaf("*")]),
            ImportStatement([], "b", [ImportLeaf("c")]),
        ]

        actual = group.merged_statements

        self.assertListEqual(
            sorted(actual),
            [
                ImportStatement([], "a", [ImportLeaf("*")]),
                ImportStatement([], "b", [ImportLeaf("c")]),
            ],
        )
Exemplo n.º 16
0
    def test_formatted_with_artifacts(self):
        artifacts = {'sep': '\r\n'}
        group = BaseImportGroup(file_artifacts=artifacts)
        group.statements = [
            ImportStatement(list(), 'b' * 80, [ImportLeaf('c'),
                                               ImportLeaf('d')],
                            file_artifacts=artifacts),
            ImportStatement([], 'a', file_artifacts=artifacts)
        ]

        self.assertEqual(
            group.formatted(),
            'import a\r\n' +
            'from {} import (\r\n'.format('b' * 80) +
            '    c,\r\n' +
            '    d,\r\n' +
            ')'
        )
Exemplo n.º 17
0
    def test_formatted_with_artifacts(self):
        artifacts = {"sep": "\r\n"}
        group = BaseImportGroup(file_artifacts=artifacts)
        group.statements = [
            ImportStatement(
                list(),
                "b" * 80,
                [ImportLeaf("c"), ImportLeaf("d")],
                file_artifacts=artifacts,
            ),
            ImportStatement([], "a", file_artifacts=artifacts),
        ]

        self.assertEqual(
            group.formatted(),
            "import a\r\n" + "from {} import (\r\n".format("b" * 80) +
            "    c,\r\n" + "    d,\r\n" + ")",
        )
Exemplo n.º 18
0
    def test_unique_statements(self, mock_merged_statements, mock_set,
                               mock_list, mock_sorted):
        group = BaseImportGroup()

        actual = group.unique_statements

        self.assertEqual(actual, mock_sorted.return_value)

        mock_set.assert_called_once_with(mock_merged_statements)
        mock_list.assert_called_once_with(mock_set.return_value)
        mock_sorted.assert_called_once_with(mock_list.return_value)
Exemplo n.º 19
0
    def test_formatted_with_artifacts(self):
        artifacts = {"sep": "\r\n"}
        group = BaseImportGroup(file_artifacts=artifacts)
        group.statements = [
            ImportStatement(
                list(),
                "b" * 80,
                [ImportLeaf("c"), ImportLeaf("d")],
                file_artifacts=artifacts,
            ),
            ImportStatement([], "a", file_artifacts=artifacts),
        ]

        self.assertEqual(
            group.formatted(),
            "import a\r\n"
            + "from {} import (\r\n".format("b" * 80)
            + "    c,\r\n"
            + "    d,\r\n"
            + ")",
        )
Exemplo n.º 20
0
    def test_all_line_numbers(self):
        groups = ImportGroups()

        self.assertListEqual(groups.all_line_numbers(), [])

        g = BaseImportGroup()
        g.statements = [mock.MagicMock(line_numbers=[2, 7],
                                       spec=ImportStatement)]
        groups.groups.append(g)

        g = BaseImportGroup()
        g.statements = [mock.MagicMock(line_numbers=[1, 2],
                                       spec=ImportStatement)]
        groups.groups.append(g)

        self.assertListEqual(groups.all_line_numbers(), [1, 2, 7])
Exemplo n.º 21
0
 def test_init(self):
     actual = BaseImportGroup(mock.sentinel.config)
     self.assertEqual(actual.config, mock.sentinel.config)
     self.assertListEqual(actual.statements, [])
Exemplo n.º 22
0
    def test_as_string(self):
        group = BaseImportGroup()
        group.statements = [ImportStatement([], "b"), ImportStatement([], "a")]

        self.assertEqual(group.as_string(), "import a\n" "import b")
Exemplo n.º 23
0
    def test_as_string_with_artifacts(self):
        group = BaseImportGroup(file_artifacts={"sep": "\r\n"})
        group.statements = [ImportStatement([], "b"), ImportStatement([], "a")]

        self.assertEqual(group.as_string(), "import a\r\n" "import b")
Exemplo n.º 24
0
    def test_as_string_with_artifacts(self):
        group = BaseImportGroup(file_artifacts={"sep": "\r\n"})
        group.statements = [ImportStatement([], "b"), ImportStatement([], "a")]

        self.assertEqual(group.as_string(), "import a\r\n" "import b")
Exemplo n.º 25
0
 def test_should_add_statement(self):
     with self.assertRaises(NotImplementedError):
         BaseImportGroup().should_add_statement(None)
Exemplo n.º 26
0
    def test_as_string(self):
        group = BaseImportGroup()
        group.statements = [ImportStatement([], "b"), ImportStatement([], "a")]

        self.assertEqual(group.as_string(), "import a\n" "import b")