DotNS Test Report

Generated 2026-08-12 05:38 UTC | 34 suites

Status

All Passed

Total

435

Passed

435

Failed

0

BasicDotnsIntegrationRevertstest/intergration/BasicDotns.reverts.t.sol
4/4
Test Result Error
test_parent_can_reassign_existing_subdomain PASS
test_revert_non_owner_cannot_create_subdomain_under_someone_elses_name PASS
test_revert_poplite_cannot_register_popfull_required PASS
test_revert_unapproved_cannot_set_contenthash PASS
BasicDotnsIntegrationtest/intergration/BasicDotns.t.sol
4/4
Test Result Error
test_nostatus_end_to_end PASS
test_popfull_end_to_end PASS
test_poplite_end_to_end PASS
test_third_party_reserved_registration_preserves_existing_reverse PASS
DeployCreate3FactoryTesttest/unit/deploy/DeployCreate3Factory.t.sol
1/1
Test Result Error
test_revertsWhenDeployerNonceNotZero PASS
DeterministicDeploymentTesttest/unit/deploy/DeterministicDeployment.t.sol
11/11
Test Result Error
test_addressesIdenticalAcrossDeployers PASS
test_addressesStableAcrossSequentialRuns PASS
test_adoptRevertsWhenFactoryHasNoCode PASS
test_coreDeploymentAddressesStayTheSameAcrossChainIds PASS
test_create3FactoryResolvesFromProtocolRegistry PASS
test_ensureReusesConfiguredFactory PASS
test_predictionsMatchCreate3Deployments PASS
test_predictionsMatchForNonProxyDeploys PASS
test_reDeployAdoptsAnExistingContract PASS
test_reDeployAdoptsProxyWithoutReinitialising PASS
test_reusedFactoryMakesAddressesDeployerIndependent PASS
DotnsContentResolverTeststest/unit/resolver/DotnsContentResolver.t.sol
3/3
Test Result Error
test_operator_can_modify_records PASS
test_set_contenthash PASS
test_set_text PASS
DotnsNameEscrowTesttest/unit/escrow/DotnsNameEscrow.t.sol
28/28
Test Result Error
test_cross_payer_downgrade_charges_only_owner_price PASS
test_cross_payer_pays_the_curve_into_fees PASS
test_cross_payer_verified_sponsors_nostatus_pays_only_D PASS
test_deposit_records_position PASS
test_downgrade_transfer_pays_name_price PASS
test_funded_position_follows_NFT_through_multiple_transfers PASS
test_funded_position_rebinds_to_new_holder_on_transfer PASS
test_reclaim_transfers_custody_to_new_owner PASS
test_release_and_withdraw_subject_to_cooldown_after_transfer PASS
test_release_transfers_token_to_escrow PASS
test_released_tokens_pagination PASS
test_revert_deposit_already_funded PASS
test_revert_deposit_not_controller PASS
test_revert_double_release PASS
test_revert_ghost_nft_transfer_into_escrow PASS
test_revert_reclaim_before_withdraw PASS
test_revert_reclaim_not_controller PASS
test_revert_release_escrow_not_approved PASS
test_revert_release_not_holder PASS
test_revert_withdraw_before_cooldown PASS
test_revert_withdraw_not_recipient PASS
test_same_tier_NoStatus_transfer_rebinds_position_to_new_holder PASS
test_self_registration_seeds_funded_position PASS
test_solvency_after_force_sent_funds PASS
test_transfer_charges_friction_and_rebinds_position PASS
test_transfer_no_rebind_when_to_equals_position_recipient PASS
test_update_cooldown PASS
test_withdraw_sends_refund_after_cooldown PASS
DotnsNameEscrowFuzzTesttest/fuzz/escrow/DotnsNameEscrowFuzz.t.sol
2/2
Test Result Error
testFuzz_deposit_amount PASS
testFuzz_withdraw_timing PASS
DotnsNameEscrowRefundsTesttest/unit/escrow/DotnsNameEscrowRefunds.t.sol
15/15
Test Result Error
test_claimRefund_emitsRefundClaimed PASS
test_claimRefund_revertsBeforeCooldown PASS
test_claimRefund_revertsOnTransferFailure PASS
test_claimRefund_revertsWhenCallerIsNotRecipient PASS
test_claimRefund_transfersAndDeletes PASS
test_claimRefundsBatch_aggregatesAndTransfers PASS
test_claimRefundsBatch_atomicOnLockedEntry PASS
test_claimRefundsBatch_revertsOnEmpty PASS
test_creditRefund_allocatesMonotonicEntryIds PASS
test_creditRefund_emitsRefundCredited PASS
test_creditRefund_independentCooldowns PASS
test_creditRefund_revertsOnZeroAmount PASS
test_creditRefund_revertsOnZeroRecipient PASS
test_pendingRefundIds_paginates PASS
test_removeRefundEntry_swapPopMiddlePreservesIndices PASS
DotnsPopControllerTeststest/unit/registrar/DotnsPopController.t.sol
86/86
Test Result Error
testFuzz_bytes_overloads_reject_non_root_origin PASS
test_advanceExpiredHead_last_expire_releases_popRules_slot PASS
test_advanceExpiredHead_promotes_waiter_and_resyncs_popRules PASS
test_both_controllers_can_mint_on_shared_registrar PASS
test_claimLabelStoreFor_reverts_for_non_gateway PASS
test_claimLabelStore_at_exact_expiry_boundary_belongs_to_user PASS
test_claimLabelStore_deploys_store_and_writes_label_and_chat_key PASS
test_claimLabelStore_emits_settled_and_name_registered PASS
test_claimLabelStore_msg_sender_keyed_other_users_stash_untouched PASS
test_claimLabelStore_with_empty_chat_key_skips_resolver_write PASS
test_claim_releases_popRules_slot PASS
test_claim_then_reEnqueue_on_same_stem_resets_cleanly PASS
test_controller_authorised_but_not_gateway_cannot_enter_pop_flow PASS
test_enqueueReservation_same_user_second_call_replaces_first PASS
test_enqueue_becomesHead_writes_popRules_reservation PASS
test_entry_point_format_rejections PASS
test_expirePendingClaim_clears_entry_after_reservation_duration PASS
test_expireReservation_is_permissionless PASS
test_expireReservation_on_empty_queue_is_noop PASS
test_gatewayReserve_pending_claim_lapses_after_minimum_duration PASS
test_gatewayReserve_stashes_pending_claim_when_user_has_no_label_store PASS
test_gatewayReserve_warm_user_after_claim_writes_directly_without_stashing PASS
test_gateway_can_settle_label_store_for_user PASS
test_gateway_reserved_name_allows_holder_to_register_via_public PASS
test_gateway_reserved_name_rejects_public_register_by_other_user PASS
test_head_expires_clears_slot_for_next_reserver PASS
test_multiWaiter_standaloneGuard_rejects_non_head_user PASS
test_non_owner_cannot_create_subname_under_pop_minted_name PASS
test_owner_of_pop_minted_name_can_create_subname PASS
test_pendingClaimUsers_enumeration_mirrors_stash_and_settle PASS
test_pendingClaimUsers_pagination_boundary_cases PASS
test_pendingClaimUsers_returns_empty_when_offset_past_count PASS
test_pendingClaims_returns_empty_array_for_fresh_user PASS
test_pop_reservation_of_already_public_minted_name_fails_on_claim PASS
test_public_register_after_pop_full_mint_reverts_at_registrar PASS
test_public_stranger_can_mint_after_claim_clears_reservation PASS
test_public_stranger_can_mint_after_reservation_expires PASS
test_reEnqueue_after_own_expiry_promotes_same_user_to_head PASS
test_registerBaseName_claim_by_store_less_full_person_piles_then_settles PASS
test_registerBaseName_claim_emits_claim_event_and_not_standalone PASS
test_registerBaseName_claim_inherits_chat_key_from_lite_node PASS
test_registerBaseName_claim_path_bypasses_standalone_holder_guard PASS
test_registerBaseName_claim_wipes_entire_queue PASS
test_registerBaseName_guard_blocks_stranger_and_preserves_claim PASS
test_registerBaseName_popFull_user_on_popFull_label_succeeds PASS
test_registerBaseName_reverts_for_governance_length_name PASS
test_registerBaseName_reverts_when_origin_is_not_root PASS
test_registerBaseName_standalone_auto_relinquishes_users_other_reservation PASS
test_registerBaseName_standalone_emits_standalone_event_and_not_claim PASS
test_registerBaseName_standalone_succeeds_when_head_is_expired PASS
test_registerBaseName_standalone_succeeds_when_queue_empty PASS
test_registerBaseName_standalone_with_lite_link_silently_relinquishes PASS
test_registerBaseName_zero_length_label_reverts PASS
test_relinquishReservation_promotes_next_waiter_when_head_leaves PASS
test_relinquishReservation_reverts_when_caller_has_no_reservation PASS
test_relinquish_last_releases_popRules_slot PASS
test_reserveBaseNameOnly_does_not_mint_lite_or_base_name PASS
test_reserveBaseNameOnly_reverts_for_non_gateway PASS
test_reserveBaseNameOnly_reverts_for_reserved_or_suffixed_labels PASS
test_reserveBaseNameOnly_same_user_can_replace_prior_reservation PASS
test_reserveBaseName_accepts_65_byte_chat_key PASS
test_reserveBaseName_enqueues_when_reserved_label_provided PASS
test_reserveBaseName_lite_and_base_legs_both_succeed_in_one_call PASS
test_reserveBaseName_mints_and_wires_registry_and_resolver PASS
test_reserveBaseName_reserved_label_classification_reverts PASS
test_reserveBaseName_reverts_for_digit_suffixed_reserved_base_label PASS
test_reserveBaseName_reverts_when_origin_is_not_root PASS
test_reserveLiteName_bytes_reverts_on_malformed_payload PASS
test_reserveLiteName_piles_second_pending_claim_when_caller_has_no_store PASS
test_reserveLiteName_reverts_for_non_lite_format PASS
test_reserveLiteName_reverts_when_flattened_label_is_governance_reserved PASS
test_reserveLiteName_reverts_when_origin_is_not_root PASS
test_reserveLiteName_reverts_when_suffix_is_not_exactly_two_digits PASS
test_reserveLiteName_succeeds_for_long_stem PASS
test_reserveLiteName_succeeds_regardless_of_base_reservation PASS
test_revert_claimLabelStore_when_caller_has_no_pending_claim PASS
test_revert_claimLabelStore_when_pending_claim_has_lapsed PASS
test_revert_expirePendingClaim_when_entry_is_still_live PASS
test_revert_expirePendingClaim_when_user_has_no_pending_claim PASS
test_revert_setReservationDuration_below_minimum PASS
test_same_stem_lite_and_base_occupy_distinct_registrar_tokens PASS
test_second_pop_lite_mint_of_same_label_reverts_at_registrar PASS
test_setReservationDuration_reverts_for_non_owner PASS
test_setReservationDuration_shortening_retroactively_expires_live_entries PASS
test_split_gateway_flow_mints_lite_then_reserves_base PASS
test_user_claimLabelStore_fallback_still_settles_after_gateway_mint PASS
DotnsPopControllerFuzztest/fuzz/registrar/DotnsPopControllerFuzz.t.sol
10/10
Test Result Error
testFuzz_claimLabelStore_settles_label_and_chat_key_exactly PASS
testFuzz_gatewayReserve_cold_user_stashes_label_and_chat_key_exactly PASS
testFuzz_isReservedForClaim_tracks_duration_boundary PASS
testFuzz_pendingClaim_expiry_boundary_admits_or_lapses PASS
testFuzz_public_register_respects_popRules_reservation PASS
testFuzz_registerBaseName_overloads_equivalent PASS
testFuzz_reserveBaseName_accepts_any_two_digit_suffix PASS
testFuzz_reserveBaseName_overloads_equivalent PASS
testFuzz_reserveBaseName_persists_chat_key_exact_bytes PASS
testFuzz_reserveLiteName_overloads_equivalent PASS
DotnsPopResolverTeststest/unit/resolver/DotnsPopResolver.t.sol
24/24
Test Result Error
test_rotating_pop_controller_changes_authorised_writer PASS
test_setChatKey_accepts_exactly_65_bytes PASS
test_setChatKey_accepts_zero_node_as_passthrough PASS
test_setChatKey_auth_check_precedes_length_check_on_bad_payload PASS
test_setChatKey_auth_check_runs_before_length_check PASS
test_setChatKey_reverts_for_64_byte_payload PASS
test_setChatKey_reverts_for_66_byte_payload PASS
test_setChatKey_reverts_for_empty_payload PASS
test_setChatKey_reverts_for_large_griefing_payload PASS
test_setChatKey_reverts_for_one_byte_payload PASS
test_setChatKey_reverts_for_unauthorised_caller PASS
test_setChatKey_writes_and_emits PASS
test_setLiteLink_accepts_zero_inputs_as_passthrough PASS
test_setLiteLink_chain_returns_to_original_without_drift PASS
test_setLiteLink_cross_chain_no_drift PASS
test_setLiteLink_idempotent_relink_keeps_both_indices PASS
test_setLiteLink_long_chain_invariant_holds_at_every_step PASS
test_setLiteLink_old_lite_reads_zero_after_relink PASS
test_setLiteLink_quadrangle_clears_both_stale_inverses PASS
test_setLiteLink_reverts_for_unauthorised_caller PASS
test_setLiteLink_same_full_node_relink_clears_old_reverse PASS
test_setLiteLink_same_lite_relink_clears_old_forward PASS
test_setLiteLink_with_zero_lite_is_passthrough PASS
test_setLiteLink_writes_and_emits PASS
DotnsProtocolRegistryTldTeststest/unit/registry/DotnsProtocolRegistry.t.sol
1/1
Test Result Error
test_same_label_derives_distinct_node_and_token_id_per_tld PASS
DotnsProtocolRegistryFuzzTesttest/fuzz/registry/DotnsProtocolRegistryFuzz.t.sol
5/5
Test Result Error
testFuzz_isRegisteredAddress_matches_ground_truth PASS
testFuzz_set_same_pair_is_no_op PASS
testFuzz_zero_address_never_registered PASS
test_initialise_reverts_on_empty_tld PASS
test_initialise_reverts_on_multi_label_tld PASS
DotnsRegistrarTeststest/unit/registrar/DotnsRegistrar.t.sol
30/30
Test Result Error
test_add_controller PASS
test_add_controller_emits_event PASS
test_add_controller_reverts_for_non_owner PASS
test_approvals_work PASS
test_available_before_after_register PASS
test_available_when_token_held_by_escrow_returns_true PASS
test_exists_reports_minted_state PASS
test_initialize_cannot_be_called_twice PASS
test_label_of_returns_empty_for_nonexistent_token PASS
test_label_of_returns_empty_when_owner_has_no_label_store PASS
test_label_of_returns_stripped_label PASS
test_quote_transfer_fee_reverts_for_zero_recipient PASS
test_quote_transfer_fee_reverts_when_escrow_unconfigured PASS
test_quote_transfer_fee_zero_for_escrow_recipient PASS
test_quote_transfer_fee_zero_for_self_transfer PASS
test_quote_transfer_fee_zero_when_no_label_recorded PASS
test_register_emits_name_registered PASS
test_register_mints_to_owner PASS
test_register_reverts_for_non_controller PASS
test_register_reverts_when_name_not_available PASS
test_register_with_empty_label_skips_store_write PASS
test_register_writes_label_into_owner_label_store PASS
test_remove_controller PASS
test_remove_controller_emits_event PASS
test_remove_controller_reverts_for_non_owner PASS
test_self_transfer_skips_fee_charge PASS
test_supports_ierc721_interface PASS
test_transfer_reverts_when_fee_required_but_no_value_attached PASS
test_upgrade_rejects_non_owner PASS
test_version_string PASS
DotnsRegistrarControllerTesttest/unit/registrar/DotnsRegistrarController.t.sol
36/36
Test Result Error
test_available_reverts_for_dotted_label PASS
test_available_reverts_for_empty_label PASS
test_available_state_transitions PASS
test_commit_allows_recommit_after_expiry PASS
test_commit_allows_recommit_at_exact_expiry_boundary PASS
test_commit_sets_timestamp PASS
test_initialize_reverts_when_max_above_ceiling PASS
test_initialize_reverts_when_max_not_greater_than_min PASS
test_initialize_reverts_when_min_commitment_age_is_zero PASS
test_mint_does_not_trigger_store_write PASS
test_non_owner_cannot_grant_role PASS
test_non_owner_cannot_revoke_role PASS
test_owner_can_grant_and_revoke_whitelist_operator PASS
test_register_does_not_overwrite_third_party_reverse_record PASS
test_register_popfull_wires_all_records PASS
test_register_poplite_reserves_base_name PASS
test_register_reverts_at_exact_expiry_boundary PASS
test_register_reverts_for_dotted_label PASS
test_registerreserved_revertnon_owner PASS
test_registerreserved_writes_to_store PASS
test_removed_from_whitelist_cannot_register_reserved PASS
test_revert_cross_payer_sponsoring_unverified_owner PASS
test_safe_transfer_writes_to_store PASS
test_setrole_reverts_for_unsupported_role PASS
test_setrole_reverts_for_zero_address PASS
test_supports_idotnsrolemanager_interface PASS
test_transfer_back_skips_locked_entry PASS
test_transfer_clears_primary_reverse_name_when_current_name_is_moved PASS
test_transfer_round_trip_to_original_depositor_rebinds_position_back PASS
test_transfer_skips_store_deploy_when_label_empty PASS
test_transfer_via_approved_operator_writes_to_store PASS
test_transfer_writes_label_and_creates_store PASS
test_transfer_zero_fee_rebinds_position_to_new_holder PASS
test_whitelist_operator_can_whitelist_address PASS
test_whitelistaddress_reverts_without_owner_or_operator PASS
test_whitelisted_can_register_reserved PASS
DotnsRegistrarControllerFuzzTesttest/fuzz/registrar/DotnsRegistrarControllerFuzz.t.sol
9/9
Test Result Error
testFuzz_NoStatus_transfer_rebinds_position_to_new_holder PASS
testFuzz_non_owner_cannot_setrole PASS
testFuzz_owner_setrole_matches_hasrole PASS
testFuzz_register_pushes_overpayment_back_to_eoa_payer PASS
testFuzz_register_refunds_overpayment_inline PASS
testFuzz_register_refunds_overpayment_to_payer_not_owner PASS
testFuzz_third_party_registration_does_not_overwrite_owner_reverse PASS
testFuzz_transfer_clears_sender_primary_reverse PASS
testFuzz_transfer_writes_label_to_recipient_store PASS
DotnsRegistrarControllerLifecycleTesttest/unit/registrar/DotnsRegistrarControllerLifecycle.t.sol
13/13
Test Result Error
test_register_creates_funded_position_for_self_registration PASS
test_register_cross_payer_charges_max_not_sum_of_price_and_reach PASS
test_register_cross_payer_routes_owner_price_to_protocol_fees PASS
test_register_overpayment_falls_back_to_ledger_on_rejecting_contract PASS
test_register_overpayment_pushed_directly_to_accepting_contract PASS
test_register_overpayment_pushed_directly_to_eoa_payer PASS
test_register_overpayment_reentrant_attacker_falls_back_to_ledger PASS
test_register_reclaim_state_consistent_during_safe_transfer_callback PASS
test_register_reclaim_succeeds_for_new_poplite_owner PASS
test_register_second_reserved_name_preserves_prior_primary_reverse_record PASS
test_revert_register_cross_payer_when_msg_value_below_max_of_price_and_reach PASS
test_revert_register_on_reentry_from_onerc721received PASS
test_revert_registerreserved_for_already_seeded_label PASS
DotnsRegistryTeststest/unit/registry/DotnsRegistry.t.sol
24/24
Test Result Error
test_new_parent_can_reassign_after_erc721_transfer PASS
test_node_owner_can_clear_resolver_to_zero PASS
test_node_owner_creates_nested_subnode_with_canonical_parent_path PASS
test_node_owner_creates_subnode_emits_event_and_returns_expected_subnode PASS
test_node_owner_sets_resolver_emits_event_and_persists PASS
test_non_parent_cannot_call_setSubnodeResolver PASS
test_parent_can_set_resolver_on_subnode_via_setSubnodeResolver PASS
test_parent_reassigns_existing_subnode_owner PASS
test_parent_reassigns_subnode_to_self_then_sets_resolver PASS
test_protocol_registry_bound_at_init PASS
test_reassignment_emits_new_owner_event PASS
test_reassignment_resets_resolver_to_default PASS
test_registrar_controller_sets_owner_emits_event_and_sets_resolver PASS
test_revert_non_parent_cannot_reassign_subnode PASS
test_revert_subnode_owner_with_dotted_sublabel PASS
test_revert_subnode_owner_with_empty_sublabel PASS
test_revert_subnode_owner_with_parent_label_mismatch PASS
test_revert_subnode_owner_with_uppercase_parent_label PASS
test_revert_subnode_owner_with_uppercase_sublabel PASS
test_root_record_is_not_initialized PASS
test_same_sublabel_under_different_parents_owned_by_same_address PASS
test_setSubnodeResolver_reverts_on_nonexistent_subnode PASS
test_subnode_owner_can_still_set_resolver_directly PASS
test_subnode_owner_creates_nested_subnode_under_owned_parent PASS
DotnsRegistryFuzzTesttest/fuzz/registry/DotnsRegistryFuzz.t.sol
3/3
Test Result Error
testFuzz_non_parent_non_owner_cannot_reassign PASS
testFuzz_parent_can_reassign_subnode_to_any_owner PASS
testFuzz_reassignment_resets_resolver_to_default PASS
DotnsResolverTeststest/unit/resolver/DotnsResolver.t.sol
2/2
Test Result Error
test_setaddress_emits_event_and_persists PASS
test_setaddress_overwrites_previous_value PASS
DotnsReverseResolverTeststest/unit/resolver/DotnsReverseResolver.t.sol
12/12
Test Result Error
test_claim_reverse_record_after_receiving_transfer PASS
test_claim_reverse_record_emits_event PASS
test_claim_reverse_record_overwrites_existing_primary PASS
test_claim_reverse_record_sets_for_current_owner PASS
test_nameof_fails_closed_for_unminted_label PASS
test_nameof_fails_closed_when_caller_no_longer_owns_stored_name PASS
test_nameof_fails_closed_when_stored_lacks_tld_suffix PASS
test_nameof_returns_empty_when_unset PASS
test_protocol_registry_bound_at_init PASS
test_register_preserves_existing_reverse_record PASS
test_register_sets_reverse_record_for_owner PASS
test_revert_claim_reverse_record_when_caller_does_not_own PASS
LabelStoreTeststest/unit/store/LabelStore.t.sol
12/12
Test Result Error
test_caller_becoming_unregistered_rejects_subsequent_write PASS
test_getLabels_caps_at_available PASS
test_getLabels_returns_empty_when_offset_past_end PASS
test_implementation_cannot_be_initialised_directly PASS
test_initialize_binds_owner_and_registry PASS
test_initialize_reverts_on_second_call PASS
test_initialize_reverts_on_zero_registry PASS
test_initialize_reverts_on_zero_user PASS
test_storeLabel_reverts_on_second_write_same_labelhash PASS
test_storeLabel_reverts_when_caller_not_registered PASS
test_storeLabel_reverts_when_labelhash_zero PASS
test_storeLabel_writes_locks_and_enumerates PASS
LabelStoreFuzzTesttest/fuzz/store/LabelStoreFuzz.t.sol
2/2
Test Result Error
testFuzz_getLabels_pagination_consistent PASS
testFuzz_storeLabel_succeeds_for_arbitrary_inputs PASS
NoStatusDepositLifecycletest/intergration/NoStatusDepositLifecycle.t.sol
1/1
Test Result Error
test_NoStatus_register_then_transfer_then_holder_claims_refund PASS
PopRulesFuzzTesttest/fuzz/pop/PopFuzz.t.sol
9/9
Test Result Error
testFuzz_expired_reservation_rolls_forward_to_next_lite_registrant PASS
testFuzz_governance_names_always_revert PASS
testFuzz_mixed_case_names_are_rejected PASS
testFuzz_nostatus_user_cannot_access_popfull PASS
testFuzz_popfull_user_can_access_nostatus PASS
testFuzz_popfull_user_can_access_poplite PASS
testFuzz_price_matches_curve PASS
testFuzz_price_without_check_returns_price PASS
testFuzz_reservation_blocks_other_users PASS
PopLifecycleFlowtest/intergration/PopLifecycleFlow.t.sol
7/7
Test Result Error
test_cold_gateway_reserve_then_user_settles_pending_claim PASS
test_lapsed_pending_claim_is_swept_without_deploying_store PASS
test_lite_via_gateway_then_full_via_public_after_upgrade PASS
test_pop_full_name_is_first_class_erc721_name PASS
test_recover_full_username_from_lite_label PASS
test_reserve_expire_reserve_cycle_for_same_user PASS
test_transfer_of_token_with_live_pending_claim_does_not_move_claim PASS
PopRulesTeststest/unit/pop/PopRules.t.sol
26/26
Test Result Error
test_base_reservation_blocks_others PASS
test_classify_governance PASS
test_classify_nostatus PASS
test_classify_nostatus_no_digits PASS
test_classify_popfull PASS
test_classify_poplite PASS
test_classify_reverts_for_one_digit_suffix PASS
test_classify_reverts_for_three_digit_suffix PASS
test_open_band_is_flat_at_base_fee PASS
test_popfull_user_can_access_poplite_name PASS
test_poplite_user_can_access_nostatus_name PASS
test_price_follows_scarcity_curve PASS
test_price_with_check_revert_full_needed PASS
test_price_with_check_revert_governance PASS
test_price_without_check_returns_price_for_reserved PASS
test_releaseBaseName_expired_slot_cleared_by_any_controller PASS
test_releaseBaseName_reverts_for_non_controller PASS
test_releaseBaseName_reverts_for_non_reserving_controller PASS
test_releaseBaseName_succeeds_for_reserving_controller PASS
test_reserveBaseNameForPop_refreshes_expiry_for_same_owner PASS
test_reserveBaseNameForPop_reverts_for_non_controller PASS
test_reserveBaseNameForPop_reverts_when_slot_held_by_other_user PASS
test_trailing_digits_do_not_change_price PASS
test_transfer_reprices_at_own_length PASS
test_verified_person_pays_the_curve_for_premium PASS
test_writeReservation_preserves_original_controller_on_same_owner_refresh PASS
RootGatewayDispatcherTeststest/unit/registrar/RootGatewayDispatcher.t.sol
8/8
Test Result Error
test_controller_authorises_call_from_dispatcher_address PASS
test_controller_rejects_unknown_msg_sender_when_not_root PASS
test_dispatcher_bubbles_controller_revert_data PASS
test_dispatcher_forwards_to_controller_when_root PASS
test_dispatcher_rejects_value_transfers PASS
test_dispatcher_reverts_when_caller_is_not_root PASS
test_dispatcher_target_is_immutable_and_points_to_controller PASS
test_rotating_pop_gateway_key_revokes_old_dispatcher PASS
StoreFactoryTeststest/unit/store/StoreFactory.t.sol
16/16
Test Result Error
test_beacon_owner_is_factory_for_both_beacons PASS
test_claimUserStore_frontrun_is_harmless PASS
test_claimUserStore_owner_is_caller PASS
test_claimUserStore_reverts_on_double_claim PASS
test_constructor_deploys_both_beacons_and_implementations PASS
test_constructor_reverts_on_zero_registry PASS
test_deployLabelStoreFor_reverts_for_unregistered_non_owner PASS
test_deployLabelStoreFor_reverts_on_double_deploy PASS
test_deployLabelStoreFor_reverts_on_zero_user PASS
test_deployLabelStoreFor_succeeds_for_owner PASS
test_deployLabelStoreFor_succeeds_for_registered_protocol PASS
test_getLabelStores_enumerates_in_deployment_order PASS
test_getUserStores_enumerates_in_claim_order PASS
test_upgradeLabelStoreImplementation_propagates_to_live_proxies PASS
test_upgradeLabelStoreImplementation_reverts_for_non_owner PASS
test_upgradeLabelStoreImplementation_reverts_on_zero_impl PASS
StoreIntegrationTesttest/intergration/StoreIntegration.t.sol
8/8
Test Result Error
test_beacon_upgrade_preserves_label_store_state PASS
test_beacon_upgrade_preserves_user_store_state PASS
test_double_transfer_back_does_not_revert_on_existing_lock PASS
test_erc721_transfer_syncs_label_to_recipient_store PASS
test_main_controller_registration_writes_label_store PASS
test_pop_controller_registration_writes_label_store PASS
test_registration_reuses_factory_owner_predeployed_store PASS
test_user_claim_round_trip_with_history PASS
StoreStressTesttest/stress/store/StoreStress.t.sol
5/5
Test Result Error
test_label_store_many_labels PASS
test_pagination_extreme_bounds PASS
test_user_store_deep_history PASS
test_user_store_large_value_round_trip PASS
test_user_store_many_keys PASS
UserStoreTeststest/unit/store/UserStore.t.sol
13/13
Test Result Error
test_getHistory_pagination_bounds PASS
test_getKeys_pagination PASS
test_implementation_cannot_be_initialised_directly PASS
test_initialize_binds_owner PASS
test_initialize_reverts_on_second_call PASS
test_initialize_reverts_on_zero_user PASS
test_setValue_does_not_duplicate_key_list_entries PASS
test_setValue_empty_bytes_after_nonempty_snapshots_prior_value PASS
test_setValue_first_write_leaves_history_empty PASS
test_setValue_fresh_key_with_empty_bytes_writes_no_history PASS
test_setValue_reverts_for_non_owner PASS
test_setValue_reverts_for_zero_key PASS
test_setValue_second_write_snapshots_prev_into_history PASS
UserStoreFuzzTesttest/fuzz/store/UserStoreFuzz.t.sol
3/3
Test Result Error
testFuzz_getHistory_pagination_consistent PASS
testFuzz_history_length_equals_prior_nonempty_writes PASS
testFuzz_setValue_accepts_arbitrary_inputs PASS
WhitelistOperatorFlowtest/intergration/WhitelistOperatorFlow.t.sol
2/2
Test Result Error
test_operator_can_seed_whitelist_for_reserved_registration PASS
test_operator_role_revocation_blocks_further_whitelist_writes PASS