/* * Copyright 2001-2009 Terracotta, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); you may not * use this file except in compliance with the License. You may obtain a copy * of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the * License for the specific language governing permissions and limitations * under the License. */ package org.quartz; /** * Unit test for JobDataMap serialization backwards compatibility. */ public class JobDataMapTest extends SerializationTestSupport { private static final String[] VERSIONS = new String[] {"1.4.5", "1.5.1", "2.1"}; /** * Get the object to serialize when generating serialized file for future * tests, and against which to validate deserialized object. */ @Override protected Object getTargetObject() { JobDataMap m = new JobDataMap(); m.put("key", Integer.valueOf(5)); return m; } /** * Get the Quartz versions for which we should verify * serialization backwards compatibility. */ @Override protected String[] getVersions() { return VERSIONS; } /** * Verify that the target object and the object we just deserialized * match. */ @SuppressWarnings("deprecation") @Override protected void verifyMatch(Object target, Object deserialized) { JobDataMap targetMap = (JobDataMap)target; JobDataMap deserializedMap = (JobDataMap)deserialized; assertNotNull(deserializedMap); assertEquals(targetMap.getWrappedMap(), deserializedMap.getWrappedMap()); assertEquals(targetMap.getAllowsTransientData(), deserializedMap.getAllowsTransientData()); assertEquals(targetMap.isDirty(), deserializedMap.isDirty()); } public static void main(String[] args) throws Exception { new JobDataMapTest().writeJobDataFile("2.1"); } }