package com.battery.business.runtime; import static org.junit.jupiter.api.Assertions.*; import java.time.Instant; import java.util.Date; import com.battery.business.domain.TBatteryGroup; import com.battery.business.domain.TDeviceAdapter; import com.fasterxml.jackson.databind.ObjectMapper; import com.ruoyi.common.core.domain.entity.SysUser; import org.junit.jupiter.api.Test; class BatteryTimeJsonConfigTest { @Test void businessUsesMillisecondsAndPlatformKeepsFormattedTime() throws Exception { ObjectMapper mapper = new ObjectMapper().registerModule(new BatteryTimeJsonConfig().batteryTimeModule()); long time = 1770000000123L; TBatteryGroup group = new TBatteryGroup(); group.setCreateTime(new Date(time)); TDeviceAdapter adapter = new TDeviceAdapter(); adapter.setLastObservedAtUtc(Instant.ofEpochMilli(time)); SysUser user = new SysUser(); user.setCreateTime(new Date(time)); assertEquals(time, mapper.readTree(mapper.writeValueAsString(group)).get("createTime").longValue()); assertEquals(time, mapper.readTree(mapper.writeValueAsString(adapter)).get("lastObservedAtUtc").longValue()); assertTrue(mapper.readTree(mapper.writeValueAsString(user)).get("createTime").isTextual()); } }