Udi Meiri created BEAM-9026:
-------------------------------
Summary: ValueProviderTests test failures
Key: BEAM-9026
URL: https://issues.apache.org/jira/browse/BEAM-9026
Project: Beam
Issue Type: Bug
Components: sdk-py-core, test-failures
Reporter: Udi Meiri
Assignee: Udi Meiri
It seems that there's an ordering issue with these tests, where they expect
RuntimeValueProvider.runtime_options to be None, but it has already been
initialized by another test.
{code}
13:49:31 ______
ValueProviderTests.test_runtime_value_provider_positional_argument ______
13:49:31 [gw1] linux -- Python 3.6.8
/home/jenkins/jenkins-slave/workspace/beam_PreCommit_Python_Commit/src/sdks/python/test-suites/tox/py36/build/srcs/sdks/python/target/.tox-py36-gcp-pytest/py36-gcp-pytest/bin/python
13:49:31
13:49:31 self = <apache_beam.options.value_provider_test.ValueProviderTests
testMethod=test_runtime_value_provider_positional_argument>
13:49:31
13:49:31 def test_runtime_value_provider_positional_argument(self):
13:49:31 class UserDefinedOptions(PipelineOptions):
13:49:31 @classmethod
13:49:31 def _add_argparse_args(cls, parser):
13:49:31 parser.add_value_provider_argument(
13:49:31 'vpt_vp_arg4',
13:49:31 help='This positional argument is a value provider')
13:49:31 options = UserDefinedOptions([])
13:49:31 self.assertTrue(isinstance(options.vpt_vp_arg4,
RuntimeValueProvider))
13:49:31 > self.assertFalse(options.vpt_vp_arg4.is_accessible())
13:49:31 E AssertionError: True is not false
13:49:31
13:49:31 apache_beam/options/value_provider_test.py:85: AssertionError
13:49:31 __________________ ValueProviderTests.test_set_runtime_option
__________________
13:49:31 [gw1] linux -- Python 3.6.8
/home/jenkins/jenkins-slave/workspace/beam_PreCommit_Python_Commit/src/sdks/python/test-suites/tox/py36/build/srcs/sdks/python/target/.tox-py36-gcp-pytest/py36-gcp-pytest/bin/python
13:49:31
13:49:31 self = <apache_beam.options.value_provider_test.ValueProviderTests
testMethod=test_set_runtime_option>
13:49:31
13:49:31 def test_set_runtime_option(self):
13:49:31 # define ValueProvider options, with and without default values
13:49:31 class UserDefinedOptions1(PipelineOptions):
13:49:31 @classmethod
13:49:31 def _add_argparse_args(cls, parser):
13:49:31 parser.add_value_provider_argument(
13:49:31 '--vpt_vp_arg6',
13:49:31 help='This keyword argument is a value provider') #
set at runtime
13:49:31
13:49:31 parser.add_value_provider_argument( # not set, had
default int
13:49:31 '-v', '--vpt_vp_arg7', # with
short form
13:49:31 default=123,
13:49:31 type=int)
13:49:31
13:49:31 parser.add_value_provider_argument( # not set, had
default str
13:49:31 '--vpt_vp-arg8', # with dash
in name
13:49:31 default='123',
13:49:31 type=str)
13:49:31
13:49:31 parser.add_value_provider_argument( # not set and
no default
13:49:31 '--vpt_vp_arg9',
13:49:31 type=float)
13:49:31
13:49:31 parser.add_value_provider_argument( # positional
argument set
13:49:31 'vpt_vp_arg10', # default &
runtime ignored
13:49:31 help='This positional argument is a value provider',
13:49:31 type=float,
13:49:31 default=5.4)
13:49:31
13:49:31 # provide values at graph-construction time
13:49:31 # (options not provided here become of the type
RuntimeValueProvider)
13:49:31 options = UserDefinedOptions1(['1.2'])
13:49:31 > self.assertFalse(options.vpt_vp_arg6.is_accessible())
13:49:31 E AssertionError: True is not false
13:49:31
13:49:31 apache_beam/options/value_provider_test.py:135: AssertionError
{code}
https://builds.apache.org/job/beam_PreCommit_Python_Commit/10566/timestamps/?time=HH:mm:ss&timeZone=GMT-8&appendLog&locale=en_US
--
This message was sent by Atlassian Jira
(v8.3.4#803005)