34 lines
		
	
	
		
			840 B
		
	
	
	
		
			Python
		
	
	
	
	
	
			
		
		
	
	
			34 lines
		
	
	
		
			840 B
		
	
	
	
		
			Python
		
	
	
	
	
	
from hashlib import sha3_256
 | 
						|
from typing import List
 | 
						|
 | 
						|
import pytest
 | 
						|
 | 
						|
from mev_inspect.classifiers.trace import TraceClassifier
 | 
						|
 | 
						|
 | 
						|
@pytest.fixture(scope="session")
 | 
						|
def trace_classifier() -> TraceClassifier:
 | 
						|
    return TraceClassifier()
 | 
						|
 | 
						|
 | 
						|
@pytest.fixture(name="get_transaction_hashes")
 | 
						|
def fixture_get_transaction_hashes():
 | 
						|
    def _get_transaction_hashes(n: int):
 | 
						|
        return _hash_with_prefix(n, "transaction_hash")
 | 
						|
 | 
						|
    return _get_transaction_hashes
 | 
						|
 | 
						|
 | 
						|
@pytest.fixture(name="get_addresses")
 | 
						|
def fixture_get_addresses():
 | 
						|
    def _get_addresses(n: int):
 | 
						|
        return [f"0x{hash_value[:40]}" for hash_value in _hash_with_prefix(n, "addr")]
 | 
						|
 | 
						|
    return _get_addresses
 | 
						|
 | 
						|
 | 
						|
def _hash_with_prefix(n_hashes: int, prefix: str) -> List[str]:
 | 
						|
    return [
 | 
						|
        sha3_256(f"{prefix}{i}".encode("utf-8")).hexdigest() for i in range(n_hashes)
 | 
						|
    ]
 |