// Path: src/main/java/co/omise/models/Forex.java
// public class Forex extends Model {
//     private String base;
//     private String location;
//     private String quote;
//     private Double rate;
// 
//     public String getBase() {
//         return this.base;
//     }
// 
//     public void setBase(String base) {
//         this.base = base;
//     }
// 
//     public String getLocation() {
//         return this.location;
//     }
// 
//     public void setLocation(String location) {
//         this.location = location;
//     }
// 
//     public String getQuote() {
//         return this.quote;
//     }
// 
//     public void setQuote(String quote) {
//         this.quote = quote;
//     }
// 
//     public Double getRate() {
//         return this.rate;
//     }
// 
//     public void setRate(Double rate) {
//         this.rate = rate;
//     }
// 
//     public static class GetRequestBuilder extends RequestBuilder<Forex> {
//         private String currency;
//         public GetRequestBuilder(String currency) {
//             this.currency = currency;
//         }
// 
//         @Override
//         protected String method() {
//             return GET;
//         }
// 
//         @Override
//         protected HttpUrl path() {
//             return buildUrl(Endpoint.API, "forex", currency);
//         }
// 
//         @Override
//         protected ResponseType<Forex> type() {
//             return new ResponseType<>(Forex.class);
//         }
//     }
// }
// 
// Path: src/main/java/co/omise/models/OmiseException.java
// public class OmiseException extends Exception implements OmiseObject {
//     private String object;
//     private String location;
//     private String code;
//     private int httpStatusCode;
//     private String message;
// 
//     @Override
//     public String getObject() {
//         return object;
//     }
// 
//     @Override
//     public void setObject(String object) {
//         this.object = object;
//     }
// 
//     @Override
//     public String getLocation() {
//         return location;
//     }
// 
//     @Override
//     public void setLocation(String location) {
//         this.location = location;
//     }
// 
//     public String getCode() {
//         return code;
//     }
// 
//     public void setCode(String code) {
//         this.code = code;
//     }
// 
//     public int getHttpStatusCode() {
//         return httpStatusCode;
//     }
// 
//     public void setHttpStatusCode(int httpStatusCode) {
//         this.httpStatusCode = httpStatusCode;
//     }
// 
//     public String getMessage() {
//         return message;
//     }
// 
//     public void setMessage(String message) {
//         this.message = message;
//     }
// 
//     @Override
//     public String toString() {
//         return "(" + Integer.toString(httpStatusCode) + "/" + code + ") " + message;
//     }
// }


import co.omise.models.Forex;
import co.omise.models.OmiseException;
import org.junit.Test;
import java.io.IOException;
package co.omise.requests;



public class ForexRequestTest extends RequestTest {

    @Test
    public void testGet() throws IOException, OmiseException {
// Path: src/main/java/co/omise/models/Forex.java
// public class Forex extends Model {
//     private String base;
//     private String location;
//     private String quote;
//     private Double rate;
// 
//     public String getBase() {
//         return this.base;
//     }
// 
//     public void setBase(String base) {
//         this.base = base;
//     }
// 
//     public String getLocation() {
//         return this.location;
//     }
// 
//     public void setLocation(String location) {
//         this.location = location;
//     }
// 
//     public String getQuote() {
//         return this.quote;
//     }
// 
//     public void setQuote(String quote) {
//         this.quote = quote;
//     }
// 
//     public Double getRate() {
//         return this.rate;
//     }
// 
//     public void setRate(Double rate) {
//         this.rate = rate;
//     }
// 
//     public static class GetRequestBuilder extends RequestBuilder<Forex> {
//         private String currency;
//         public GetRequestBuilder(String currency) {
//             this.currency = currency;
//         }
// 
//         @Override
//         protected String method() {
//             return GET;
//         }
// 
//         @Override
//         protected HttpUrl path() {
//             return buildUrl(Endpoint.API, "forex", currency);
//         }
// 
//         @Override
//         protected ResponseType<Forex> type() {
//             return new ResponseType<>(Forex.class);
//         }
//     }
// }
// 
// Path: src/main/java/co/omise/models/OmiseException.java
// public class OmiseException extends Exception implements OmiseObject {
//     private String object;
//     private String location;
//     private String code;
//     private int httpStatusCode;
//     private String message;
// 
//     @Override
//     public String getObject() {
//         return object;
//     }
// 
//     @Override
//     public void setObject(String object) {
//         this.object = object;
//     }
// 
//     @Override
//     public String getLocation() {
//         return location;
//     }
// 
//     @Override
//     public void setLocation(String location) {
//         this.location = location;
//     }
// 
//     public String getCode() {
//         return code;
//     }
// 
//     public void setCode(String code) {
//         this.code = code;
//     }
// 
//     public int getHttpStatusCode() {
//         return httpStatusCode;
//     }
// 
//     public void setHttpStatusCode(int httpStatusCode) {
//         this.httpStatusCode = httpStatusCode;
//     }
// 
//     public String getMessage() {
//         return message;
//     }
// 
//     public void setMessage(String message) {
//         this.message = message;
//     }
// 
//     @Override
//     public String toString() {
//         return "(" + Integer.toString(httpStatusCode) + "/" + code + ") " + message;
//     }
// }


// Path: src/test/java/co/omise/requests/ForexRequestTest.java
import co.omise.models.Forex;
import co.omise.models.OmiseException;
import org.junit.Test;
import java.io.IOException;

package co.omise.requests;



public class ForexRequestTest extends RequestTest {

    @Test
    public void testGet() throws IOException, OmiseException {
        Request<Forex> request = new Forex.GetRequestBuilder("usd")