Exemplo n.º 1
0
    def test_python_requirements_field(self):
        req1 = PythonRequirement('foo==1.0')
        req2 = PythonRequirement('bar==1.0')

        self.assertNotEqual(
            PythonRequirementsField([req1]).fingerprint(),
            PythonRequirementsField([req2]).fingerprint(),
        )
Exemplo n.º 2
0
    def test_python_requirements_field_version_filter(self):
        """version_filter is a lambda and can't be hashed properly.

    Since in practice this is only ever used to differentiate between py3k and py2, it should use
    a tuple of strings or even just a flag instead.
    """
        req1 = PythonRequirement('foo==1.0',
                                 version_filter=lambda py, pl: False)
        req2 = PythonRequirement('foo==1.0')

        self.assertEqual(
            PythonRequirementsField([req1]).fingerprint(),
            PythonRequirementsField([req2]).fingerprint(),
        )
 def add_payload_fields(cls, build_graph, addresses, payload):
   python_reqs = set()
   for address in addresses:
     python_dependency = build_graph.get_target(address)
     python_reqs.update({str(r) for r in python_dependency.requirements})
   payload.add_fields({
     'requirements': PythonRequirementsField(list(python_reqs) or []),
   })
   return payload
  def __init__(self, payload=None, requirements=None, **kwargs):
    """
    :param requirements: pip requirements as `python_requirement <#python_requirement>`_\\s.
    :type requirements: List of python_requirement calls
    """
    payload = payload or Payload()

    assert_list(requirements, expected_type=PythonRequirement, key_arg='requirements')
    payload.add_fields({
      'requirements': PythonRequirementsField(requirements or []),
    })
    super().__init__(payload=payload, **kwargs)
Exemplo n.º 5
0
    def __init__(self, payload=None, requirements=None, **kwargs):
        """
    :param requirements: pip requirements
    :type requirements: List of :ref:`python_requirement <bdict_python_requirement>`\s
    """
        payload = payload or Payload()

        assert_list(requirements, expected_type=PythonRequirement)
        payload.add_fields({
            'requirements':
            PythonRequirementsField(requirements or []),
        })
        super(PythonRequirementLibrary, self).__init__(payload=payload,
                                                       **kwargs)