// Path: src/main/java/com/github/davidmoten/rx2/buffertofile/Serializers.java
// public final class Serializers {
// 
//     private static final Charset UTF_8 = Charset.forName("UTF-8");
// 
//     private Serializers() {
//         // prevent initialization
//     }
// 
//     public static <T extends Serializable> Serializer<T> javaIO() {
//         // TODO use holder
//         return new SerializerJavaIO<T>();
//     }
// 
//     public static Serializer<byte[]> bytes() {
//         // TODO use holder
//         return new SerializerBytes();
//     }
// 
//     public static Serializer<String> utf8() {
//         // TODO use holder
//         return string(UTF_8);
//     }
// 
//     public static Serializer<String> string(Charset charset) {
//         return new SerializerString(charset);
//     }
// 
//     public static <T> Serializer<T> from(DataSerializer<T> ds) {
//         return new WrappedDataSerializer<T>(ds);
//     }
// 
//     private static final class WrappedDataSerializer<T> implements Serializer<T> {
// 
//         private final DataSerializer<T> ds;
// 
//         WrappedDataSerializer(DataSerializer<T> ds) {
//             this.ds = ds;
//         }
// 
//         @Override
//         public byte[] serialize(T t) throws IOException {
//             ByteArrayOutputStream bytes;
//             int cap = ds.sizeHint();
//             if (cap > 0)
//                 bytes = new ByteArrayOutputStream(ds.sizeHint());
//             else
//                 bytes = new ByteArrayOutputStream();
//             DataOutputStream out = new DataOutputStream(bytes);
//             ds.serialize(t, out);
//             out.close();
//             return bytes.toByteArray();
//         }
// 
//         @Override
//         public T deserialize(byte[] bytes) throws IOException, ClassNotFoundException {
//             ByteArrayInputStream is = new ByteArrayInputStream(bytes);
//             DataInputStream in = new DataInputStream(is);
//             T t = ds.deserialize(in);
//             in.close();
//             return t;
//         }
// 
//     }
// 
// }


import java.io.IOException;
import java.util.Arrays;
import org.junit.Test;
import com.github.davidmoten.rx2.buffertofile.Serializers;
package com.github.davidmoten.rx2.internal.flowable;




public class SerializerJavaIOTest {

    @Test(expected = IOException.class)
    public void testNoHeader() throws IOException, ClassNotFoundException {
// Path: src/main/java/com/github/davidmoten/rx2/buffertofile/Serializers.java
// public final class Serializers {
// 
//     private static final Charset UTF_8 = Charset.forName("UTF-8");
// 
//     private Serializers() {
//         // prevent initialization
//     }
// 
//     public static <T extends Serializable> Serializer<T> javaIO() {
//         // TODO use holder
//         return new SerializerJavaIO<T>();
//     }
// 
//     public static Serializer<byte[]> bytes() {
//         // TODO use holder
//         return new SerializerBytes();
//     }
// 
//     public static Serializer<String> utf8() {
//         // TODO use holder
//         return string(UTF_8);
//     }
// 
//     public static Serializer<String> string(Charset charset) {
//         return new SerializerString(charset);
//     }
// 
//     public static <T> Serializer<T> from(DataSerializer<T> ds) {
//         return new WrappedDataSerializer<T>(ds);
//     }
// 
//     private static final class WrappedDataSerializer<T> implements Serializer<T> {
// 
//         private final DataSerializer<T> ds;
// 
//         WrappedDataSerializer(DataSerializer<T> ds) {
//             this.ds = ds;
//         }
// 
//         @Override
//         public byte[] serialize(T t) throws IOException {
//             ByteArrayOutputStream bytes;
//             int cap = ds.sizeHint();
//             if (cap > 0)
//                 bytes = new ByteArrayOutputStream(ds.sizeHint());
//             else
//                 bytes = new ByteArrayOutputStream();
//             DataOutputStream out = new DataOutputStream(bytes);
//             ds.serialize(t, out);
//             out.close();
//             return bytes.toByteArray();
//         }
// 
//         @Override
//         public T deserialize(byte[] bytes) throws IOException, ClassNotFoundException {
//             ByteArrayInputStream is = new ByteArrayInputStream(bytes);
//             DataInputStream in = new DataInputStream(is);
//             T t = ds.deserialize(in);
//             in.close();
//             return t;
//         }
// 
//     }
// 
// }


// Path: src/test/java/com/github/davidmoten/rx2/internal/flowable/SerializerJavaIOTest.java
import java.io.IOException;
import java.util.Arrays;
import org.junit.Test;
import com.github.davidmoten.rx2.buffertofile.Serializers;

package com.github.davidmoten.rx2.internal.flowable;




public class SerializerJavaIOTest {

    @Test(expected = IOException.class)
    public void testNoHeader() throws IOException, ClassNotFoundException {
        Serializers.javaIO().deserialize(new byte[] {});