package com.ruoyi.app.flashdelivery.dto; import org.junit.jupiter.api.Test; import java.util.Set; import java.util.stream.Collectors; import java.util.stream.Stream; import static org.junit.jupiter.api.Assertions.assertFalse; import static org.junit.jupiter.api.Assertions.assertTrue; class FlashDeliveryOrderViewTest { @Test void roleBusinessViewExcludesPersistenceAndIdentityInternals() { Set fields = Stream.of(FlashDeliveryOrderView.class.getDeclaredFields()) .map(java.lang.reflect.Field::getName).collect(Collectors.toSet()); for (String forbidden : Set.of("userId", "clientRequestId", "deliveryPinCode", "pricingVersion", "cancelOperatorId", "cancelOperatorType", "version")) { assertFalse(fields.contains(forbidden), forbidden); } for (String required : Set.of("packageType", "packageSize", "deliveryMode", "scheduledPickupStartAt", "pinRequired", "pickup", "delivery")) { assertTrue(fields.contains(required), required); } } }