public class AlwaysApplyJobPolicy implements HighRepJobPolicy { @Override public boolean shouldApplyNewJob(Key arg0) { return true; } @Override public boolean shouldRollForwardExistingJob(Key arg0) { // This should be irrelevant because all jobs apply immediately return true; } } private final LocalServiceTestHelper helper = new LocalServiceTestHelper( // Our tests assume strong consistency new LocalDatastoreServiceTestConfig().setAlternateHighRepJobPolicyClass(AlwaysApplyJobPolicy.class), new LocalMemcacheServiceTestConfig(), new LocalTaskQueueTestConfig());
import org.junit.rules.ExternalResource; import com.google.appengine.tools.development.testing.LocalServiceTestHelper; public class EmbeddedDataStore extends ExternalResource { private static LocalServiceTestHelper helper; @Override protected void before() throws Throwable { helper = new LocalServiceTestHelper(new LocalDatastoreServiceTestConfig(), new LocalBlobstoreServiceTestConfig(), new LocalTaskQueueTestConfig(), new LocalMemcacheServiceTestConfig()); } @Override protected void after() { helper.tearDown(); } }
public class LocalDatastoreTest { private final LocalServiceTestHelper helper = new LocalServiceTestHelper(new LocalDatastoreServiceTestConfig(), new LocalUserServiceTestConfig(), new LocalTaskQueueTestConfig(), new LocalMemcacheServiceTestConfig(), new LocalAppIdentityServiceTestConfig() // etc.. ); @Before public void setUp() { helper.setUp(); } }
private LocalServiceTestHelper createHelper() { LocalServiceTestHelper helper = new LocalServiceTestHelper(new LocalUserServiceTestConfig(), createDatastoreServiceTestConfig(), createTaskQueueTestConfig(), createSearchTestConfig(), new LocalModulesServiceTestConfig(), new LocalMemcacheServiceTestConfig()) { @Override protected LocalServerEnvironment newLocalServerEnvironment() { return new TestLocalServerEnvironment(mojo, super.newLocalServerEnvironment()); } }; helper.setUp(); return helper; }
@Override public void setUp() { helper = new LocalServiceTestHelper(new LocalUserServiceTestConfig(), createDatastoreService(), createTaskQueueTestConfig(), new LocalSearchServiceTestConfig(), new LocalModulesServiceTestConfig(), new LocalMemcacheServiceTestConfig(), new LocalURLFetchServiceTestConfig()); Map<String, Object> envs = new HashMap<>(); helper.setEnvAttributes(envs); helper.setUp(); }
protected void disableMemcache() { // See // http://www.ensor.cc/2010/11/unit-testing-named-queues-spring.html // NOTE: THE QUEUE XML PATH RELATIVE TO WEB APP ROOT, More info // below // http://stackoverflow.com/questions/11197058/testing-non-default-app-engine-task-queues final LocalTaskQueueTestConfig localTaskQueueConfig = new LocalTaskQueueTestConfig() .setDisableAutoTaskExecution(false).setQueueXmlPath("src/test/resources/queue.xml") .setTaskExecutionLatch(countdownLatch).setCallbackClass(DeleteShardedCounterDeferredCallback.class); Capability testOne = new Capability("memcache"); CapabilityStatus testStatus = CapabilityStatus.DISABLED; // Initialize LocalCapabilitiesServiceTestConfig capabilityStatusConfig = new LocalCapabilitiesServiceTestConfig() .setCapabilityStatus(testOne, testStatus); // Use a different queue.xml for testing purposes helper = new LocalServiceTestHelper( new LocalDatastoreServiceTestConfig().setDefaultHighRepJobPolicyUnappliedJobPercentage(0.01f), new LocalMemcacheServiceTestConfig(), localTaskQueueConfig, capabilityStatusConfig); helper.setUp(); }
@Before public void setUp() throws Exception { super.setUp(); // See // http://www.ensor.cc/2010/11/unit-testing-named-queues-spring.html // NOTE: THE QUEUE XML PATH RELATIVE TO WEB APP ROOT, More info // below // http://stackoverflow.com/questions/11197058/testing-non-default-app-engine-task-queues final LocalTaskQueueTestConfig localTaskQueueConfig = new LocalTaskQueueTestConfig() .setDisableAutoTaskExecution(false).setQueueXmlPath("src/test/resources/queue.xml") .setTaskExecutionLatch(countdownLatch).setCallbackClass(DeleteShardedCounterDeferredCallback.class); Capability testOne = new Capability("memcache"); CapabilityStatus testStatus = CapabilityStatus.DISABLED; // Initialize LocalCapabilitiesServiceTestConfig capabilityStatusConfig = new LocalCapabilitiesServiceTestConfig() .setCapabilityStatus(testOne, testStatus); // Use a different queue.xml for testing purposes helper = new LocalServiceTestHelper( new LocalDatastoreServiceTestConfig().setDefaultHighRepJobPolicyUnappliedJobPercentage(0.01f), new LocalMemcacheServiceTestConfig(), localTaskQueueConfig, capabilityStatusConfig); helper.setUp(); }
@Before public void setUp() throws Exception { super.setUp(); // See // http://www.ensor.cc/2010/11/unit-testing-named-queues-spring.html // NOTE: THE QUEUE XML PATH RELATIVE TO WEB APP ROOT, More info // below // http://stackoverflow.com/questions/11197058/testing-non-default-app-engine-task-queues final LocalTaskQueueTestConfig localTaskQueueConfig = new LocalTaskQueueTestConfig() .setDisableAutoTaskExecution(false).setQueueXmlPath("src/test/resources/queue.xml") .setTaskExecutionLatch(countdownLatch).setCallbackClass(DeleteShardedCounterDeferredCallback.class); Capability testOne = new Capability("memcache"); CapabilityStatus testStatus = CapabilityStatus.DISABLED; // Initialize LocalCapabilitiesServiceTestConfig capabilityStatusConfig = new LocalCapabilitiesServiceTestConfig() .setCapabilityStatus(testOne, testStatus); // Use a different queue.xml for testing purposes helper = new LocalServiceTestHelper( new LocalDatastoreServiceTestConfig().setDefaultHighRepJobPolicyUnappliedJobPercentage(0.01f), new LocalMemcacheServiceTestConfig(), localTaskQueueConfig, capabilityStatusConfig); helper.setUp(); }
@Before public void setUp() throws Exception { super.setUp(); // See // http://www.ensor.cc/2010/11/unit-testing-named-queues-spring.html // NOTE: THE QUEUE XML PATH RELATIVE TO WEB APP ROOT, More info // below // http://stackoverflow.com/questions/11197058/testing-non-default-app-engine-task-queues final LocalTaskQueueTestConfig localTaskQueueConfig = new LocalTaskQueueTestConfig() .setDisableAutoTaskExecution(false).setQueueXmlPath("src/test/resources/queue.xml") .setTaskExecutionLatch(countdownLatch).setCallbackClass(DeleteShardedCounterDeferredCallback.class); Capability testOne = new Capability("memcache"); CapabilityStatus testStatus = CapabilityStatus.DISABLED; // Initialize LocalCapabilitiesServiceTestConfig capabilityStatusConfig = new LocalCapabilitiesServiceTestConfig() .setCapabilityStatus(testOne, testStatus); // Use a different queue.xml for testing purposes helper = new LocalServiceTestHelper( new LocalDatastoreServiceTestConfig().setDefaultHighRepJobPolicyUnappliedJobPercentage(0.01f), new LocalMemcacheServiceTestConfig(), localTaskQueueConfig, capabilityStatusConfig); helper.setUp(); }
@Before public void setUp() throws Exception { // Don't call super.setUp because we initialize slightly differently // here... countdownLatch = new LocalTaskQueueTestConfig.TaskCountDownLatch(1); // See // http://www.ensor.cc/2010/11/unit-testing-named-queues-spring.html // NOTE: THE QUEUE XML PATH RELATIVE TO WEB APP ROOT, More info // below // http://stackoverflow.com/questions/11197058/testing-non-default-app-engine-task-queues final LocalTaskQueueTestConfig localTaskQueueConfig = new LocalTaskQueueTestConfig() .setDisableAutoTaskExecution(false).setQueueXmlPath("src/test/resources/queue.xml") .setTaskExecutionLatch(countdownLatch).setCallbackClass(DeleteShardedCounterDeferredCallback.class); // Use a different queue.xml for testing purposes helper = new LocalServiceTestHelper(new LocalDatastoreServiceTestConfig().setApplyAllHighRepJobPolicy(), new LocalMemcacheServiceTestConfig(), new LocalCapabilitiesServiceTestConfig(), localTaskQueueConfig); helper.setUp(); memcache = MemcacheServiceFactory.getMemcacheService(); capabilitiesService = CapabilitiesServiceFactory.getCapabilitiesService(); // New Objectify 5.1 Way. See https://groups.google.com/forum/#!topic/objectify-appengine/O4FHC_i7EGk this.session = ObjectifyService.begin(); // Enable Joda Translators JodaTimeTranslators.add(ObjectifyService.factory()); ObjectifyService.factory().register(CounterData.class); ObjectifyService.factory().register(CounterShardData.class); ObjectifyService.factory().register(CounterShardOperationData.class); shardedCounterServiceImpl = new ShardedCounterServiceImpl(); this.shardedCounterService = shardedCounterServiceImpl; }