// Path: src/main/java/com/github/easyjsonapi/entities/Data.java
// public final class Data implements Cloneable {
// 
//     @SerializedName(value = "attributes")
//     private final Object attr;
// 
//     @SerializedName(value = "id")
//     private final String id;
// 
//     // @SerializedName(value = "links")
//     // private final Object links;
// 
//     @SerializedName(value = "relationships")
//     private Relationships rels;
// 
//     @SerializedName(value = "type")
//     private final String type;
// 
//     public Data(String id, String type, Object attr) {
//         Validation.checkValidObject(attr);
//         this.id = id;
//         this.type = type;
//         this.attr = attr;
//         this.rels = null;
//     }
// 
//     public Data(String id, String type, Object attr, Relationships rels) {
//         Validation.checkValidObject(attr);
//         this.id = id;
//         this.type = type;
//         this.attr = attr;
//         this.rels = rels;
//     }
// 
//     /*
//      * (non-Javadoc)
//      * @see java.lang.Object#clone()
//      */
//     @Override
//     protected Object clone() throws CloneNotSupportedException {
//         return super.clone();
//     }
// 
//     /**
//      * @return the attr
//      */
//     public Object getAttr() {
//         return attr;
//     }
// 
//     /**
//      * @return the id
//      */
//     public String getId() {
//         return id;
//     }
// 
//     /**
//      * @return the rels
//      */
//     public Relationships getRels() {
//         if (Assert.isNull(rels)) {
//             this.rels = new Relationships();
//         }
//         return rels;
//     }
// 
//     /**
//      * @return the type
//      */
//     public String getType() {
//         return type;
//     }
// 
// }
// 
// Path: src/main/java/com/github/easyjsonapi/entities/Nullable.java
// public interface Nullable {
// 
//     public static Data DATA = null;
// 
//     public static DataLinkage DATA_LINKAGE = null;
// 
//     public static Error ERROR = null;
// 
//     public static Link LINK = null;
// 
//     public static LinkRelated LINK_RELATED = null;
// 
//     public static Object OBJECT = null;
// 
//     public static Relationship RELATIONSHIP = null;
// 
//     public static Relationships RELATIONSHIPS = null;
// 
//     public static Source SOURCE = null;
// 
// }
// 
// Path: src/main/java/com/github/easyjsonapi/exceptions/EasyJsonApiEntityException.java
// public class EasyJsonApiEntityException extends EasyJsonApiRuntimeException {
// 
//     /**
//      * UID Generated
//      */
//     private static final long serialVersionUID = 5052459447438977284L;
// 
//     public EasyJsonApiEntityException(String message) {
//         super(message);
//     }
// 
//     public EasyJsonApiEntityException(String message, Throwable cause) {
//         super(message, cause);
//     }
// 
// }


import java.util.ArrayList;
import java.util.LinkedList;
import org.junit.Assert;
import org.junit.Test;
import com.github.easyjsonapi.entities.Data;
import com.github.easyjsonapi.entities.Nullable;
import com.github.easyjsonapi.exceptions.EasyJsonApiEntityException;
/*
 * #%L
 * EasyJsonApi
 * %%
 * Copyright (C) 2016 EasyJsonApi
 * %%
 * 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.
 * #L%
 */
package com.github.easyjsonapi.entities;




public class DataTest {

    @Test
    public void closeDataTest() throws CloneNotSupportedException {

// Path: src/main/java/com/github/easyjsonapi/entities/Data.java
// public final class Data implements Cloneable {
// 
//     @SerializedName(value = "attributes")
//     private final Object attr;
// 
//     @SerializedName(value = "id")
//     private final String id;
// 
//     // @SerializedName(value = "links")
//     // private final Object links;
// 
//     @SerializedName(value = "relationships")
//     private Relationships rels;
// 
//     @SerializedName(value = "type")
//     private final String type;
// 
//     public Data(String id, String type, Object attr) {
//         Validation.checkValidObject(attr);
//         this.id = id;
//         this.type = type;
//         this.attr = attr;
//         this.rels = null;
//     }
// 
//     public Data(String id, String type, Object attr, Relationships rels) {
//         Validation.checkValidObject(attr);
//         this.id = id;
//         this.type = type;
//         this.attr = attr;
//         this.rels = rels;
//     }
// 
//     /*
//      * (non-Javadoc)
//      * @see java.lang.Object#clone()
//      */
//     @Override
//     protected Object clone() throws CloneNotSupportedException {
//         return super.clone();
//     }
// 
//     /**
//      * @return the attr
//      */
//     public Object getAttr() {
//         return attr;
//     }
// 
//     /**
//      * @return the id
//      */
//     public String getId() {
//         return id;
//     }
// 
//     /**
//      * @return the rels
//      */
//     public Relationships getRels() {
//         if (Assert.isNull(rels)) {
//             this.rels = new Relationships();
//         }
//         return rels;
//     }
// 
//     /**
//      * @return the type
//      */
//     public String getType() {
//         return type;
//     }
// 
// }
// 
// Path: src/main/java/com/github/easyjsonapi/entities/Nullable.java
// public interface Nullable {
// 
//     public static Data DATA = null;
// 
//     public static DataLinkage DATA_LINKAGE = null;
// 
//     public static Error ERROR = null;
// 
//     public static Link LINK = null;
// 
//     public static LinkRelated LINK_RELATED = null;
// 
//     public static Object OBJECT = null;
// 
//     public static Relationship RELATIONSHIP = null;
// 
//     public static Relationships RELATIONSHIPS = null;
// 
//     public static Source SOURCE = null;
// 
// }
// 
// Path: src/main/java/com/github/easyjsonapi/exceptions/EasyJsonApiEntityException.java
// public class EasyJsonApiEntityException extends EasyJsonApiRuntimeException {
// 
//     /**
//      * UID Generated
//      */
//     private static final long serialVersionUID = 5052459447438977284L;
// 
//     public EasyJsonApiEntityException(String message) {
//         super(message);
//     }
// 
//     public EasyJsonApiEntityException(String message, Throwable cause) {
//         super(message, cause);
//     }
// 
// }


// Path: src/test/java/com/github/easyjsonapi/entities/DataTest.java
import java.util.ArrayList;
import java.util.LinkedList;
import org.junit.Assert;
import org.junit.Test;
import com.github.easyjsonapi.entities.Data;
import com.github.easyjsonapi.entities.Nullable;
import com.github.easyjsonapi.exceptions.EasyJsonApiEntityException;

/*
 * #%L
 * EasyJsonApi
 * %%
 * Copyright (C) 2016 EasyJsonApi
 * %%
 * 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.
 * #L%
 */
package com.github.easyjsonapi.entities;




public class DataTest {

    @Test
    public void closeDataTest() throws CloneNotSupportedException {

        Data dataType = new Data("1", "books", Nullable.OBJECT);