SerializationTest.java revision 1ffc4b2e242d1ba40ceb30b21510f0f26bd5aaa2
11ffc4b2e242d1ba40ceb30b21510f0f26bd5aaa2Jesse Wilson/*
21ffc4b2e242d1ba40ceb30b21510f0f26bd5aaa2Jesse Wilson * Copyright (C) 2011 The Android Open Source Project
31ffc4b2e242d1ba40ceb30b21510f0f26bd5aaa2Jesse Wilson *
41ffc4b2e242d1ba40ceb30b21510f0f26bd5aaa2Jesse Wilson * Licensed under the Apache License, Version 2.0 (the "License");
51ffc4b2e242d1ba40ceb30b21510f0f26bd5aaa2Jesse Wilson * you may not use this file except in compliance with the License.
61ffc4b2e242d1ba40ceb30b21510f0f26bd5aaa2Jesse Wilson * You may obtain a copy of the License at
71ffc4b2e242d1ba40ceb30b21510f0f26bd5aaa2Jesse Wilson *
81ffc4b2e242d1ba40ceb30b21510f0f26bd5aaa2Jesse Wilson *      http://www.apache.org/licenses/LICENSE-2.0
91ffc4b2e242d1ba40ceb30b21510f0f26bd5aaa2Jesse Wilson *
101ffc4b2e242d1ba40ceb30b21510f0f26bd5aaa2Jesse Wilson * Unless required by applicable law or agreed to in writing, software
111ffc4b2e242d1ba40ceb30b21510f0f26bd5aaa2Jesse Wilson * distributed under the License is distributed on an "AS IS" BASIS,
121ffc4b2e242d1ba40ceb30b21510f0f26bd5aaa2Jesse Wilson * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
131ffc4b2e242d1ba40ceb30b21510f0f26bd5aaa2Jesse Wilson * See the License for the specific language governing permissions and
141ffc4b2e242d1ba40ceb30b21510f0f26bd5aaa2Jesse Wilson * limitations under the License.
151ffc4b2e242d1ba40ceb30b21510f0f26bd5aaa2Jesse Wilson */
161ffc4b2e242d1ba40ceb30b21510f0f26bd5aaa2Jesse Wilson
171ffc4b2e242d1ba40ceb30b21510f0f26bd5aaa2Jesse Wilsonpackage libcore.java.io;
181ffc4b2e242d1ba40ceb30b21510f0f26bd5aaa2Jesse Wilson
191ffc4b2e242d1ba40ceb30b21510f0f26bd5aaa2Jesse Wilsonimport java.io.Serializable;
201ffc4b2e242d1ba40ceb30b21510f0f26bd5aaa2Jesse Wilsonimport junit.framework.TestCase;
211ffc4b2e242d1ba40ceb30b21510f0f26bd5aaa2Jesse Wilsonimport libcore.java.util.SerializableTester;
221ffc4b2e242d1ba40ceb30b21510f0f26bd5aaa2Jesse Wilson
231ffc4b2e242d1ba40ceb30b21510f0f26bd5aaa2Jesse Wilsonpublic final class SerializationTest extends TestCase {
241ffc4b2e242d1ba40ceb30b21510f0f26bd5aaa2Jesse Wilson
251ffc4b2e242d1ba40ceb30b21510f0f26bd5aaa2Jesse Wilson    // http://b/4471249
261ffc4b2e242d1ba40ceb30b21510f0f26bd5aaa2Jesse Wilson    public void testSerializeFieldMadeTransient() throws Exception {
271ffc4b2e242d1ba40ceb30b21510f0f26bd5aaa2Jesse Wilson        String s = "aced0005737200346c6962636f72652e6a6176612e696f2e53657269616c697a6174696f6e54657"
281ffc4b2e242d1ba40ceb30b21510f0f26bd5aaa2Jesse Wilson                + "374244669656c644d6164655472616e7369656e74000000000000000002000149000c7472616e736"
291ffc4b2e242d1ba40ceb30b21510f0f26bd5aaa2Jesse Wilson                + "9656e74496e747870abababab";
301ffc4b2e242d1ba40ceb30b21510f0f26bd5aaa2Jesse Wilson        FieldMadeTransient deserialized = (FieldMadeTransient) SerializableTester.deserializeHex(s);
311ffc4b2e242d1ba40ceb30b21510f0f26bd5aaa2Jesse Wilson        assertEquals(0, deserialized.transientInt);
321ffc4b2e242d1ba40ceb30b21510f0f26bd5aaa2Jesse Wilson    }
331ffc4b2e242d1ba40ceb30b21510f0f26bd5aaa2Jesse Wilson
341ffc4b2e242d1ba40ceb30b21510f0f26bd5aaa2Jesse Wilson    static class FieldMadeTransient implements Serializable {
351ffc4b2e242d1ba40ceb30b21510f0f26bd5aaa2Jesse Wilson        private static final long serialVersionUID = 0L;
361ffc4b2e242d1ba40ceb30b21510f0f26bd5aaa2Jesse Wilson        private transient int transientInt;
371ffc4b2e242d1ba40ceb30b21510f0f26bd5aaa2Jesse Wilson    }
381ffc4b2e242d1ba40ceb30b21510f0f26bd5aaa2Jesse Wilson}
39