Skip to content

Commit

Permalink
Replace implicit conftest with pytest plugin.
Browse files Browse the repository at this point in the history
github.com//issues/70
  • Loading branch information
ChrisCummins committed Jan 12, 2020
1 parent 69a2b4d commit c56f7b9
Show file tree
Hide file tree
Showing 18 changed files with 37 additions and 41 deletions.
16 changes: 2 additions & 14 deletions deeplearning/clgen/BUILD
Original file line number Diff line number Diff line change
Expand Up @@ -84,8 +84,8 @@ py_test(
],
deps = [
":clgen",
":conftest",
"//deeplearning/clgen/proto:clgen_pb_py",
"//deeplearning/clgen/tests:fixtures",
"//labm8/py:app",
"//labm8/py:fs",
"//labm8/py:pbutil",
Expand All @@ -94,18 +94,6 @@ py_test(
],
)

py_library(
name = "conftest",
testonly = True,
srcs = ["conftest.py"],
visibility = ["//visibility:public"],
deps = [
"//deeplearning/clgen/proto:clgen_pb_py",
"//labm8/py:pbutil",
"//labm8/py:test",
],
)

py_library(
name = "errors",
srcs = ["errors.py"],
Expand Down Expand Up @@ -207,9 +195,9 @@ py_test(
name = "samplers_test",
srcs = ["samplers_test.py"],
deps = [
":conftest",
":errors",
":samplers",
"//deeplearning/clgen/tests:fixtures",
"//labm8/py:app",
"//labm8/py:test",
],
Expand Down
4 changes: 2 additions & 2 deletions deeplearning/clgen/clgen_test.py
Original file line number Diff line number Diff line change
Expand Up @@ -17,8 +17,6 @@
import pathlib
import tempfile

import pytest

from deeplearning.clgen import clgen
from deeplearning.clgen import errors
from deeplearning.clgen.proto import clgen_pb2
Expand All @@ -28,6 +26,8 @@

FLAGS = app.FLAGS

pytest_plugins = ["deeplearning.clgen.tests.fixtures"]

# Instance tests.


Expand Down
6 changes: 3 additions & 3 deletions deeplearning/clgen/corpuses/BUILD
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@ py_test(
srcs = ["atomizers_test.py"],
deps = [
":atomizers",
"//deeplearning/clgen:conftest",
"//deeplearning/clgen/tests:fixtures",
"//labm8/py:app",
"//labm8/py:test",
],
Expand Down Expand Up @@ -72,12 +72,12 @@ py_test(
":corpuses",
":encoded",
":preprocessed",
"//deeplearning/clgen:conftest",
"//deeplearning/clgen:errors",
"//deeplearning/clgen/preprocessors:common",
"//deeplearning/clgen/preprocessors:cxx",
"//deeplearning/clgen/preprocessors:opencl",
"//deeplearning/clgen/proto:clgen_pb_py",
"//deeplearning/clgen/tests:fixtures",
"//labm8/py:app",
"//labm8/py:fs",
"//labm8/py:test",
Expand Down Expand Up @@ -109,8 +109,8 @@ py_test(
":atomizers",
":encoded",
":preprocessed",
"//deeplearning/clgen:conftest",
"//deeplearning/clgen:errors",
"//deeplearning/clgen/tests:fixtures",
"//labm8/py:app",
"//labm8/py:test",
],
Expand Down
4 changes: 2 additions & 2 deletions deeplearning/clgen/corpuses/atomizers_test.py
Original file line number Diff line number Diff line change
Expand Up @@ -16,15 +16,15 @@
import pathlib
import tempfile

import pytest

import deeplearning.clgen.errors
from deeplearning.clgen.corpuses import atomizers
from labm8.py import app
from labm8.py import test

FLAGS = app.FLAGS

pytest_plugins = ["deeplearning.clgen.tests.fixtures"]

# The set of multichar tokens for the OpenCL programming language.
OPENCL_ATOMS = set(
[
Expand Down
4 changes: 2 additions & 2 deletions deeplearning/clgen/corpuses/corpuses_test.py
Original file line number Diff line number Diff line change
Expand Up @@ -18,8 +18,6 @@
import pathlib
import tempfile

import pytest

from deeplearning.clgen import errors
from deeplearning.clgen.corpuses import corpuses
from deeplearning.clgen.corpuses import encoded
Expand All @@ -30,6 +28,8 @@

FLAGS = app.FLAGS

pytest_plugins = ["deeplearning.clgen.tests.fixtures"]

# The Corpus.hash for an OpenCL corpus of the abc_corpus.
ABC_CORPUS_HASH = "cb7c7a23c433a1f628c9b120378759f1723fdf42"

Expand Down
3 changes: 2 additions & 1 deletion deeplearning/clgen/corpuses/encoded_test.py
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,6 @@
import tempfile

import numpy as np
import pytest

from deeplearning.clgen import errors
from deeplearning.clgen.corpuses import atomizers
Expand All @@ -28,6 +27,8 @@

FLAGS = app.FLAGS

pytest_plugins = ["deeplearning.clgen.tests.fixtures"]


@test.Fixture(scope="function")
def abc_atomizer() -> atomizers.AsciiCharacterAtomizer:
Expand Down
2 changes: 1 addition & 1 deletion deeplearning/clgen/docker/BUILD
Original file line number Diff line number Diff line change
Expand Up @@ -50,8 +50,8 @@ py_test(
deps = [
":export_pretrained_model",
"//deeplearning/clgen",
"//deeplearning/clgen:conftest",
"//deeplearning/clgen/proto:clgen_pb_py",
"//deeplearning/clgen/tests:fixtures",
"//labm8/py:app",
"//labm8/py:test",
"//third_party/py/pytest",
Expand Down
4 changes: 2 additions & 2 deletions deeplearning/clgen/docker/export_pretrained_model_test.py
Original file line number Diff line number Diff line change
@@ -1,8 +1,6 @@
"""Unit tests for //deeplearning/clgen/docker:export_pretrained_model."""
import pathlib

import pytest

from deeplearning.clgen import clgen
from deeplearning.clgen.docker import export_pretrained_model
from deeplearning.clgen.proto import clgen_pb2
Expand All @@ -11,6 +9,8 @@

FLAGS = app.FLAGS

pytest_plugins = ["deeplearning.clgen.tests.fixtures"]


@test.Fixture(scope="function")
def abc_instance(abc_instance_config: clgen_pb2.Instance):
Expand Down
10 changes: 5 additions & 5 deletions deeplearning/clgen/models/BUILD
Original file line number Diff line number Diff line change
Expand Up @@ -48,8 +48,8 @@ py_test(
srcs = ["builders_test.py"],
deps = [
":builders",
"//deeplearning/clgen:conftest",
"//deeplearning/clgen/proto:clgen_pb_py",
"//deeplearning/clgen/tests:fixtures",
"//labm8/py:app",
"//labm8/py:test",
],
Expand All @@ -72,8 +72,8 @@ py_test(
srcs = ["data_generators_test.py"],
deps = [
":data_generators",
"//deeplearning/clgen:conftest",
"//deeplearning/clgen/proto:clgen_pb_py",
"//deeplearning/clgen/tests:fixtures",
"//labm8/py:app",
"//labm8/py:test",
],
Expand Down Expand Up @@ -108,9 +108,9 @@ py_test(
deps = [
":keras_backend",
":models",
"//deeplearning/clgen:conftest",
"//deeplearning/clgen:sample_observers",
"//deeplearning/clgen/proto:clgen_pb_py",
"//deeplearning/clgen/tests:fixtures",
"//labm8/py:app",
"//labm8/py:crypto",
"//labm8/py:fs",
Expand Down Expand Up @@ -173,8 +173,8 @@ py_test(
srcs = ["models_test.py"],
deps = [
":models",
"//deeplearning/clgen:conftest",
"//deeplearning/clgen/proto:clgen_pb_py",
"//deeplearning/clgen/tests:fixtures",
"//labm8/py:app",
"//labm8/py:crypto",
"//labm8/py:fs",
Expand Down Expand Up @@ -217,8 +217,8 @@ py_test(
deps = [
":models",
":tensorflow_backend",
"//deeplearning/clgen:conftest",
"//deeplearning/clgen/proto:clgen_pb_py",
"//deeplearning/clgen/tests:fixtures",
"//labm8/py:app",
"//labm8/py:crypto",
"//labm8/py:fs",
Expand Down
2 changes: 2 additions & 0 deletions deeplearning/clgen/models/builders_test.py
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,8 @@

FLAGS = app.FLAGS

pytest_plugins = ["deeplearning.clgen.tests.fixtures"]

# AssertIsBuildable() tests.


Expand Down
3 changes: 2 additions & 1 deletion deeplearning/clgen/models/data_generators_test.py
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,6 @@
# along with clgen. If not, see <https://www.gnu.org/licenses/>.
"""Unit tests for //deeplearning/clgen/models/data_generators.py."""
import numpy as np
import pytest

from deeplearning.clgen import errors
from deeplearning.clgen.models import data_generators
Expand All @@ -23,6 +22,8 @@

FLAGS = app.FLAGS

pytest_plugins = ["deeplearning.clgen.tests.fixtures"]


class CorpusMock(object):
def __init__(self, corpus_length: int = 100, vocabulary_size: int = 10):
Expand Down
3 changes: 2 additions & 1 deletion deeplearning/clgen/models/keras_backend_test.py
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,6 @@
"""Unit tests for //deeplearning/clgen/models/keras_backend.py."""
import checksumdir
import numpy as np
import pytest

from deeplearning.clgen import sample_observers
from deeplearning.clgen.models import keras_backend
Expand All @@ -29,6 +28,8 @@

FLAGS = app.FLAGS

pytest_plugins = ["deeplearning.clgen.tests.fixtures"]


class MockSampler(object):
"""Mock class for a Sampler."""
Expand Down
4 changes: 2 additions & 2 deletions deeplearning/clgen/models/models_test.py
Original file line number Diff line number Diff line change
Expand Up @@ -15,8 +15,6 @@
"""Unit tests for //deeplearning/clgen/models/models.py."""
import pathlib

import pytest

from deeplearning.clgen import errors
from deeplearning.clgen.models import models
from deeplearning.clgen.proto import internal_pb2
Expand All @@ -27,6 +25,8 @@

FLAGS = app.FLAGS

pytest_plugins = ["deeplearning.clgen.tests.fixtures"]

# The Model.hash for an instance of abc_model_config.
ABC_MODEL_HASH = "bf95e335177883a9204a560617990caf3fd1efc6"

Expand Down
3 changes: 2 additions & 1 deletion deeplearning/clgen/models/tensorflow_backend_test.py
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,6 @@
"""Unit tests for //deeplearning/clgen/models/tensorflow_backend.py."""
import checksumdir
import numpy as np
import pytest

from deeplearning.clgen import sample_observers
from deeplearning.clgen.models import models
Expand All @@ -28,6 +27,8 @@

FLAGS = app.FLAGS

pytest_plugins = ["deeplearning.clgen.tests.fixtures"]


class MockSampler(object):
"""Mock class for a Sampler."""
Expand Down
2 changes: 1 addition & 1 deletion deeplearning/clgen/preprocessors/BUILD
Original file line number Diff line number Diff line change
Expand Up @@ -546,8 +546,8 @@ py_test(
deps = [
":preprocessors",
":public",
"//deeplearning/clgen:conftest",
"//deeplearning/clgen:errors",
"//deeplearning/clgen/tests:fixtures",
"//labm8/py:app",
"//labm8/py:fs",
"//labm8/py:test",
Expand Down
4 changes: 2 additions & 2 deletions deeplearning/clgen/preprocessors/normalizer.py
Original file line number Diff line number Diff line change
Expand Up @@ -24,10 +24,10 @@

FLAGS = app.FLAGS

# Path of the clang rewriter binary.
CLGEN_REWRITER = bazelutil.DataPath(
"phd/deeplearning/clgen/preprocessors/clang_rewriter"
)
assert CLGEN_REWRITER.is_file()

# On Linux we must preload the LLVM libraries.
CLGEN_REWRITER_ENV = os.environ.copy()
Expand Down Expand Up @@ -89,7 +89,7 @@ def NormalizeIdentifiers(
)
stdout, stderr = process.communicate()
app.Log(2, stderr)
# If there was nothing to rewrite, rewriter exits with error code:
# If there was nothing to rewrite, the rewriter exits with error code:
EUGLY_CODE = 204
if process.returncode == EUGLY_CODE:
# Propagate the error:
Expand Down
2 changes: 1 addition & 1 deletion deeplearning/clgen/preprocessors/preprocessors_test.py
Original file line number Diff line number Diff line change
Expand Up @@ -94,7 +94,7 @@ def test_GetPreprocessFunction_mock_preprocessor():
f = preprocessors.GetPreprocessorFunction(
"deeplearning.clgen.preprocessors.preprocessors_test:MockPreprocessor"
)
assert f == MockPreprocessor
assert f.__name__ == "MockPreprocessor"


def test_GetPreprocessorFunction_absolute_path(tempdir: pathlib.Path):
Expand Down
2 changes: 2 additions & 0 deletions deeplearning/clgen/samplers_test.py
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,8 @@

FLAGS = app.FLAGS

pytest_plugins = ["deeplearning.clgen.tests.fixtures"]


class AtomizerMock(object):
"""Mock class for atomizer."""
Expand Down

0 comments on commit c56f7b9

Please sign in to comment.