recombee-api-client 3.0.0 → 4.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (150) hide show
  1. package/README.md +20 -14
  2. package/lib/api-client.js +49 -37
  3. package/lib/errors/response-error.js +2 -2
  4. package/lib/requests/add-search-synonym.js +60 -0
  5. package/lib/requests/delete-all-search-synonyms.js +40 -0
  6. package/lib/requests/delete-item.js +1 -1
  7. package/lib/requests/delete-more-items.js +44 -0
  8. package/lib/requests/delete-search-synonym.js +42 -0
  9. package/lib/requests/delete-user.js +1 -1
  10. package/lib/requests/index.js +8 -3
  11. package/lib/requests/list-search-synonyms.js +55 -0
  12. package/lib/requests/recommend-items-to-item.js +9 -4
  13. package/lib/requests/recommend-items-to-user.js +10 -5
  14. package/lib/requests/recommend-next-items.js +55 -0
  15. package/lib/requests/recommend-users-to-item.js +4 -2
  16. package/lib/requests/recommend-users-to-user.js +5 -3
  17. package/lib/requests/search-items.js +8 -3
  18. package/lib/requests/update-more-items.js +53 -0
  19. package/package.json +2 -3
  20. package/test/add-bookmark-batch_test.js +11 -11
  21. package/test/add-bookmark-test.js +24 -12
  22. package/test/add-cart-addition-batch_test.js +11 -11
  23. package/test/add-cart-addition-test.js +24 -12
  24. package/test/add-detail-view-batch_test.js +11 -11
  25. package/test/add-detail-view-test.js +24 -12
  26. package/test/add-group-batch_test.js +8 -8
  27. package/test/add-group-callback_test.js +1 -1
  28. package/test/add-group-test.js +13 -7
  29. package/test/add-item-batch_test.js +8 -8
  30. package/test/add-item-callback_test.js +1 -1
  31. package/test/add-item-property-batch_test.js +8 -8
  32. package/test/add-item-property-test.js +12 -6
  33. package/test/add-item-test.js +13 -7
  34. package/test/add-purchase-batch_test.js +11 -11
  35. package/test/add-purchase-test.js +24 -12
  36. package/test/add-rating-batch_test.js +11 -11
  37. package/test/add-rating-test.js +30 -15
  38. package/test/add-search-synonym-batch_test.js +37 -0
  39. package/test/add-search-synonym-callback_test.js +47 -0
  40. package/test/add-search-synonym-test.js +45 -0
  41. package/test/add-series-batch_test.js +8 -8
  42. package/test/add-series-callback_test.js +1 -1
  43. package/test/add-series-test.js +13 -7
  44. package/test/add-user-batch_test.js +8 -8
  45. package/test/add-user-callback_test.js +1 -1
  46. package/test/add-user-property-batch_test.js +8 -8
  47. package/test/add-user-property-test.js +12 -6
  48. package/test/add-user-test.js +13 -7
  49. package/test/delete-all-search-synonyms-batch_test.js +33 -0
  50. package/test/delete-all-search-synonyms-callback_test.js +35 -0
  51. package/test/delete-all-search-synonyms-test.js +31 -0
  52. package/test/delete-bookmark-batch_test.js +5 -5
  53. package/test/delete-bookmark-test.js +6 -3
  54. package/test/delete-cart-addition-batch_test.js +5 -5
  55. package/test/delete-cart-addition-test.js +6 -3
  56. package/test/delete-detail-view-batch_test.js +5 -5
  57. package/test/delete-detail-view-test.js +6 -3
  58. package/test/delete-group-batch_test.js +8 -8
  59. package/test/delete-group-callback_test.js +1 -1
  60. package/test/delete-group-test.js +19 -10
  61. package/test/delete-item-batch_test.js +8 -8
  62. package/test/delete-item-callback_test.js +1 -1
  63. package/test/delete-item-property-batch_test.js +8 -8
  64. package/test/delete-item-property-callback_test.js +1 -1
  65. package/test/delete-item-property-test.js +19 -10
  66. package/test/delete-item-test.js +19 -10
  67. package/test/delete-more-items-batch_test.js +35 -0
  68. package/test/delete-more-items-callback_test.js +37 -0
  69. package/test/delete-more-items-test.js +33 -0
  70. package/test/delete-purchase-batch_test.js +5 -5
  71. package/test/delete-purchase-test.js +6 -3
  72. package/test/delete-rating-batch_test.js +5 -5
  73. package/test/delete-rating-test.js +6 -3
  74. package/test/delete-search-synonym-batch_test.js +42 -0
  75. package/test/delete-search-synonym-callback_test.js +53 -0
  76. package/test/delete-search-synonym-test.js +47 -0
  77. package/test/delete-series-batch_test.js +8 -8
  78. package/test/delete-series-callback_test.js +1 -1
  79. package/test/delete-series-test.js +19 -10
  80. package/test/delete-user-batch_test.js +8 -8
  81. package/test/delete-user-callback_test.js +1 -1
  82. package/test/delete-user-property-batch_test.js +8 -8
  83. package/test/delete-user-property-callback_test.js +1 -1
  84. package/test/delete-user-property-test.js +19 -10
  85. package/test/delete-user-test.js +19 -10
  86. package/test/delete-view-portion-batch_test.js +5 -5
  87. package/test/delete-view-portion-test.js +6 -3
  88. package/test/get-item-property-info-batch_test.js +7 -7
  89. package/test/get-item-values-batch_test.js +6 -6
  90. package/test/get-user-property-info-batch_test.js +7 -7
  91. package/test/get-user-values-batch_test.js +6 -6
  92. package/test/insert-to-group-batch_test.js +30 -20
  93. package/test/insert-to-group-test.js +6 -3
  94. package/test/insert-to-series-batch_test.js +30 -20
  95. package/test/insert-to-series-test.js +6 -3
  96. package/test/list-group-items-batch_test.js +7 -7
  97. package/test/list-groups-batch_test.js +5 -5
  98. package/test/list-item-bookmarks-batch_test.js +7 -7
  99. package/test/list-item-cart-additions-batch_test.js +7 -7
  100. package/test/list-item-detail-views-batch_test.js +7 -7
  101. package/test/list-item-properties-batch_test.js +5 -5
  102. package/test/list-item-purchases-batch_test.js +7 -7
  103. package/test/list-item-ratings-batch_test.js +7 -7
  104. package/test/list-item-view-portions-batch_test.js +7 -7
  105. package/test/list-items-batch_test.js +7 -7
  106. package/test/list-search-synonyms-batch_test.js +44 -0
  107. package/test/list-search-synonyms-callback_test.js +53 -0
  108. package/test/list-search-synonyms-test.js +41 -0
  109. package/test/list-series-batch_test.js +5 -5
  110. package/test/list-series-items-batch_test.js +7 -7
  111. package/test/list-user-bookmarks-batch_test.js +7 -7
  112. package/test/list-user-cart-additions-batch_test.js +7 -7
  113. package/test/list-user-detail-views-batch_test.js +7 -7
  114. package/test/list-user-properties-batch_test.js +5 -5
  115. package/test/list-user-purchases-batch_test.js +7 -7
  116. package/test/list-user-ratings-batch_test.js +7 -7
  117. package/test/list-user-view-portions-batch_test.js +7 -7
  118. package/test/list-users-batch_test.js +7 -7
  119. package/test/merge-users-batch_test.js +19 -14
  120. package/test/merge-users-test.js +6 -3
  121. package/test/recommend-items-to-item-batch_test.js +6 -6
  122. package/test/recommend-items-to-user-batch_test.js +6 -6
  123. package/test/recommend-next-items-batch_test.js +45 -0
  124. package/test/recommend-next-items-callback_test.js +54 -0
  125. package/test/recommend-next-items-test.js +42 -0
  126. package/test/recommend-users-to-item-batch_test.js +6 -6
  127. package/test/recommend-users-to-user-batch_test.js +6 -6
  128. package/test/remove-from-group-batch_test.js +5 -5
  129. package/test/remove-from-group-test.js +6 -3
  130. package/test/remove-from-series-batch_test.js +6 -6
  131. package/test/remove-from-series-test.js +12 -6
  132. package/test/search-items-batch_test.js +9 -9
  133. package/test/set-environment.js +6 -4
  134. package/test/set-item-values-batch_test.js +9 -9
  135. package/test/set-item-values-test.js +6 -3
  136. package/test/set-user-values-batch_test.js +9 -9
  137. package/test/set-user-values-test.js +6 -3
  138. package/test/set-view-portion-batch_test.js +10 -10
  139. package/test/set-view-portion-test.js +30 -15
  140. package/test/update-more-items-batch_test.js +35 -0
  141. package/test/update-more-items-callback_test.js +37 -0
  142. package/test/update-more-items-test.js +33 -0
  143. package/lib/requests/item-based-recommendation.js +0 -187
  144. package/lib/requests/user-based-recommendation.js +0 -168
  145. package/test/item-based-recommendation-batch_test.js +0 -41
  146. package/test/item-based-recommendation-callback_test.js +0 -65
  147. package/test/item-based-recommendation-test.js +0 -53
  148. package/test/user-based-recommendation-batch_test.js +0 -41
  149. package/test/user-based-recommendation-callback_test.js +0 -65
  150. package/test/user-based-recommendation-test.js +0 -53
@@ -23,15 +23,15 @@ describe('ListItemBookmarks', function(){
23
23
  it ('works in batch', (done) => {
24
24
  let requests = [
25
25
  new rqs.ListItemBookmarks('item')
26
- ];
27
-
26
+ ];
27
+
28
28
  env.client.send(new rqs.Batch(requests))
29
29
  .then((responses) => {
30
- chai.equal(responses[0].code, 200);
31
- chai.equal(responses[0].json.length, 1);
32
- chai.deepEqual('item', responses[0].json[0]['itemId']);
33
- chai.deepEqual('user', responses[0].json[0]['userId']);
30
+ chai.equal(responses[0].code, 200);
31
+ chai.equal(responses[0].json.length, 1);
32
+ chai.deepEqual('item', responses[0].json[0]['itemId']);
33
+ chai.deepEqual('user', responses[0].json[0]['userId']);
34
34
  done();
35
35
  });
36
36
  });
37
- });
37
+ });
@@ -23,15 +23,15 @@ describe('ListItemCartAdditions', function(){
23
23
  it ('works in batch', (done) => {
24
24
  let requests = [
25
25
  new rqs.ListItemCartAdditions('item')
26
- ];
27
-
26
+ ];
27
+
28
28
  env.client.send(new rqs.Batch(requests))
29
29
  .then((responses) => {
30
- chai.equal(responses[0].code, 200);
31
- chai.equal(responses[0].json.length, 1);
32
- chai.deepEqual('item', responses[0].json[0]['itemId']);
33
- chai.deepEqual('user', responses[0].json[0]['userId']);
30
+ chai.equal(responses[0].code, 200);
31
+ chai.equal(responses[0].json.length, 1);
32
+ chai.deepEqual('item', responses[0].json[0]['itemId']);
33
+ chai.deepEqual('user', responses[0].json[0]['userId']);
34
34
  done();
35
35
  });
36
36
  });
37
- });
37
+ });
@@ -23,15 +23,15 @@ describe('ListItemDetailViews', function(){
23
23
  it ('works in batch', (done) => {
24
24
  let requests = [
25
25
  new rqs.ListItemDetailViews('item')
26
- ];
27
-
26
+ ];
27
+
28
28
  env.client.send(new rqs.Batch(requests))
29
29
  .then((responses) => {
30
- chai.equal(responses[0].code, 200);
31
- chai.equal(responses[0].json.length, 1);
32
- chai.deepEqual('item', responses[0].json[0]['itemId']);
33
- chai.deepEqual('user', responses[0].json[0]['userId']);
30
+ chai.equal(responses[0].code, 200);
31
+ chai.equal(responses[0].json.length, 1);
32
+ chai.deepEqual('item', responses[0].json[0]['itemId']);
33
+ chai.deepEqual('user', responses[0].json[0]['userId']);
34
34
  done();
35
35
  });
36
36
  });
37
- });
37
+ });
@@ -22,13 +22,13 @@ describe('ListItemProperties', function(){
22
22
  it ('works in batch', (done) => {
23
23
  let requests = [
24
24
  new rqs.ListItemProperties()
25
- ];
26
-
25
+ ];
26
+
27
27
  env.client.send(new rqs.Batch(requests))
28
28
  .then((responses) => {
29
- chai.equal(responses[0].code, 200);
30
- chai.equal(responses[0].json.length, 2);
29
+ chai.equal(responses[0].code, 200);
30
+ chai.equal(responses[0].json.length, 2);
31
31
  done();
32
32
  });
33
33
  });
34
- });
34
+ });
@@ -23,15 +23,15 @@ describe('ListItemPurchases', function(){
23
23
  it ('works in batch', (done) => {
24
24
  let requests = [
25
25
  new rqs.ListItemPurchases('item')
26
- ];
27
-
26
+ ];
27
+
28
28
  env.client.send(new rqs.Batch(requests))
29
29
  .then((responses) => {
30
- chai.equal(responses[0].code, 200);
31
- chai.equal(responses[0].json.length, 1);
32
- chai.deepEqual('item', responses[0].json[0]['itemId']);
33
- chai.deepEqual('user', responses[0].json[0]['userId']);
30
+ chai.equal(responses[0].code, 200);
31
+ chai.equal(responses[0].json.length, 1);
32
+ chai.deepEqual('item', responses[0].json[0]['itemId']);
33
+ chai.deepEqual('user', responses[0].json[0]['userId']);
34
34
  done();
35
35
  });
36
36
  });
37
- });
37
+ });
@@ -23,15 +23,15 @@ describe('ListItemRatings', function(){
23
23
  it ('works in batch', (done) => {
24
24
  let requests = [
25
25
  new rqs.ListItemRatings('item')
26
- ];
27
-
26
+ ];
27
+
28
28
  env.client.send(new rqs.Batch(requests))
29
29
  .then((responses) => {
30
- chai.equal(responses[0].code, 200);
31
- chai.equal(responses[0].json.length, 1);
32
- chai.deepEqual('item', responses[0].json[0]['itemId']);
33
- chai.deepEqual('user', responses[0].json[0]['userId']);
30
+ chai.equal(responses[0].code, 200);
31
+ chai.equal(responses[0].json.length, 1);
32
+ chai.deepEqual('item', responses[0].json[0]['itemId']);
33
+ chai.deepEqual('user', responses[0].json[0]['userId']);
34
34
  done();
35
35
  });
36
36
  });
37
- });
37
+ });
@@ -23,15 +23,15 @@ describe('ListItemViewPortions', function(){
23
23
  it ('works in batch', (done) => {
24
24
  let requests = [
25
25
  new rqs.ListItemViewPortions('item')
26
- ];
27
-
26
+ ];
27
+
28
28
  env.client.send(new rqs.Batch(requests))
29
29
  .then((responses) => {
30
- chai.equal(responses[0].code, 200);
31
- chai.equal(responses[0].json.length, 1);
32
- chai.deepEqual('item', responses[0].json[0]['itemId']);
33
- chai.deepEqual('user', responses[0].json[0]['userId']);
30
+ chai.equal(responses[0].code, 200);
31
+ chai.equal(responses[0].json.length, 1);
32
+ chai.deepEqual('item', responses[0].json[0]['itemId']);
33
+ chai.deepEqual('user', responses[0].json[0]['userId']);
34
34
  done();
35
35
  });
36
36
  });
37
- });
37
+ });
@@ -23,15 +23,15 @@ describe('ListItems', function(){
23
23
  let requests = [
24
24
  new rqs.ListItems(),
25
25
  new rqs.ListItems()
26
- ];
27
-
26
+ ];
27
+
28
28
  env.client.send(new rqs.Batch(requests))
29
29
  .then((responses) => {
30
- chai.equal(responses[0].code, 200);
31
- chai.deepEqual(['entity_id'], responses[0].json);
32
- chai.equal(responses[1].code, 200);
33
- chai.equal(responses[1].json.length, 1);
30
+ chai.equal(responses[0].code, 200);
31
+ chai.deepEqual(['entity_id'], responses[0].json);
32
+ chai.equal(responses[1].code, 200);
33
+ chai.equal(responses[1].json.length, 1);
34
34
  done();
35
35
  });
36
36
  });
37
- });
37
+ });
@@ -0,0 +1,44 @@
1
+ /*
2
+ This file is auto-generated, do not edit
3
+ */
4
+
5
+ 'use strict'
6
+ var chai = require('chai').assert;
7
+ var recombee = require('./../index.js');
8
+ var rqs = recombee.requests;
9
+
10
+ var env = require('./set-environment.js');
11
+
12
+ describe('ListSearchSynonyms', function(){
13
+ this.timeout(150000);
14
+
15
+ before(function(done){
16
+
17
+ env.setEnvironment()
18
+ .then(()=> {
19
+ setTimeout(done, 20000);
20
+ });
21
+ });
22
+ it ('works in batch', (done) => {
23
+ env.client.send(new rqs.AddSearchSynonym('sci-fi','science fiction'),((err,res) => {
24
+ if(err) {
25
+ chai.fail();
26
+ }
27
+ else {
28
+ let requests = [
29
+ new rqs.ListSearchSynonyms(),
30
+ new rqs.ListSearchSynonyms({'count': 10,'offset': 1})
31
+ ];
32
+
33
+ env.client.send(new rqs.Batch(requests))
34
+ .then((responses) => {
35
+ chai.equal(responses[0].code, 200);
36
+ chai.equal(responses[0].json['synonyms'].length, 1);
37
+ chai.equal(responses[1].code, 200);
38
+ chai.equal(responses[1].json['synonyms'].length, 0);
39
+ done();
40
+ });
41
+ }
42
+ }));
43
+ });
44
+ });
@@ -0,0 +1,53 @@
1
+ /*
2
+ This file is auto-generated, do not edit
3
+ */
4
+
5
+ 'use strict'
6
+ var chai = require('chai').assert;
7
+ var recombee = require('./../index.js');
8
+ var rqs = recombee.requests;
9
+
10
+ var env = require('./set-environment.js');
11
+
12
+ describe('ListSearchSynonyms', function(){
13
+ this.timeout(150000);
14
+
15
+ before(function(done){
16
+
17
+ env.setEnvironment()
18
+ .then(()=> {
19
+ setTimeout(done, 20000);
20
+ });
21
+ });
22
+
23
+ it ('lists search synonyms', (done) => {
24
+ let req, req2, resp;
25
+ req2 = new rqs.AddSearchSynonym('sci-fi','science fiction');
26
+ env.client.send(req2,((err,res) => {
27
+ if(err) {
28
+ chai.fail();
29
+ }
30
+ else {
31
+ req = new rqs.ListSearchSynonyms();
32
+ env.client.send(req,((err,res) => {
33
+ if(err) {
34
+ chai.fail();
35
+ }
36
+ else {
37
+ chai.equal(res['synonyms'].length, 1);
38
+ req = new rqs.ListSearchSynonyms({'count': 10,'offset': 1});
39
+ env.client.send(req,((err,res) => {
40
+ if(err) {
41
+ chai.fail();
42
+ }
43
+ else {
44
+ chai.equal(res['synonyms'].length, 0);
45
+ done();
46
+ }
47
+ }));
48
+ }
49
+ }));
50
+ }
51
+ }));
52
+ });
53
+ });
@@ -0,0 +1,41 @@
1
+ /*
2
+ This file is auto-generated, do not edit
3
+ */
4
+
5
+ 'use strict'
6
+ var chai = require('chai').assert;
7
+ var recombee = require('./../index.js');
8
+ var rqs = recombee.requests;
9
+
10
+ var env = require('./set-environment.js');
11
+
12
+ describe('ListSearchSynonyms', function(){
13
+ this.timeout(150000);
14
+
15
+ before(function(done){
16
+
17
+ env.setEnvironment()
18
+ .then(()=> {
19
+ setTimeout(done, 20000);
20
+ });
21
+ });
22
+
23
+ it ('lists search synonyms', (done) => {
24
+ let req, req2, resp;
25
+ req2 = new rqs.AddSearchSynonym('sci-fi','science fiction');
26
+ env.client.send(req2)
27
+ .then((res) => {
28
+ req = new rqs.ListSearchSynonyms();
29
+ env.client.send(req)
30
+ .then((res) => {
31
+ chai.equal(res['synonyms'].length, 1);
32
+ req = new rqs.ListSearchSynonyms({'count': 10,'offset': 1});
33
+ env.client.send(req)
34
+ .then((res) => {
35
+ chai.equal(res['synonyms'].length, 0);
36
+ done();
37
+ });
38
+ });
39
+ });
40
+ });
41
+ });
@@ -22,13 +22,13 @@ describe('ListSeries', function(){
22
22
  it ('works in batch', (done) => {
23
23
  let requests = [
24
24
  new rqs.ListSeries()
25
- ];
26
-
25
+ ];
26
+
27
27
  env.client.send(new rqs.Batch(requests))
28
28
  .then((responses) => {
29
- chai.equal(responses[0].code, 200);
30
- chai.deepEqual(['entity_id'], responses[0].json);
29
+ chai.equal(responses[0].code, 200);
30
+ chai.deepEqual(['entity_id'], responses[0].json);
31
31
  done();
32
32
  });
33
33
  });
34
- });
34
+ });
@@ -22,15 +22,15 @@ describe('ListSeriesItems', function(){
22
22
  it ('works in batch', (done) => {
23
23
  let requests = [
24
24
  new rqs.ListSeriesItems('entity_id')
25
- ];
26
-
25
+ ];
26
+
27
27
  env.client.send(new rqs.Batch(requests))
28
28
  .then((responses) => {
29
- chai.equal(responses[0].code, 200);
30
- chai.equal(responses[0].json.length, 1);
31
- chai.deepEqual('entity_id', responses[0].json[0]['itemId']);
32
- chai.deepEqual('item', responses[0].json[0]['itemType']);
29
+ chai.equal(responses[0].code, 200);
30
+ chai.equal(responses[0].json.length, 1);
31
+ chai.deepEqual('entity_id', responses[0].json[0]['itemId']);
32
+ chai.deepEqual('item', responses[0].json[0]['itemType']);
33
33
  done();
34
34
  });
35
35
  });
36
- });
36
+ });
@@ -23,15 +23,15 @@ describe('ListUserBookmarks', function(){
23
23
  it ('works in batch', (done) => {
24
24
  let requests = [
25
25
  new rqs.ListUserBookmarks('user')
26
- ];
27
-
26
+ ];
27
+
28
28
  env.client.send(new rqs.Batch(requests))
29
29
  .then((responses) => {
30
- chai.equal(responses[0].code, 200);
31
- chai.equal(responses[0].json.length, 1);
32
- chai.deepEqual('item', responses[0].json[0]['itemId']);
33
- chai.deepEqual('user', responses[0].json[0]['userId']);
30
+ chai.equal(responses[0].code, 200);
31
+ chai.equal(responses[0].json.length, 1);
32
+ chai.deepEqual('item', responses[0].json[0]['itemId']);
33
+ chai.deepEqual('user', responses[0].json[0]['userId']);
34
34
  done();
35
35
  });
36
36
  });
37
- });
37
+ });
@@ -23,15 +23,15 @@ describe('ListUserCartAdditions', function(){
23
23
  it ('works in batch', (done) => {
24
24
  let requests = [
25
25
  new rqs.ListUserCartAdditions('user')
26
- ];
27
-
26
+ ];
27
+
28
28
  env.client.send(new rqs.Batch(requests))
29
29
  .then((responses) => {
30
- chai.equal(responses[0].code, 200);
31
- chai.equal(responses[0].json.length, 1);
32
- chai.deepEqual('item', responses[0].json[0]['itemId']);
33
- chai.deepEqual('user', responses[0].json[0]['userId']);
30
+ chai.equal(responses[0].code, 200);
31
+ chai.equal(responses[0].json.length, 1);
32
+ chai.deepEqual('item', responses[0].json[0]['itemId']);
33
+ chai.deepEqual('user', responses[0].json[0]['userId']);
34
34
  done();
35
35
  });
36
36
  });
37
- });
37
+ });
@@ -23,15 +23,15 @@ describe('ListUserDetailViews', function(){
23
23
  it ('works in batch', (done) => {
24
24
  let requests = [
25
25
  new rqs.ListUserDetailViews('user')
26
- ];
27
-
26
+ ];
27
+
28
28
  env.client.send(new rqs.Batch(requests))
29
29
  .then((responses) => {
30
- chai.equal(responses[0].code, 200);
31
- chai.equal(responses[0].json.length, 1);
32
- chai.deepEqual('item', responses[0].json[0]['itemId']);
33
- chai.deepEqual('user', responses[0].json[0]['userId']);
30
+ chai.equal(responses[0].code, 200);
31
+ chai.equal(responses[0].json.length, 1);
32
+ chai.deepEqual('item', responses[0].json[0]['itemId']);
33
+ chai.deepEqual('user', responses[0].json[0]['userId']);
34
34
  done();
35
35
  });
36
36
  });
37
- });
37
+ });
@@ -22,13 +22,13 @@ describe('ListUserProperties', function(){
22
22
  it ('works in batch', (done) => {
23
23
  let requests = [
24
24
  new rqs.ListUserProperties()
25
- ];
26
-
25
+ ];
26
+
27
27
  env.client.send(new rqs.Batch(requests))
28
28
  .then((responses) => {
29
- chai.equal(responses[0].code, 200);
30
- chai.equal(responses[0].json.length, 2);
29
+ chai.equal(responses[0].code, 200);
30
+ chai.equal(responses[0].json.length, 2);
31
31
  done();
32
32
  });
33
33
  });
34
- });
34
+ });
@@ -23,15 +23,15 @@ describe('ListUserPurchases', function(){
23
23
  it ('works in batch', (done) => {
24
24
  let requests = [
25
25
  new rqs.ListUserPurchases('user')
26
- ];
27
-
26
+ ];
27
+
28
28
  env.client.send(new rqs.Batch(requests))
29
29
  .then((responses) => {
30
- chai.equal(responses[0].code, 200);
31
- chai.equal(responses[0].json.length, 1);
32
- chai.deepEqual('item', responses[0].json[0]['itemId']);
33
- chai.deepEqual('user', responses[0].json[0]['userId']);
30
+ chai.equal(responses[0].code, 200);
31
+ chai.equal(responses[0].json.length, 1);
32
+ chai.deepEqual('item', responses[0].json[0]['itemId']);
33
+ chai.deepEqual('user', responses[0].json[0]['userId']);
34
34
  done();
35
35
  });
36
36
  });
37
- });
37
+ });
@@ -23,15 +23,15 @@ describe('ListUserRatings', function(){
23
23
  it ('works in batch', (done) => {
24
24
  let requests = [
25
25
  new rqs.ListUserRatings('user')
26
- ];
27
-
26
+ ];
27
+
28
28
  env.client.send(new rqs.Batch(requests))
29
29
  .then((responses) => {
30
- chai.equal(responses[0].code, 200);
31
- chai.equal(responses[0].json.length, 1);
32
- chai.deepEqual('item', responses[0].json[0]['itemId']);
33
- chai.deepEqual('user', responses[0].json[0]['userId']);
30
+ chai.equal(responses[0].code, 200);
31
+ chai.equal(responses[0].json.length, 1);
32
+ chai.deepEqual('item', responses[0].json[0]['itemId']);
33
+ chai.deepEqual('user', responses[0].json[0]['userId']);
34
34
  done();
35
35
  });
36
36
  });
37
- });
37
+ });
@@ -23,15 +23,15 @@ describe('ListUserViewPortions', function(){
23
23
  it ('works in batch', (done) => {
24
24
  let requests = [
25
25
  new rqs.ListUserViewPortions('user')
26
- ];
27
-
26
+ ];
27
+
28
28
  env.client.send(new rqs.Batch(requests))
29
29
  .then((responses) => {
30
- chai.equal(responses[0].code, 200);
31
- chai.equal(responses[0].json.length, 1);
32
- chai.deepEqual('item', responses[0].json[0]['itemId']);
33
- chai.deepEqual('user', responses[0].json[0]['userId']);
30
+ chai.equal(responses[0].code, 200);
31
+ chai.equal(responses[0].json.length, 1);
32
+ chai.deepEqual('item', responses[0].json[0]['itemId']);
33
+ chai.deepEqual('user', responses[0].json[0]['userId']);
34
34
  done();
35
35
  });
36
36
  });
37
- });
37
+ });
@@ -23,15 +23,15 @@ describe('ListUsers', function(){
23
23
  let requests = [
24
24
  new rqs.ListUsers(),
25
25
  new rqs.ListUsers()
26
- ];
27
-
26
+ ];
27
+
28
28
  env.client.send(new rqs.Batch(requests))
29
29
  .then((responses) => {
30
- chai.equal(responses[0].code, 200);
31
- chai.deepEqual(['entity_id'], responses[0].json);
32
- chai.equal(responses[1].code, 200);
33
- chai.equal(responses[1].json.length, 1);
30
+ chai.equal(responses[0].code, 200);
31
+ chai.deepEqual(['entity_id'], responses[0].json);
32
+ chai.equal(responses[1].code, 200);
33
+ chai.equal(responses[1].json.length, 1);
34
34
  done();
35
35
  });
36
36
  });
37
- });
37
+ });
@@ -20,18 +20,23 @@ describe('MergeUsers', function(){
20
20
  });
21
21
  });
22
22
  it ('works in batch', (done) => {
23
- let requests = [
24
- new rqs.AddUser('target'),
25
- new rqs.MergeUsers('target','entity_id'),
26
- new rqs.MergeUsers('nonex_id','entity_id')
27
- ];
28
-
29
- env.client.send(new rqs.Batch(requests))
30
- .then((responses) => {
31
- chai.equal(responses[0].code, 201);
32
- chai.equal(responses[1].code, 200);
33
- chai.equal(responses[2].code, 404);
34
- done();
35
- });
23
+ env.client.send(new rqs.AddUser('target'),((err,res) => {
24
+ if(err) {
25
+ chai.fail();
26
+ }
27
+ else {
28
+ let requests = [
29
+ new rqs.MergeUsers('target','entity_id'),
30
+ new rqs.MergeUsers('nonex_id','entity_id')
31
+ ];
32
+
33
+ env.client.send(new rqs.Batch(requests))
34
+ .then((responses) => {
35
+ chai.equal(responses[0].code, 200);
36
+ chai.equal(responses[1].code, 404);
37
+ done();
38
+ });
39
+ }
40
+ }));
36
41
  });
37
- });
42
+ });
@@ -41,9 +41,12 @@ describe('MergeUsers', function(){
41
41
  chai.fail();
42
42
  done();
43
43
  })
44
- .catch(recombee.errors.ResponseError,(err) => {
45
- chai.equal(err.statusCode, 404);
46
- done();
44
+ .catch((err) => {
45
+ if (err instanceof recombee.errors.ResponseError) {
46
+ chai.equal(err.statusCode, 404);
47
+ done();
48
+ }
49
+ throw err;
47
50
  });
48
51
  });
49
52
  });
@@ -25,14 +25,14 @@ describe('RecommendItemsToItem', function(){
25
25
  new rqs.RecommendItemsToItem('entity_id','entity_id',9),
26
26
  new rqs.RecommendItemsToItem('nonexisting','entity_id',9,{'cascadeCreate': true}),
27
27
  new rqs.RecommendItemsToItem('nonexisting2','entity_id',9,{'cascadeCreate': true,'expertSettings': {}})
28
- ];
29
-
28
+ ];
29
+
30
30
  env.client.send(new rqs.Batch(requests))
31
31
  .then((responses) => {
32
- chai.equal(responses[0].code, 200);
33
- chai.equal(responses[1].code, 200);
34
- chai.equal(responses[2].code, 200);
32
+ chai.equal(responses[0].code, 200);
33
+ chai.equal(responses[1].code, 200);
34
+ chai.equal(responses[2].code, 200);
35
35
  done();
36
36
  });
37
37
  });
38
- });
38
+ });
@@ -25,14 +25,14 @@ describe('RecommendItemsToUser', function(){
25
25
  new rqs.RecommendItemsToUser('entity_id',9),
26
26
  new rqs.RecommendItemsToUser('nonexisting',9,{'cascadeCreate': true}),
27
27
  new rqs.RecommendItemsToUser('nonexisting2',9,{'cascadeCreate': true,'expertSettings': {}})
28
- ];
29
-
28
+ ];
29
+
30
30
  env.client.send(new rqs.Batch(requests))
31
31
  .then((responses) => {
32
- chai.equal(responses[0].code, 200);
33
- chai.equal(responses[1].code, 200);
34
- chai.equal(responses[2].code, 200);
32
+ chai.equal(responses[0].code, 200);
33
+ chai.equal(responses[1].code, 200);
34
+ chai.equal(responses[2].code, 200);
35
35
  done();
36
36
  });
37
37
  });
38
- });
38
+ });