============================= test session starts =============================
platform win32 -- Python 3.13.12, pytest-9.0.2, pluggy-1.6.0 -- E:\BaiduSyncdisk\APP\Program\Violet_omni_1.4\plugins\marketplaces\violet-plugin-place\plugins\lylacore-rust\crates\pyo3-bindings\.venv\Scripts\python.exe
cachedir: .pytest_cache
hypothesis profile 'default'
rootdir: E:\BaiduSyncdisk\APP\Program\Violet_omni_1.4\plugins\marketplaces\violet-plugin-place\plugins\lylacore-rust\crates\pyo3-bindings
configfile: pyproject.toml
plugins: hypothesis-6.151.9, asyncio-1.3.0, cov-7.0.0, timeout-2.4.0
asyncio: mode=Mode.AUTO, debug=False, asyncio_default_fixture_loop_scope=None, asyncio_default_test_loop_scope=function
collecting ... collected 123 items

tests/test_async_stress.py::test_concurrent_key_derivations PASSED       [  0%]
tests/test_async_stress.py::test_high_concurrency_stress PASSED          [  1%]
tests/test_async_stress.py::test_async_error_propagation PASSED          [  2%]
tests/test_async_stress.py::test_gil_release_verification PASSED         [  3%]
tests/test_auth_tag.py::TestAuthTagConstruction::test_construct_from_valid_bytes PASSED [  4%]
tests/test_auth_tag.py::TestAuthTagConstruction::test_construct_rejects_short_data PASSED [  4%]
tests/test_auth_tag.py::TestAuthTagConstruction::test_construct_rejects_long_data PASSED [  5%]
tests/test_auth_tag.py::TestAuthTagConstruction::test_construct_rejects_empty_data PASSED [  6%]
tests/test_auth_tag.py::TestAuthTagMethods::test_as_bytes_returns_bytes PASSED [  7%]
tests/test_auth_tag.py::TestAuthTagMethods::test_as_bytes_returns_16_bytes PASSED [  8%]
tests/test_auth_tag.py::TestAuthTagMethods::test_as_bytes_is_consistent PASSED [  8%]
tests/test_auth_tag.py::TestAuthTagMethods::test_repr_shows_hex PASSED   [  9%]
tests/test_auth_tag.py::TestAuthTagRoundtrip::test_roundtrip_preserves_data PASSED [ 10%]
tests/test_auth_tag.py::TestAuthTagRoundtrip::test_multiple_roundtrips PASSED [ 11%]
tests/test_auth_tag.py::TestAuthTagUniqueness::test_different_plaintexts_produce_different_tags PASSED [ 12%]
tests/test_auth_tag.py::TestAuthTagUniqueness::test_same_plaintext_different_nonces_produce_different_tags PASSED [ 13%]
tests/test_auth_tag.py::TestAuthTagSecurity::test_auth_tag_is_not_predictable PASSED [ 13%]
tests/test_auth_tag.py::TestAuthTagSecurity::test_auth_tag_changes_with_key PASSED [ 14%]
tests/test_decrypt.py::TestDecryptBasics::test_decrypt_returns_bytes PASSED [ 15%]
tests/test_decrypt.py::TestDecryptBasics::test_decrypt_recovers_plaintext PASSED [ 16%]
tests/test_decrypt.py::TestDecryptBasics::test_decrypt_empty_ciphertext PASSED [ 17%]
tests/test_decrypt.py::TestDecryptRoundtrip::test_roundtrip_preserves_data PASSED [ 17%]
tests/test_decrypt.py::TestDecryptRoundtrip::test_roundtrip_with_binary_data PASSED [ 18%]
tests/test_decrypt.py::TestDecryptRoundtrip::test_roundtrip_with_unicode PASSED [ 19%]
tests/test_decrypt.py::TestDecryptRoundtrip::test_roundtrip_large_data PASSED [ 20%]
tests/test_decrypt.py::TestDecryptSecurity::test_decrypt_rejects_wrong_key PASSED [ 21%]
tests/test_decrypt.py::TestDecryptSecurity::test_decrypt_rejects_wrong_nonce PASSED [ 21%]
tests/test_decrypt.py::TestDecryptSecurity::test_decrypt_rejects_wrong_auth_tag PASSED [ 22%]
tests/test_decrypt.py::TestDecryptSecurity::test_decrypt_rejects_tampered_ciphertext PASSED [ 23%]
tests/test_decrypt.py::TestDecryptSecurity::test_decrypt_rejects_truncated_ciphertext PASSED [ 24%]
tests/test_decrypt.py::TestDecryptSecurity::test_decrypt_rejects_extended_ciphertext PASSED [ 25%]
tests/test_decrypt.py::TestDecryptEdgeCases::test_decrypt_single_byte PASSED [ 26%]
tests/test_decrypt.py::TestDecryptEdgeCases::test_decrypt_all_zeros PASSED [ 26%]
tests/test_decrypt.py::TestDecryptEdgeCases::test_decrypt_all_ones PASSED [ 27%]
tests/test_decrypt.py::TestDecryptConsistency::test_decrypt_multiple_times_same_result PASSED [ 28%]
tests/test_decrypt.py::TestDecryptConsistency::test_decrypt_many_different_ciphertexts PASSED [ 29%]
tests/test_encrypt.py::TestEncryptBasics::test_encrypt_returns_tuple PASSED [ 30%]
tests/test_encrypt.py::TestEncryptBasics::test_encrypt_returns_correct_types PASSED [ 30%]
tests/test_encrypt.py::TestEncryptBasics::test_encrypt_ciphertext_length PASSED [ 31%]
tests/test_encrypt.py::TestEncryptBasics::test_encrypt_empty_plaintext PASSED [ 32%]
tests/test_encrypt.py::TestEncryptDeterminism::test_encrypt_produces_different_nonces PASSED [ 33%]
tests/test_encrypt.py::TestEncryptDeterminism::test_encrypt_same_plaintext_produces_different_ciphertext PASSED [ 34%]
tests/test_encrypt.py::TestEncryptDeterminism::test_encrypt_different_plaintexts_produce_different_ciphertext PASSED [ 34%]
tests/test_encrypt.py::TestEncryptSecurity::test_encrypt_ciphertext_is_not_plaintext PASSED [ 35%]
tests/test_encrypt.py::TestEncryptSecurity::test_encrypt_ciphertext_has_entropy PASSED [ 36%]
tests/test_encrypt.py::TestEncryptSecurity::test_encrypt_different_keys_produce_different_ciphertext PASSED [ 37%]
tests/test_encrypt.py::TestEncryptEdgeCases::test_encrypt_single_byte PASSED [ 38%]
tests/test_encrypt.py::TestEncryptEdgeCases::test_encrypt_large_plaintext PASSED [ 39%]
tests/test_encrypt.py::TestEncryptEdgeCases::test_encrypt_binary_data PASSED [ 39%]
tests/test_encrypt.py::TestEncryptEdgeCases::test_encrypt_unicode_encoded PASSED [ 40%]
tests/test_encrypt.py::TestEncryptConsistency::test_encrypt_many_times PASSED [ 41%]
tests/test_encrypt.py::TestEncryptConsistency::test_encrypt_nonce_uniqueness_at_scale PASSED [ 42%]
tests/test_integration.py::TestEndToEndWorkflow::test_complete_encryption_workflow PASSED [ 43%]
tests/test_integration.py::TestEndToEndWorkflow::test_multiple_messages_same_key PASSED [ 43%]
tests/test_integration.py::TestEndToEndWorkflow::test_different_algorithms_interoperability PASSED [ 44%]
tests/test_integration.py::TestSerializationWorkflow::test_serialize_and_restore_encrypted_data PASSED [ 45%]
tests/test_integration.py::TestSerializationWorkflow::test_cross_session_decryption PASSED [ 46%]
tests/test_integration.py::TestErrorHandlingWorkflow::test_wrong_passphrase_fails_decryption PASSED [ 47%]
tests/test_integration.py::TestErrorHandlingWorkflow::test_corrupted_salt_produces_different_key PASSED [ 47%]
tests/test_integration.py::TestPerformanceWorkflow::test_encrypt_many_small_messages PASSED [ 48%]
tests/test_integration.py::TestPerformanceWorkflow::test_encrypt_large_message PASSED [ 49%]
tests/test_integration.py::TestSecurityWorkflow::test_nonce_reuse_detection PASSED [ 50%]
tests/test_integration.py::TestSecurityWorkflow::test_key_isolation PASSED [ 51%]
tests/test_key.py::TestKeyMethods::test_as_bytes_returns_bytes PASSED    [ 52%]
tests/test_key.py::TestKeyMethods::test_as_bytes_returns_32_bytes PASSED [ 52%]
tests/test_key.py::TestKeyMethods::test_as_bytes_is_consistent PASSED    [ 53%]
tests/test_key.py::TestKeyMethods::test_repr_is_redacted PASSED          [ 54%]
tests/test_key.py::TestKeyDeterminism::test_same_inputs_produce_same_key PASSED [ 55%]
tests/test_key.py::TestKeyDeterminism::test_different_passphrase_produces_different_key PASSED [ 56%]
tests/test_key.py::TestKeyDeterminism::test_different_salt_produces_different_key PASSED [ 56%]
tests/test_key.py::TestKeyEntropy::test_key_is_not_all_zeros PASSED      [ 57%]
tests/test_key.py::TestKeyEntropy::test_key_has_good_entropy PASSED      [ 58%]
tests/test_key.py::TestKeyEntropy::test_weak_passphrase_still_produces_strong_key PASSED [ 59%]
tests/test_key.py::TestKeyAlgorithms::test_argon2id_algorithm PASSED     [ 60%]
tests/test_key.py::TestKeyAlgorithms::test_pbkdf2_algorithm PASSED       [ 60%]
tests/test_key.py::TestKeyAlgorithms::test_scrypt_algorithm PASSED       [ 61%]
tests/test_key.py::TestKeyAlgorithms::test_different_algorithms_produce_different_keys PASSED [ 62%]
tests/test_memory.py::test_no_key_derivation_leak PASSED                 [ 63%]
tests/test_memory.py::test_no_encryption_leak PASSED                     [ 64%]
tests/test_memory.py::test_stress_operations PASSED                      [ 65%]
tests/test_memory.py::test_key_zeroization_intent PASSED                 [ 65%]
tests/test_memory.py::test_concurrent_memory_stability PASSED            [ 66%]
tests/test_nonce.py::TestNonceGeneration::test_generate_returns_nonce_instance PASSED [ 67%]
tests/test_nonce.py::TestNonceGeneration::test_generate_produces_12_bytes PASSED [ 68%]
tests/test_nonce.py::TestNonceGeneration::test_generate_produces_unique_nonces PASSED [ 69%]
tests/test_nonce.py::TestNonceGeneration::test_generate_produces_random_data PASSED [ 69%]
tests/test_nonce.py::TestNonceConstruction::test_construct_from_valid_bytes PASSED [ 70%]
tests/test_nonce.py::TestNonceConstruction::test_construct_rejects_short_data PASSED [ 71%]
tests/test_nonce.py::TestNonceConstruction::test_construct_rejects_long_data PASSED [ 72%]
tests/test_nonce.py::TestNonceConstruction::test_construct_rejects_empty_data PASSED [ 73%]
tests/test_nonce.py::TestNonceMethods::test_as_bytes_returns_bytes PASSED [ 73%]
tests/test_nonce.py::TestNonceMethods::test_as_bytes_returns_12_bytes PASSED [ 74%]
tests/test_nonce.py::TestNonceMethods::test_as_bytes_is_consistent PASSED [ 75%]
tests/test_nonce.py::TestNonceMethods::test_repr_shows_hex PASSED        [ 76%]
tests/test_nonce.py::TestNonceRoundtrip::test_roundtrip_preserves_data PASSED [ 77%]
tests/test_nonce.py::TestNonceRoundtrip::test_multiple_roundtrips PASSED [ 78%]
tests/test_nonce.py::TestNonceUniqueness::test_many_nonces_are_unique PASSED [ 78%]
tests/test_nonce.py::TestNonceUniqueness::test_nonce_collision_probability_is_low PASSED [ 79%]
tests/test_properties.py::TestEncryptionProperties::test_encryption_roundtrip PASSED [ 80%]
tests/test_properties.py::TestEncryptionProperties::test_different_keys_different_ciphertexts PASSED [ 81%]
tests/test_properties.py::TestKeyDerivationProperties::test_key_derivation_determinism PASSED [ 82%]
tests/test_properties.py::TestKeyDerivationProperties::test_different_salts_different_keys PASSED [ 82%]
tests/test_properties.py::TestFFITypeProperties::test_salt_roundtrip_invariant PASSED [ 83%]
tests/test_properties.py::TestFFITypeProperties::test_nonce_roundtrip_invariant PASSED [ 84%]
tests/test_properties.py::TestValidationProperties::test_salt_size_validation PASSED [ 85%]
tests/test_properties.py::TestValidationProperties::test_nonce_size_validation PASSED [ 86%]
tests/test_properties.py::TestValidationProperties::test_auth_tag_size_validation PASSED [ 86%]
tests/test_properties.py::TestValidationProperties::test_passphrase_validation PASSED [ 87%]
tests/test_properties.py::TestLargeDataProperties::test_large_data_handling PASSED [ 88%]
tests/test_salt.py::TestSaltGeneration::test_generate_returns_salt_instance PASSED [ 89%]
tests/test_salt.py::TestSaltGeneration::test_generate_produces_32_bytes PASSED [ 90%]
tests/test_salt.py::TestSaltGeneration::test_generate_produces_unique_salts PASSED [ 91%]
tests/test_salt.py::TestSaltGeneration::test_generate_produces_random_data PASSED [ 91%]
tests/test_salt.py::TestSaltConstruction::test_construct_from_valid_bytes PASSED [ 92%]
tests/test_salt.py::TestSaltConstruction::test_construct_rejects_short_data PASSED [ 93%]
tests/test_salt.py::TestSaltConstruction::test_construct_rejects_long_data PASSED [ 94%]
tests/test_salt.py::TestSaltConstruction::test_construct_rejects_empty_data PASSED [ 95%]
tests/test_salt.py::TestSaltMethods::test_as_bytes_returns_bytes PASSED  [ 95%]
tests/test_salt.py::TestSaltMethods::test_as_bytes_returns_32_bytes PASSED [ 96%]
tests/test_salt.py::TestSaltMethods::test_as_bytes_is_consistent PASSED  [ 97%]
tests/test_salt.py::TestSaltMethods::test_repr_shows_hex PASSED          [ 98%]
tests/test_salt.py::TestSaltRoundtrip::test_roundtrip_preserves_data PASSED [ 99%]
tests/test_salt.py::TestSaltRoundtrip::test_multiple_roundtrips PASSED   [100%]

============================== warnings summary ===============================
tests\test_memory.py:13
  E:\BaiduSyncdisk\APP\Program\Violet_omni_1.4\plugins\marketplaces\violet-plugin-place\plugins\lylacore-rust\crates\pyo3-bindings\tests\test_memory.py:13: PytestUnknownMarkWarning: Unknown pytest.mark.limit_memory - is this a typo?  You can register custom marks to avoid this warning - for details, see https://docs.pytest.org/en/stable/how-to/mark.html
    @pytest.mark.limit_memory("1MB")

tests\test_memory.py:31
  E:\BaiduSyncdisk\APP\Program\Violet_omni_1.4\plugins\marketplaces\violet-plugin-place\plugins\lylacore-rust\crates\pyo3-bindings\tests\test_memory.py:31: PytestUnknownMarkWarning: Unknown pytest.mark.limit_memory - is this a typo?  You can register custom marks to avoid this warning - for details, see https://docs.pytest.org/en/stable/how-to/mark.html
    @pytest.mark.limit_memory("50MB")

tests\test_memory.py:48
  E:\BaiduSyncdisk\APP\Program\Violet_omni_1.4\plugins\marketplaces\violet-plugin-place\plugins\lylacore-rust\crates\pyo3-bindings\tests\test_memory.py:48: PytestUnknownMarkWarning: Unknown pytest.mark.limit_memory - is this a typo?  You can register custom marks to avoid this warning - for details, see https://docs.pytest.org/en/stable/how-to/mark.html
    @pytest.mark.limit_memory("100MB")

tests\test_memory.py:82
  E:\BaiduSyncdisk\APP\Program\Violet_omni_1.4\plugins\marketplaces\violet-plugin-place\plugins\lylacore-rust\crates\pyo3-bindings\tests\test_memory.py:82: PytestUnknownMarkWarning: Unknown pytest.mark.limit_memory - is this a typo?  You can register custom marks to avoid this warning - for details, see https://docs.pytest.org/en/stable/how-to/mark.html
    @pytest.mark.limit_memory("100MB")

-- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html
================= 123 passed, 4 warnings in 82.32s (0:01:22) ==================
