Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Validator transfer from fixtures.py to validators directory, Part 2 #690

Merged
merged 29 commits into from Nov 30, 2022
Merged
Show file tree
Hide file tree
Changes from 27 commits
Commits
Show all changes
29 commits
Select commit Hold shift + click to select a range
9f0e03b
Move validate_transaction_metrics to validators directory
lrafeei Aug 30, 2022
f3d788f
Comment out original validate_transaction_metrics from fixtures.py
lrafeei Aug 30, 2022
96e752f
Move validate_time_metrics_outside_transaction to validators directory
lrafeei Aug 30, 2022
16d0361
Move validate_internal_metrics into validators directory and fixed va…
lrafeei Aug 30, 2022
2dbea79
Move validate_transaction_errors into validators directory
lrafeei Aug 31, 2022
f20b9b5
Move validate_application_errors into validators directory
lrafeei Aug 31, 2022
5efcfa8
Move validate_custom_parameters into validators directory
lrafeei Aug 31, 2022
76ee5a4
Move validate_synthetics_event into validators directory
lrafeei Aug 31, 2022
f47c397
Move validate_transaction_event_attributes into validators directory
lrafeei Aug 31, 2022
f3423db
Move validate_non_transaction_error_event into validators directory
lrafeei Sep 6, 2022
1bbb047
Move validate_application_error_trace_count into validators directory
lrafeei Sep 6, 2022
140cfaa
Move validate_application_error_event_count into validators directory
lrafeei Sep 6, 2022
d22a5e2
Move validate_synthetics_transaction_trace into validators directory
lrafeei Sep 6, 2022
3fbd623
Move validate_tt_collector_json to validators directory
lrafeei Sep 19, 2022
6ce729d
Move validate_transaction_trace_attributes into validator directory
lrafeei Sep 19, 2022
40d343b
Move validate_transaction_error_trace_attributes into validator direc…
lrafeei Sep 20, 2022
af378e0
Move validate_error_trace_collector_json into validator directory
lrafeei Sep 20, 2022
3325cd5
Move validate_error_event_collector_json into validator directory
lrafeei Sep 20, 2022
b15f3cc
Move validate_transaction_event_collector_json into validator directory
lrafeei Sep 20, 2022
55643ce
Merge branch 'main' into validator-transfer-p2
lrafeei Nov 11, 2022
4ff7513
Fix import issues from merge
lrafeei Nov 11, 2022
5c96540
Fix some pylint errors
lrafeei Nov 11, 2022
c625360
Revert 'raise ValueError' to be PY2 compatible
lrafeei Nov 11, 2022
d692809
Merge branch 'main' into validator-transfer-p2
lrafeei Nov 14, 2022
52579b6
Merge branch 'main' into validator-transfer-p2
lrafeei Nov 16, 2022
a4f16f2
Merge branch 'main' into validator-transfer-p2
lrafeei Nov 23, 2022
c79484e
Merge branch 'main' into validator-transfer-p2
lrafeei Nov 28, 2022
db272fe
Delete commented lines
lrafeei Nov 28, 2022
b23788b
Merge branch 'main' into validator-transfer-p2
lrafeei Nov 28, 2022
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
8 changes: 6 additions & 2 deletions tests/agent_features/test_attributes_in_action.py
Expand Up @@ -24,13 +24,17 @@
validate_error_event_attributes,
validate_error_event_attributes_outside_transaction,
validate_error_trace_attributes_outside_transaction,
validate_transaction_error_trace_attributes,
validate_transaction_trace_attributes,
)
from testing_support.validators.validate_span_events import validate_span_events
from testing_support.validators.validate_transaction_error_trace_attributes import (
validate_transaction_error_trace_attributes,
)
from testing_support.validators.validate_transaction_event_attributes import (
validate_transaction_event_attributes,
)
from testing_support.validators.validate_transaction_trace_attributes import (
validate_transaction_trace_attributes,
)

from newrelic.api.application import application_instance as application
from newrelic.api.message_transaction import message_transaction
Expand Down
51 changes: 32 additions & 19 deletions tests/agent_features/test_collector_payloads.py
Expand Up @@ -14,17 +14,30 @@

import pytest
import webtest

from testing_support.fixtures import (validate_error_trace_collector_json,
validate_tt_collector_json, validate_transaction_event_collector_json,
validate_error_event_collector_json,
validate_custom_event_collector_json, override_application_settings)

from testing_support.sample_applications import (simple_app,
simple_exceptional_app, simple_custom_event_app)

from testing_support.validators.validate_log_event_collector_json import validate_log_event_collector_json

from testing_support.fixtures import (
override_application_settings,
validate_custom_event_collector_json,
)
from testing_support.sample_applications import (
simple_app,
simple_custom_event_app,
simple_exceptional_app,
)
from testing_support.validators.validate_error_event_collector_json import (
validate_error_event_collector_json,
)
from testing_support.validators.validate_error_trace_collector_json import (
validate_error_trace_collector_json,
)
from testing_support.validators.validate_log_event_collector_json import (
validate_log_event_collector_json,
)
from testing_support.validators.validate_transaction_event_collector_json import (
validate_transaction_event_collector_json,
)
from testing_support.validators.validate_tt_collector_json import (
validate_tt_collector_json,
)

exceptional_application = webtest.TestApp(simple_exceptional_app)
normal_application = webtest.TestApp(simple_app)
Expand All @@ -34,42 +47,42 @@
@validate_error_trace_collector_json()
def test_error_trace_json():
try:
exceptional_application.get('/')
exceptional_application.get("/")
except ValueError:
pass


@validate_error_event_collector_json()
def test_error_event_json():
try:
exceptional_application.get('/')
exceptional_application.get("/")
except ValueError:
pass


@validate_tt_collector_json()
def test_transaction_trace_json():
normal_application.get('/')
normal_application.get("/")


@validate_tt_collector_json(exclude_request_uri=True)
@override_application_settings({'attributes.exclude': set(('request.uri',))})
@override_application_settings({"attributes.exclude": set(("request.uri",))})
def test_transaction_trace_json_no_request_uri():
normal_application.get('/')
normal_application.get("/")


@validate_transaction_event_collector_json()
def test_transaction_event_json():
normal_application.get('/')
normal_application.get("/")


@validate_custom_event_collector_json()
def test_custom_event_json():
custom_event_application.get('/')
custom_event_application.get("/")


@pytest.mark.xfail(reason="Unwritten validator")
@validate_log_event_collector_json
def test_log_event_json():
normal_application.get('/')
normal_application.get("/")
raise NotImplementedError("Fix my validator")
12 changes: 6 additions & 6 deletions tests/agent_features/test_event_loop_wait_time.py
Expand Up @@ -16,16 +16,16 @@
import time

import pytest
from testing_support.fixtures import (
override_application_settings,
validate_transaction_trace_attributes,
)
from testing_support.fixtures import override_application_settings
from testing_support.validators.validate_transaction_event_attributes import (
validate_transaction_event_attributes,
)
from testing_support.validators.validate_transaction_metrics import (
validate_transaction_metrics,
)
from testing_support.validators.validate_transaction_trace_attributes import (
validate_transaction_trace_attributes,
)

from newrelic.api.background_task import background_task
from newrelic.api.function_trace import FunctionTrace, function_trace
Expand Down Expand Up @@ -75,7 +75,7 @@ async def wait_for_loop(ready, done, times=1):
),
)
def test_record_event_loop_wait(event_loop, blocking_transaction_active, event_loop_visibility_enabled):
import asyncio
# import asyncio

metric_count = 2 if event_loop_visibility_enabled else None
execute_attributes = {"intrinsic": ("eventLoopTime",), "agent": (), "user": ()}
Expand Down Expand Up @@ -184,7 +184,7 @@ def test_blocking_task_on_different_loop():


def test_record_event_loop_wait_on_different_task(event_loop):
import asyncio
# import asyncio

async def recorder(ready, wait):
ready.set()
Expand Down
4 changes: 3 additions & 1 deletion tests/agent_features/test_ignore_expected_errors.py
Expand Up @@ -19,11 +19,13 @@
validate_error_event_attributes_outside_transaction,
validate_error_event_sample_data,
validate_error_trace_attributes_outside_transaction,
validate_transaction_error_trace_attributes,
)
from testing_support.validators.validate_time_metrics_outside_transaction import (
validate_time_metrics_outside_transaction,
)
from testing_support.validators.validate_transaction_error_trace_attributes import (
validate_transaction_error_trace_attributes,
)
from testing_support.validators.validate_transaction_errors import (
validate_transaction_errors,
)
Expand Down
10 changes: 5 additions & 5 deletions tests/agent_features/test_lambda_handler.py
Expand Up @@ -16,15 +16,15 @@
from copy import deepcopy

import pytest
from testing_support.fixtures import (
override_application_settings,
validate_transaction_trace_attributes,
)
from testing_support.fixtures import override_application_settings
from testing_support.validators.validate_transaction_event_attributes import (
validate_transaction_event_attributes,
)
from testing_support.validators.validate_transaction_trace_attributes import (
validate_transaction_trace_attributes,
)

import newrelic.api.lambda_handler as lambda_handler
from newrelic.api import lambda_handler


# NOTE: this fixture will force all tests in this file to assume that a cold
Expand Down
16 changes: 12 additions & 4 deletions tests/agent_features/test_notice_error.py
Expand Up @@ -19,14 +19,22 @@
error_is_saved,
override_application_settings,
reset_core_stats_engine,
validate_application_error_event_count,
validate_application_error_trace_count,
validate_transaction_error_event_count,
validate_transaction_error_trace_count,
)
from testing_support.validators.validate_application_error_event_count import (
validate_application_error_event_count,
)
from testing_support.validators.validate_application_error_trace_count import (
validate_application_error_trace_count,
)
from testing_support.validators.validate_application_errors import (
validate_application_errors,
)
from testing_support.validators.validate_transaction_errors import (
validate_transaction_errors,
)

from testing_support.validators.validate_application_errors import validate_application_errors
from testing_support.validators.validate_transaction_errors import validate_transaction_errors
from newrelic.api.application import application_instance as application
from newrelic.api.application import application_settings
from newrelic.api.background_task import background_task
Expand Down
29 changes: 10 additions & 19 deletions tests/agent_features/test_span_events.py
Expand Up @@ -34,7 +34,6 @@
from newrelic.api.datastore_trace import DatastoreTrace
from newrelic.api.external_trace import ExternalTrace
from newrelic.api.function_trace import FunctionTrace, function_trace
from newrelic.api.graphql_trace import GraphQLOperationTrace, GraphQLResolverTrace
from newrelic.api.memcache_trace import MemcacheTrace
from newrelic.api.message_trace import MessageTrace
from newrelic.api.solr_trace import SolrTrace
Expand Down Expand Up @@ -125,8 +124,6 @@ def _test():
(DatastoreTrace, ("db_product", "db_target", "db_operation")),
(ExternalTrace, ("lib", "url")),
(FunctionTrace, ("name",)),
(GraphQLOperationTrace, ()),
(GraphQLResolverTrace, ()),
(MemcacheTrace, ("command",)),
(MessageTrace, ("lib", "operation", "dst_type", "dst_name")),
(SolrTrace, ("lib", "command")),
Expand Down Expand Up @@ -416,11 +413,11 @@ def _test():
@pytest.mark.parametrize("collect_span_events", (False, True))
@pytest.mark.parametrize("span_events_enabled", (False, True))
def test_collect_span_events_override(collect_span_events, span_events_enabled):

if collect_span_events and span_events_enabled:
spans_expected = True
else:
spans_expected = False
spans_expected = collect_span_events and span_events_enabled
# if collect_span_events and span_events_enabled:
# spans_expected = True
# else:
# spans_expected = False

span_count = 2 if spans_expected else 0

Expand Down Expand Up @@ -556,9 +553,9 @@ def _test():
def test_span_user_attribute_overrides_transaction_attribute():
transaction = current_transaction()

transaction.add_custom_attribute("foo", "a")
transaction.add_custom_parameter("foo", "a")
add_custom_span_attribute("foo", "b")
transaction.add_custom_attribute("foo", "c")
transaction.add_custom_parameter("foo", "c")


@override_application_settings({"attributes.include": "*"})
Expand Down Expand Up @@ -603,7 +600,7 @@ def _test():
transaction = current_transaction()

for i in range(128):
transaction.add_custom_attribute("txn_attr%i" % i, "txnValue")
transaction.add_custom_parameter("txn_attr%i" % i, "txnValue")
if i < 64:
add_custom_span_attribute("span_attr%i" % i, "spanValue")

Expand All @@ -620,8 +617,6 @@ def _test():
(DatastoreTrace, ("db_product", "db_target", "db_operation")),
(ExternalTrace, ("lib", "url")),
(FunctionTrace, ("name",)),
(GraphQLOperationTrace, ()),
(GraphQLResolverTrace, ()),
(MemcacheTrace, ("command",)),
(MessageTrace, ("lib", "operation", "dst_type", "dst_name")),
(SolrTrace, ("lib", "command")),
Expand Down Expand Up @@ -671,8 +666,6 @@ def _test():
(DatastoreTrace, ("db_product", "db_target", "db_operation")),
(ExternalTrace, ("lib", "url")),
(FunctionTrace, ("name",)),
(GraphQLOperationTrace, ()),
(GraphQLResolverTrace, ()),
(MemcacheTrace, ("command",)),
(MessageTrace, ("lib", "operation", "dst_type", "dst_name")),
(SolrTrace, ("lib", "command")),
Expand Down Expand Up @@ -716,8 +709,6 @@ def _test():
(DatastoreTrace, ("db_product", "db_target", "db_operation")),
(ExternalTrace, ("lib", "url")),
(FunctionTrace, ("name",)),
(GraphQLOperationTrace, ()),
(GraphQLResolverTrace, ()),
(MemcacheTrace, ("command",)),
(MessageTrace, ("lib", "operation", "dst_type", "dst_name")),
(SolrTrace, ("lib", "command")),
Expand All @@ -732,9 +723,9 @@ def test_span_event_notice_error_overrides_observed(trace_type, args):
with trace_type(*args):
try:
raise ERROR
except:
except Exception:
notice_error()
raise ValueError
raise ValueError # pylint: disable
except ValueError:
pass

Expand Down
6 changes: 5 additions & 1 deletion tests/agent_features/test_synthetics.py
Expand Up @@ -19,10 +19,14 @@
cat_enabled,
make_synthetics_header,
override_application_settings,
)
from testing_support.validators.validate_synthetics_event import (
validate_synthetics_event,
)
from testing_support.validators.validate_synthetics_transaction_trace import (
validate_synthetics_transaction_trace,
)

from testing_support.validators.validate_synthetics_event import validate_synthetics_event
from newrelic.api.web_transaction import web_transaction
from newrelic.api.wsgi_application import wsgi_application
from newrelic.common.encoding_utils import deobfuscate, json_decode
Expand Down
2 changes: 1 addition & 1 deletion tests/agent_features/test_web_transaction.py
Expand Up @@ -24,10 +24,10 @@
validate_transaction_metrics,
)

import newrelic.packages.six as six
from newrelic.api.application import application_instance
from newrelic.api.web_transaction import WebTransaction
from newrelic.api.wsgi_application import wsgi_application
from newrelic.packages import six

application = webtest.TestApp(simple_app)

Expand Down
4 changes: 3 additions & 1 deletion tests/agent_features/test_wsgi_attributes.py
Expand Up @@ -17,9 +17,11 @@
dt_enabled,
override_application_settings,
validate_error_event_attributes,
validate_transaction_error_trace_attributes,
)
from testing_support.sample_applications import fully_featured_app
from testing_support.validators.validate_transaction_error_trace_attributes import (
validate_transaction_error_trace_attributes,
)
from testing_support.validators.validate_transaction_event_attributes import (
validate_transaction_event_attributes,
)
Expand Down
7 changes: 3 additions & 4 deletions tests/datastore_aioredis/test_custom_conn_pool.py
Expand Up @@ -18,10 +18,9 @@
"""

from testing_support.db_settings import redis_settings
from testing_support.fixture.event_loop import event_loop as loop # noqa
from testing_support.fixtures import override_application_settings
from testing_support.util import instance_hostname

# from testing_support.fixture.event_loop import event_loop as loop
from testing_support.validators.validate_transaction_metrics import (
validate_transaction_metrics,
)
Expand Down Expand Up @@ -111,7 +110,7 @@ async def exercise_redis(client):
background_task=True,
)
@background_task()
def test_fake_conn_pool_enable_instance(client, loop, monkeypatch):
def test_fake_conn_pool_enable_instance(client, loop, monkeypatch): # noqa
# Get a real connection
conn = getattr(client, "_pool_or_conn", None)
if conn is None:
Expand All @@ -136,7 +135,7 @@ def test_fake_conn_pool_enable_instance(client, loop, monkeypatch):
background_task=True,
)
@background_task()
def test_fake_conn_pool_disable_instance(client, loop, monkeypatch):
def test_fake_conn_pool_disable_instance(client, loop, monkeypatch): # noqa
# Get a real connection
conn = getattr(client, "_pool_or_conn", None)
if conn is None:
Expand Down