Files
ivatar/scripts/run_tests_with_coverage.py
Oliver Falk dcdbc6b608 Update test scripts and documentation for simplified OpenTelemetry approach
- Update all test scripts to use OTEL_EXPORT_ENABLED instead of legacy flags
- Remove references to deprecated ENABLE_OPENTELEMETRY and OTEL_ENABLED
- Simplify run_tests_local.sh to use --exclude-tag=bluesky
- Update documentation to reflect instrumentation always enabled
- Remove legacy configuration section from README.md

All scripts now use the new approach where:
- OpenTelemetry instrumentation is always enabled
- Only data export is controlled by OTEL_EXPORT_ENABLED flag
- Cleaner configuration with single export control flag
2025-10-17 11:00:04 +02:00

51 lines
1.4 KiB
Python
Executable File

#!/usr/bin/env python3
# -*- coding: utf-8 -*-
"""
Run tests with OpenTelemetry instrumentation and export enabled, plus coverage measurement.
This script is designed to be used with 'coverage run' command.
"""
import os
import sys
import django
from django.conf import settings
from django.test.utils import get_runner
def main():
# Enable OpenTelemetry instrumentation and export
os.environ["OTEL_EXPORT_ENABLED"] = "true"
os.environ["OTEL_SERVICE_NAME"] = "ivatar-test"
os.environ["OTEL_ENVIRONMENT"] = "test"
print("Running tests with OpenTelemetry instrumentation and export enabled...")
print("====================================================================")
# Add current directory to Python path
sys.path.insert(0, os.path.dirname(os.path.dirname(os.path.abspath(__file__))))
# Setup Django
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "ivatar.settings")
django.setup()
# Get Django test runner
TestRunner = get_runner(settings)
test_runner = TestRunner()
# Run tests
failures = test_runner.run_tests([])
if failures:
print(f"Tests failed with {failures} failures")
return 1
else:
print("")
print(
"Tests completed successfully (OpenTelemetry instrumentation and export enabled)"
)
return 0
if __name__ == "__main__":
sys.exit(main())