package com.jeesite.modules.mes.util; import org.junit.Test; import java.util.Date; import static org.junit.Assert.*; public class AssemblyRestRuleTest { private final Date completed = new Date(0); @Test public void exactBoundary() { assertNotNull(AssemblyRestRule.check(true, completed, new Date(AssemblyRestRule.REST_MILLIS - 1))); assertNull(AssemblyRestRule.check(true, completed, new Date(AssemblyRestRule.REST_MILLIS))); assertNull(AssemblyRestRule.check(true, completed, new Date(48L * 60 * 60 * 1000))); } @Test public void missingOrUnqualifiedAssemblyCannotPass() { assertNotNull(AssemblyRestRule.check(false, completed, new Date(Long.MAX_VALUE / 2))); assertNotNull(AssemblyRestRule.check(true, null, new Date())); assertNotNull(AssemblyRestRule.check(true, completed, null)); } @Test public void delayedUploadDoesNotMakeEarlyTestValid() { Date earlyStart = new Date(AssemblyRestRule.REST_MILLIS - 60000); Date upload = new Date(AssemblyRestRule.REST_MILLIS + 60000); assertNull(AssemblyRestRule.check(true, completed, upload)); assertNotNull(AssemblyRestRule.check(true, completed, earlyStart)); } @Test public void reassemblyRestartsWaiting() { Date reassembled = new Date(AssemblyRestRule.REST_MILLIS); assertNotNull(AssemblyRestRule.check(true, reassembled, reassembled)); assertNull(AssemblyRestRule.check(true, reassembled, new Date(2 * AssemblyRestRule.REST_MILLIS))); } }