diff options
| -rw-r--r-- | test/test/04-cart.js | 82 | ||||
| -rw-r--r-- | test/test/05-cart-flows.js | 210 |
2 files changed, 240 insertions, 52 deletions
diff --git a/test/test/04-cart.js b/test/test/04-cart.js index 4d302891..b786df3e 100644 --- a/test/test/04-cart.js +++ b/test/test/04-cart.js @@ -8,6 +8,8 @@ var assert = require("assert") // sdk.cart.delete_item // sdk.cart.get_status +/* + describe('cart', function(){ if (! sdk.auth.access_token) { @@ -317,15 +319,91 @@ describe('payment', function(){ // sdk.cart.finalize describe('checkout', function(){ + + describe('#add_item()', function(){ + it('adds item to cart', function(done){ + var product_item = { + Code10: "43198940ML", + Size: 7, + } + promise(sdk.cart.add_item, { data: product_item }).then(function(data){ + assert(data.Header.StatusCode == 201) + done() + }) + }) + }) + describe('#get_status()', function(){ + it('get contents of cart', function(done){ + promise(sdk.cart.get_status, {}).then(function(data){ + assert(data.Header.StatusCode == 200) + console.log(data) + console.log(data.Cart.Payment) + done() + }) + }) + }) describe('#finalize()', function(){ it('fails to finalize a cart with test data', function(done){ - promise(sdk.cart.finalize, { ReturnUrl: "stoneisland.com", Token: sdk.auth.access_token }).then(function(data){ + this.timeout(10000) + promise(sdk.cart.finalize, {}).then(function(data){ + console.log("SUCCESS", data) + done() + }).error(function(data){ + console.log("FAILURE", data.responseText) + done() + }) + }) + }) + + describe('#get_status()', function(){ + it('get contents of cart', function(done){ + promise(sdk.cart.get_status, {}).then(function(data){ + assert(data.Header.StatusCode == 200) + console.log(data) + console.log(data.Cart.Payment) + done() + }) + }) + }) + + describe('#finalize()', function(){ + it('again fails to finalize a cart with test data', function(done){ + this.timeout(10000) + promise(sdk.cart.finalize, {}).then(function(data){ console.log("SUCCESS", data) done() }).error(function(data){ - console.log("FAILURE", data) + console.log("FAILURE", data.responseText) done() }) }) }) + + describe('#finalize()', function(){ + it('a third time fails to finalize a cart with test data', function(done){ + this.timeout(10000) + promise(sdk.cart.finalize, {}).then(function(data){ + console.log("SUCCESS", data) + done() + }).error(function(data){ + console.log("FAILURE", data.responseText) + done() + }) + }) + }) + +// describe('#secure_finalize()', function(){ +// it('fails to finalize a cart with test data', function(done){ +// promise(sdk.cart.secure_finalize, { ReturnUrl: "stoneisland.com", Token: sdk.auth.access_token }).then(function(data){ +// console.log("SUCCESS", data) +// done() +// }).error(function(data){ +// console.log("FAILURE", data) +// done() +// }) +// }) +// }) + }) + +*/ diff --git a/test/test/05-cart-flows.js b/test/test/05-cart-flows.js index 40230b9b..e4e3a191 100644 --- a/test/test/05-cart-flows.js +++ b/test/test/05-cart-flows.js @@ -2,9 +2,41 @@ var sdk = require('../lib/sdk') var promise = require('../lib/promise') var assert = require("assert") -describe('cart_flows', function(){ +// sdk.cart.initialize +// sdk.cart.set_user +// sdk.cart.add_item +// sdk.cart.delete_item +// sdk.cart.get_status - describe('#can_add_products_to_an_empty_cart()', function(){ +describe('finalize_cart', function(){ + var new_user_data = { + "Email": "nick.kegeyan+" + Math.floor(Math.random() * 10000000) + "@gmail.com", + "Password": "TestPasswordYOOX", + "Gender": "U", + "Name": "Candace", + "Surname": "Roy", + "DataProfiling": true, + } + var test_product = { + Code10: "46413442EJ", + Size: "6", + } + + describe('#signup()', function(){ + it('makes a user and creates a token', function(done){ + promise(sdk.account.signup, { data: new_user_data }).then(function(data){ + // console.log(data) + assert(data.Header.StatusCode == 201) + assert('UserAccount' in data) + + // console.log(data) + + done() + }) + }) + }) + + describe('#initialize()', function(){ it('initializes the cart', function(done){ promise(sdk.cart.initialize, { data: {} }).then(function(data){ assert(data.Header.StatusCode == 200) @@ -13,76 +45,70 @@ describe('cart_flows', function(){ done() }) }) - - it('adds item to cart', function(done){ - var product_item = { - "Code10": "37725683OV", - "Size": 4, + }) + + describe('#set_user()', function(){ + it('sets user to cart', function(done){ + var user_creds = { + "UserId": sdk.auth.user_id, + "UserToken": sdk.auth.access_token, } - promise(sdk.cart.add_item, { data: product_item }).then(function(data){ - assert(data.Header.StatusCode == 201) - done() - }) - }) - - it('has added product to cart', function(done){ - promise(sdk.cart.get_status, {}).then(function(data){ + promise(sdk.cart.set_user, { data: user_creds }).then(function(data){ assert(data.Header.StatusCode == 200) - assert(data.Cart.Items.length == 1) - // console.log(JSON.stringify(data, null, 2)) done() }) }) + }) - it('removes item from cart', function(done){ - var product_item = { - "Code10": "37725683OV", - "Size": 4, - } - promise(sdk.cart.delete_item, { data: product_item }).then(function(data){ - // console.log(data) + describe('#get_card_types()', function(){ + it('gets card types', function(done){ + promise(sdk.cart.get_card_types).then(function(data){ assert(data.Header.StatusCode == 200) + console.log(data.CardTypes.CardTypesList) done() }) }) - + }) + + describe('#set_shipping_address()', function(){ it('sets shipping address', function(done){ var shipping_info = { - "Name":"Nome", - "Surname":"Cognome", - "Email":"prova@prova.it", - "Phone":"333-333-3333", - "Mobile":"333-333-3333", - "StreetWithNumber":"555 StreetNumber\nBlah Blah", - "PostalCode":"11101", - "City":"Long Island City", + "Name":"Candace", + "Surname":"Roy", + "Email":"nick.kegeyan@gmail.com", + "Phone":"917-846-3263", + "Mobile":"917-846-3263", + "StreetWithNumber":"5 Crosby\n", + "PostalCode":"10013", + "City":"New York City", "Region":"NY", "CountryCode":"US", - } + } promise(sdk.cart.set_shipping_address, { data: shipping_info }).then(function(data){ assert(data.Header.StatusCode == 200) done() }) }) + }) + describe('#set_credit_card()', function(){ it('sets credit card', function(done){ - var credit_info = { + var credit_info = { "Guid": null, - "HolderName": "Name2", - "HolderSurname": "Surname2", - "HolderAddress": "via del pino, 4", - "HolderCity": "Monterenzio", - "HolderProvince": "BO", - "HolderZip": "40050", - "HolderISOCountry": "IT", - "HolderEmail": "mailTest@mail2.it", - "CardNumber": "123456789012345", - "Type": "Visa", - "ExpirationMonth": "1", - "ExpirationYear": "12", - "Cvv": "123", - "Last4": "2345", + "HolderName": "Candace", + "HolderSurname": "Roy", + "HolderAddress": "5 Crosby", + "HolderCity": "New York City", + "HolderProvince": "NY", + "HolderZip": "10013", + "HolderISOCountry": "US", + "HolderEmail": "nick.kegeyan@gmail.com", + "CardNumber": "", + "Type": "AmericanExpress", + "ExpirationMonth": "", + "ExpirationYear": "", + "Cvv": "", } promise(sdk.cart.set_credit_card, { data: credit_info }).then(function(data){ @@ -90,6 +116,90 @@ describe('cart_flows', function(){ done() }) }) + }) + describe('#add_item()', function(){ + it('adds item to cart', function(done){ + + promise(sdk.cart.add_item, { data: test_product }).then(function(data){ + assert(data.Header.StatusCode == 201) + done() + }) + }) }) -})
\ No newline at end of file + describe('#get_status()', function(){ + it('get contents of cart', function(done){ + promise(sdk.cart.get_status, {}).then(function(data){ + assert(data.Header.StatusCode == 200) + console.log(data) + console.log(data.Cart.Payment) + done() + }) + }) + }) + + describe('#finalize()', function(){ + it('fails to finalize a cart with test data', function(done){ + this.timeout(10000) + promise(sdk.cart.finalize, {}).then(function(data){ + console.log("SUCCESS", data) + done() + }).error(function(data){ + console.log("FAILURE", data.responseText) + done() + }) + }) + }) + + describe('#get_status()', function(){ + it('get contents of cart', function(done){ + promise(sdk.cart.get_status, {}).then(function(data){ + assert(data.Header.StatusCode == 200) + console.log(data) + console.log(data.Cart.Payment) + done() + }) + }) + }) + + describe('#finalize()', function(){ + it('again fails to finalize a cart with test data', function(done){ + this.timeout(10000) + promise(sdk.cart.finalize, {}).then(function(data){ + console.log("SUCCESS", data) + done() + }).error(function(data){ + console.log("FAILURE", data.responseText) + done() + }) + }) + }) + + describe('#finalize()', function(){ + it('a third time fails to finalize a cart with test data', function(done){ + this.timeout(10000) + promise(sdk.cart.finalize, {}).then(function(data){ + console.log("SUCCESS", data) + done() + }).error(function(data){ + console.log("FAILURE", data.responseText) + done() + }) + }) + }) + +/* + describe('#secure_finalize()', function(){ + it('fails to finalize a cart with test data', function(done){ + promise(sdk.cart.secure_finalize, { ReturnUrl: "stoneisland.com", Token: sdk.auth.access_token }).then(function(data){ + console.log("SUCCESS", data) + done() + }).error(function(data){ + console.log("FAILURE", data) + done() + }) + }) + }) +*/ + +}) |
