googleapis / googleapis/google-cloud-python

Set `random.seed` explicitly in each test function for rest streaming

Offen
#15,051 1 Kommentar 0 Reaktionen 1 zugewiesene Person Beansprucht von @ohmayr Auf GitHub ansehen
priority: p2 type: process
Vorherrschende Sprache
Python
Sterne
5.4k
Forks
1.8k
Ø Merge
3 T. 4 Std.
Gemergte PRs (30 T.)
122

Beschreibung

Currently, the tests for rest streaming depend on a single seed value configured globally within the file [here](https://github.com/googleapis/python-api-core/blob/main/tests/unit/test_rest_streaming.py#L35). This makes the tests non-deterministic and inter-dependent making it difficult to understand and debug test failures.

Instead, we can either:

- set `random.seed` explicitly in each test function. The value can either be hard-coded in (recommended), or it can be varying (by passing in, say, an integer based on time of day, PID, etc.) .

or

- pass in the seed to the constructor of `_ResponseItr` within the test file.

In either case, make sure the logs and / or errors print out what the value of the seed turned out to be, so that if we encounter the same failure, we can make sure the test function sets the same seed so we can replicate it.

Also do the same for the test cases of asynchronous rest streaming once implemented. See: [async rest]streaming(https://github.com/googleapis/python-api-core/pull/686)

Reference: https://github.com/googleapis/python-api-core/pull/686#discussion_r1729542731

Beitragsleitfaden

Beitragsleitfaden öffnen

Bewertung

Dieses Issue wurde noch nicht bewertet.

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.