Skip to content

Commit

Permalink
Merge branch 'hotfix/2.0.1'
Browse files Browse the repository at this point in the history
  • Loading branch information
ryankazokas committed Nov 24, 2020
2 parents e2f9f9c + 0b207a0 commit b24ddd9
Show file tree
Hide file tree
Showing 6 changed files with 1,483 additions and 1,359 deletions.
2 changes: 1 addition & 1 deletion pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
<modelVersion>4.0.0</modelVersion>
<groupId>com.channelape</groupId>
<artifactId>shopify-sdk</artifactId>
<version>2.0.0</version>
<version>2.0.1</version>

<name>Shopify SDK</name>
<description>Java SDK for Shopify REST API.</description>
Expand Down
12 changes: 12 additions & 0 deletions src/main/java/com/shopify/model/ShopifyLineItem.java
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
package com.shopify.model;

import java.math.BigDecimal;
import java.util.LinkedList;
import java.util.List;

import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
Expand Down Expand Up @@ -40,6 +42,8 @@ public class ShopifyLineItem {
private String fulfillmentStatus;
@XmlElement(name = "fulfillment_service")
private String fulfillmentService;
@XmlElement(name = "tax_lines")
private List<ShopifyTaxLine> taxLines = new LinkedList<>();

public String getId() {
return id;
Expand Down Expand Up @@ -193,4 +197,12 @@ public void setFulfillmentService(final String fulfillmentService) {
this.fulfillmentService = fulfillmentService;
}

public List<ShopifyTaxLine> getTaxLines() {
return taxLines;
}

public void setTaxLines(final List<ShopifyTaxLine> taxLines) {
this.taxLines = taxLines;
}

}
27 changes: 27 additions & 0 deletions src/test/java/com/shopify/ShopifySdkDriver.java
Original file line number Diff line number Diff line change
Expand Up @@ -173,6 +173,33 @@ public void givenValidOrderIdWhenRetrievingOrderThenReturnShopifyOrder() {
assertEquals(null, actualShopifyOrder.getRefunds().get(0).getRefundLineItems().get(0).getLocationId());
assertEquals("ABC-1234570",
actualShopifyOrder.getRefunds().get(0).getRefundLineItems().get(0).getLineItem().getSku());

assertEquals(1, actualShopifyOrder.getTaxLines().size());
assertTrue(BigDecimal.valueOf(8.64).compareTo(actualShopifyOrder.getTaxLines().get(0).getPrice()) == 0);
assertTrue(BigDecimal.valueOf(0.06).compareTo(actualShopifyOrder.getTaxLines().get(0).getRate()) == 0);
assertEquals("Pennsylvania State Tax", actualShopifyOrder.getTaxLines().get(0).getTitle());

assertEquals(2, actualShopifyOrder.getLineItems().get(0).getTaxLines().size());
assertEquals(1, actualShopifyOrder.getLineItems().get(1).getTaxLines().size());

assertTrue(BigDecimal.valueOf(2.16)
.compareTo(actualShopifyOrder.getLineItems().get(0).getTaxLines().get(0).getPrice()) == 0);
assertTrue(BigDecimal.valueOf(0.06)
.compareTo(actualShopifyOrder.getLineItems().get(0).getTaxLines().get(0).getRate()) == 0);
assertEquals("Pennsylvania State Tax",
actualShopifyOrder.getLineItems().get(0).getTaxLines().get(0).getTitle());
assertTrue(BigDecimal.valueOf(2.16)
.compareTo(actualShopifyOrder.getLineItems().get(0).getTaxLines().get(1).getPrice()) == 0);
assertTrue(BigDecimal.valueOf(0.06)
.compareTo(actualShopifyOrder.getLineItems().get(0).getTaxLines().get(1).getRate()) == 0);
assertEquals("Pennsylvania State Tax",
actualShopifyOrder.getLineItems().get(0).getTaxLines().get(1).getTitle());
assertTrue(BigDecimal.valueOf(2.16)
.compareTo(actualShopifyOrder.getLineItems().get(1).getTaxLines().get(0).getPrice()) == 0);
assertTrue(BigDecimal.valueOf(0.06)
.compareTo(actualShopifyOrder.getLineItems().get(1).getTaxLines().get(0).getRate()) == 0);
assertEquals("Pennsylvania State Tax",
actualShopifyOrder.getLineItems().get(1).getTaxLines().get(0).getTitle());
}

@Test
Expand Down
29 changes: 29 additions & 0 deletions src/test/java/com/shopify/ShopifySdkTest.java
Original file line number Diff line number Diff line change
Expand Up @@ -100,6 +100,7 @@
import com.shopify.model.ShopifyRefundShippingDetails;
import com.shopify.model.ShopifyShippingLine;
import com.shopify.model.ShopifyShop;
import com.shopify.model.ShopifyTaxLine;
import com.shopify.model.ShopifyTransaction;
import com.shopify.model.ShopifyTransactionReceipt;
import com.shopify.model.ShopifyTransactionsRoot;
Expand Down Expand Up @@ -382,6 +383,13 @@ public void givenSomePageAndCreatedAtMinAndCreatedAtMaxOrdersWhenRetrievingOrder
shopifyLineItem1.setId("1234565");
shopifyLineItem1.setSku("847289374");
shopifyLineItem1.setName("Really Cool Product");

final ShopifyTaxLine shopifyTaxLine1LineItem1 = buildTaxLine(new BigDecimal(41.22), new BigDecimal(46.3),
"Some Tax Line1");
final ShopifyTaxLine shopifyTaxLine1LineItem2 = buildTaxLine(new BigDecimal(54.22), new BigDecimal(26.3),
"Some Tax Line2");
shopifyLineItem1
.setTaxLines(new LinkedList<>(Arrays.asList(shopifyTaxLine1LineItem1, shopifyTaxLine1LineItem2)));
shopifyOrder1.setLineItems(Arrays.asList(shopifyLineItem1));

final ShopifyFulfillment shopifyFulfillment = new ShopifyFulfillment();
Expand Down Expand Up @@ -438,6 +446,20 @@ public void givenSomePageAndCreatedAtMinAndCreatedAtMaxOrdersWhenRetrievingOrder

assertEquals(shopifyOrder1.getId(), shopifyOrders.get(0).getId());
assertEquals(shopifyOrder1.getEmail(), shopifyOrders.get(0).getEmail());

assertEquals(2, shopifyOrders.get(0).getLineItems().get(0).getTaxLines().size());
assertEquals(shopifyTaxLine1LineItem1.getRate(),
shopifyOrders.get(0).getLineItems().get(0).getTaxLines().get(0).getRate());
assertEquals(shopifyTaxLine1LineItem1.getPrice(),
shopifyOrders.get(0).getLineItems().get(0).getTaxLines().get(0).getPrice());
assertEquals(shopifyTaxLine1LineItem1.getTitle(),
shopifyOrders.get(0).getLineItems().get(0).getTaxLines().get(0).getTitle());
assertEquals(shopifyTaxLine1LineItem2.getRate(),
shopifyOrders.get(0).getLineItems().get(0).getTaxLines().get(1).getRate());
assertEquals(shopifyTaxLine1LineItem2.getPrice(),
shopifyOrders.get(0).getLineItems().get(0).getTaxLines().get(1).getPrice());
assertEquals(shopifyTaxLine1LineItem2.getTitle(),
shopifyOrders.get(0).getLineItems().get(0).getTaxLines().get(1).getTitle());
assertEquals(shopifyOrder1.getFulfillments().get(0).getId(),
shopifyOrders.get(0).getFulfillments().get(0).getId());
assertTrue(shopifyOrder1.getFulfillments().get(0).getCreatedAt()
Expand Down Expand Up @@ -3539,4 +3561,11 @@ private void assertCustomer(final ShopifyCustomer actualCustomer) {
assertEquals(new BigDecimal(32.12), actualCustomer.getTotalSpent());
}

private ShopifyTaxLine buildTaxLine(final BigDecimal price, final BigDecimal rate, final String title) {
final ShopifyTaxLine shopifyTaxLine1LineItem1 = new ShopifyTaxLine();
shopifyTaxLine1LineItem1.setPrice(price);
shopifyTaxLine1LineItem1.setRate(rate);
shopifyTaxLine1LineItem1.setTitle(title);
return shopifyTaxLine1LineItem1;
}
}
61 changes: 61 additions & 0 deletions src/test/java/com/shopify/model/ShopifyLineItemTest.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,61 @@
package com.shopify.model;

import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertTrue;

import java.math.BigDecimal;
import java.util.LinkedList;

import org.junit.Test;

public class ShopifyLineItemTest {

private static final LinkedList<ShopifyTaxLine> SOME_TAX_LINES = new LinkedList<>();
private static final BigDecimal SOME_PRICE = BigDecimal.valueOf(41.55);

@Test
public void givenSomeValuesWhenBuildingLineItemsThenExpectLineItemValuesToBeCorrect() throws Exception {
final ShopifyLineItem shopifyLineItem = new ShopifyLineItem();
shopifyLineItem.setFulfillableQuantity(1);
shopifyLineItem.setFulfillmentService("manual");
shopifyLineItem.setFulfillmentStatus("inProgress");
shopifyLineItem.setGiftCard(true);
shopifyLineItem.setGrams(3);
shopifyLineItem.setId("4");
shopifyLineItem.setPrice(SOME_PRICE);
shopifyLineItem.setName("Some_Name");
shopifyLineItem.setProductId("123");
shopifyLineItem.setQuantity(4L);
shopifyLineItem.setRequiresShipping(true);
shopifyLineItem.setSku("ABC-123");
shopifyLineItem.setTaxable(true);
shopifyLineItem.setTitle("Some_Title");
shopifyLineItem.setTaxLines(SOME_TAX_LINES);
shopifyLineItem.setTotalDiscount(SOME_PRICE);
shopifyLineItem.setVariantId("1234");
shopifyLineItem.setVariantInventoryManagement("shopify");
shopifyLineItem.setVariantTitle("some-title");
shopifyLineItem.setVendor("some-vendor");

assertEquals(1, shopifyLineItem.getFulfillableQuantity());
assertEquals("manual", shopifyLineItem.getFulfillmentService());
assertEquals("inProgress", shopifyLineItem.getFulfillmentStatus());
assertTrue(shopifyLineItem.isGiftCard());
assertEquals(3, shopifyLineItem.getGrams());
assertEquals("4", shopifyLineItem.getId());
assertEquals("Some_Name", shopifyLineItem.getName());
assertEquals(SOME_PRICE, shopifyLineItem.getPrice());
assertEquals("123", shopifyLineItem.getProductId());
assertTrue(shopifyLineItem.isRequiresShipping());
assertEquals(4, shopifyLineItem.getQuantity());
assertEquals("ABC-123", shopifyLineItem.getSku());
assertEquals("Some_Title", shopifyLineItem.getTitle());
assertEquals(SOME_PRICE, shopifyLineItem.getTotalDiscount());
assertEquals("1234", shopifyLineItem.getVariantId());
assertEquals("shopify", shopifyLineItem.getVariantInventoryManagement());
assertEquals("some-title", shopifyLineItem.getVariantTitle());
assertEquals("some-vendor", shopifyLineItem.getVendor());

}

}
Loading

0 comments on commit b24ddd9

Please # to comment.