コード例 #1
0
ファイル: test_update.py プロジェクト: openstack/requirements
 def test_multiple_lines_separated_in_project(self):
     global_content = textwrap.dedent("""\
         foo<2;python_version=='2.7'
         foo>1;python_version!='2.7'
         """)
     project_content = textwrap.dedent("""\
         foo<1.8;python_version=='2.7'
         # mumbo gumbo
         foo>0.9;python_version!='2.7'
         """)
     global_reqs = requirement.parse(global_content)
     project_reqs = list(requirement.to_reqs(project_content))
     actions, reqs = update._sync_requirements_file(
         global_reqs, project_reqs, 'f', False, False, False)
     self.assertEqual(requirement.Requirements([
         requirement.Requirement(
             'foo', '', '<2', "python_version=='2.7'", ''),
         requirement.Requirement(
             'foo', '', '>1', "python_version!='2.7'", ''),
         requirement.Requirement(
             '', '', '', '', "# mumbo gumbo")]),
         reqs)
     self.assertEqual(project.StdOut(
         "    foo<1.8;python_version=='2.7'  ->   "
         "foo<2;python_version=='2.7'\n"), actions[2])
     self.assertEqual(project.StdOut(
         "    foo>0.9;python_version!='2.7'  ->   "
         "foo>1;python_version!='2.7'\n"), actions[3])
     self.assertThat(actions, matchers.HasLength(4))
コード例 #2
0
 def test_multiple_lines_separated_in_project(self):
     global_content = textwrap.dedent("""\
         foo<2;python_version=='2.7'
         foo>1;python_version!='2.7'
         """)
     project_content = textwrap.dedent("""\
         foo<1.8;python_version=='2.7'
         # mumbo gumbo
         foo>0.9;python_version!='2.7'
         """)
     global_reqs = requirement.parse(global_content)
     project_reqs = list(requirement.to_reqs(project_content))
     actions, reqs = update._sync_requirements_file(global_reqs,
                                                    project_reqs, 'f',
                                                    False, False, False)
     self.assertEqual(
         requirement.Requirements([
             requirement.Requirement('foo', '', '<2',
                                     "python_version=='2.7'", ''),
             requirement.Requirement('foo', '', '>1',
                                     "python_version!='2.7'", ''),
             requirement.Requirement('', '', '', '', "# mumbo gumbo")
         ]), reqs)
     self.assertEqual(
         project.StdOut("    foo<1.8;python_version=='2.7'  ->   "
                        "foo<2;python_version=='2.7'\n"), actions[2])
     self.assertEqual(
         project.StdOut("    foo>0.9;python_version!='2.7'  ->   "
                        "foo>1;python_version!='2.7'\n"), actions[3])
     self.assertThat(actions, matchers.HasLength(4))
コード例 #3
0
ファイル: test_update.py プロジェクト: openstack/requirements
 def test_unparseable_line(self):
     global_content = textwrap.dedent("""\
         foo
         """)
     project_content = textwrap.dedent("""\
         foo
         -e https://git.openstack.org/openstack/neutron.git#egg=neutron
         """)
     global_reqs = requirement.parse(global_content)
     project_reqs = list(requirement.to_reqs(project_content))
     actions, reqs = update._sync_requirements_file(
         global_reqs, project_reqs, 'f', False, False, False)
     n = '-e https://git.openstack.org/openstack/neutron.git#egg=neutron'
     self.assertEqual(requirement.Requirements([
         requirement.Requirement('foo', '', '', '', ''),
         requirement.Requirement('', '', '', '', n)]),
         reqs)
コード例 #4
0
 def test_unparseable_line(self):
     global_content = textwrap.dedent("""\
         foo
         """)
     project_content = textwrap.dedent("""\
         foo
         -e https://git.openstack.org/openstack/neutron.git#egg=neutron
         """)
     global_reqs = requirement.parse(global_content)
     project_reqs = list(requirement.to_reqs(project_content))
     actions, reqs = update._sync_requirements_file(
         global_reqs, project_reqs, 'f', False, False, False)
     n = '-e https://git.openstack.org/openstack/neutron.git#egg=neutron'
     self.assertEqual(requirement.Requirements([
         requirement.Requirement('foo', '', '', '', ''),
         requirement.Requirement('', '', '', '', n)]),
         reqs)
コード例 #5
0
ファイル: test_update.py プロジェクト: openstack/requirements
 def test_extras_kept(self):
     global_content = textwrap.dedent("""\
         oslo.db>1.4.1
         """)
     project_content = textwrap.dedent("""\
         oslo.db[fixture,mysql]>1.3
         """)
     global_reqs = requirement.parse(global_content)
     project_reqs = list(requirement.to_reqs(project_content))
     actions, reqs = update._sync_requirements_file(
         global_reqs, project_reqs, 'f', False, False, False)
     self.assertEqual(requirement.Requirements([
         requirement.Requirement(
             'oslo.db', '', '>1.4.1', '', '', ['fixture', 'mysql'])]),
         reqs)
     self.assertThat(actions, matchers.HasLength(3))
     self.assertEqual(project.StdOut(
         "    oslo.db[fixture,mysql]>1.3     ->   "
         "oslo.db[fixture,mysql]>1.4.1\n"), actions[2])
コード例 #6
0
 def test_extras_kept(self):
     global_content = textwrap.dedent("""\
         oslo.db>1.4.1
         """)
     project_content = textwrap.dedent("""\
         oslo.db[fixture,mysql]>1.3
         """)
     global_reqs = requirement.parse(global_content)
     project_reqs = list(requirement.to_reqs(project_content))
     actions, reqs = update._sync_requirements_file(
         global_reqs, project_reqs, 'f', False, False, False)
     self.assertEqual(requirement.Requirements([
         requirement.Requirement(
             'oslo.db', '', '>1.4.1', '', '', ['fixture', 'mysql'])]),
         reqs)
     self.assertThat(actions, matchers.HasLength(3))
     self.assertEqual(project.StdOut(
         "    oslo.db[fixture,mysql]>1.3     ->   "
         "oslo.db[fixture,mysql]>1.4.1\n"), actions[2])
コード例 #7
0
ファイル: test_update.py プロジェクト: openstack/requirements
 def test_single_global_multiple_in_project(self):
     global_content = textwrap.dedent("""\
         foo>1
         """)
     project_content = textwrap.dedent("""\
         foo<2;python_version=='2.7'
         foo>1;python_version!='2.7'
         """)
     global_reqs = requirement.parse(global_content)
     project_reqs = list(requirement.to_reqs(project_content))
     actions, reqs = update._sync_requirements_file(
         global_reqs, project_reqs, 'f', False, False, False)
     self.assertEqual(requirement.Requirements([
         requirement.Requirement('foo', '', '>1', "", '')]),
         reqs)
     self.assertEqual(project.StdOut(
         "    foo<2;python_version=='2.7'    ->   foo>1\n"), actions[2])
     self.assertEqual(project.StdOut(
         "    foo>1;python_version!='2.7'    ->   \n"), actions[3])
     self.assertThat(actions, matchers.HasLength(4))
コード例 #8
0
ファイル: test_update.py プロジェクト: openstack/requirements
 def test_multiple_lines_nochange(self):
     global_content = textwrap.dedent("""\
         foo<2;python_version=='2.7'
         foo>1;python_version!='2.7'
         """)
     project_content = textwrap.dedent("""\
         foo<2;python_version=='2.7'
         foo>1;python_version!='2.7'
         """)
     global_reqs = requirement.parse(global_content)
     project_reqs = list(requirement.to_reqs(project_content))
     actions, reqs = update._sync_requirements_file(
         global_reqs, project_reqs, 'f', False, False, False)
     self.assertEqual(requirement.Requirements([
         requirement.Requirement(
             'foo', '', '<2', "python_version=='2.7'", ''),
         requirement.Requirement(
             'foo', '', '>1', "python_version!='2.7'", '')]),
         reqs)
     self.assertThat(actions, matchers.HasLength(0))
コード例 #9
0
 def test_single_global_multiple_in_project(self):
     global_content = textwrap.dedent("""\
         foo>1
         """)
     project_content = textwrap.dedent("""\
         foo<2;python_version=='2.7'
         foo>1;python_version!='2.7'
         """)
     global_reqs = requirement.parse(global_content)
     project_reqs = list(requirement.to_reqs(project_content))
     actions, reqs = update._sync_requirements_file(
         global_reqs, project_reqs, 'f', False, False, False)
     self.assertEqual(requirement.Requirements([
         requirement.Requirement('foo', '', '>1', "", '')]),
         reqs)
     self.assertEqual(project.StdOut(
         "    foo<2;python_version=='2.7'    ->   foo>1\n"), actions[2])
     self.assertEqual(project.StdOut(
         "    foo>1;python_version!='2.7'    ->   \n"), actions[3])
     self.assertThat(actions, matchers.HasLength(4))
コード例 #10
0
 def test_multiple_lines_nochange(self):
     global_content = textwrap.dedent("""\
         foo<2;python_version=='2.7'
         foo>1;python_version!='2.7'
         """)
     project_content = textwrap.dedent("""\
         foo<2;python_version=='2.7'
         foo>1;python_version!='2.7'
         """)
     global_reqs = requirement.parse(global_content)
     project_reqs = list(requirement.to_reqs(project_content))
     actions, reqs = update._sync_requirements_file(
         global_reqs, project_reqs, 'f', False, False, False)
     self.assertEqual(requirement.Requirements([
         requirement.Requirement(
             'foo', '', '<2', "python_version=='2.7'", ''),
         requirement.Requirement(
             'foo', '', '>1', "python_version!='2.7'", '')]),
         reqs)
     self.assertThat(actions, matchers.HasLength(0))