Socket
Socket
Sign inDemoInstall

oriskami

Package Overview
Dependencies
Maintainers
1
Versions
13
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

oriskami - npm Package Compare versions

Comparing version 1.16.0 to 1.17.0

.npmignore

21

lib/index.js

@@ -5,6 +5,14 @@ /* Oriskami API client factory

*/
module.exports = function(token, version, resources){
var _ = require("lodash")
, Oriskami = require("./Oriskami")
module.exports = function(token, version, resources){
var tls = require("tls")
, Oriskami = require("./Oriskami")
, vNode = process.version.split(".")
, vNodeMajor0 = vNode.length && vNode[0] ? vNode[0].replace(/[^0-9]/,"") : null
, vNodeMajor = !isNaN(parseInt(vNodeMajor0)) ? parseInt(vNodeMajor0) : null
, isVNodeGT8 = vNodeMajor >= 8
// MITIGATE SSL HANDSHAKE FAILURE __________________
// https://github.com/nodejs/node/issues/16196
tls.DEFAULT_ECDH_CURVE = isVNodeGT8 ? "auto" : "prime256v1"
resources = resources || [

@@ -49,8 +57,7 @@ {"name": "Router" , "path": "router"}

var oriskami = new Oriskami(token, version, resources)
for(var i = 0; i<resources.length; i++) {
oriskami.extend(resources[i].name, resources[i].path)
}
_.each(resources, function(resource){
oriskami.extend(resource.name, resource.path)
})
return oriskami
}

@@ -1,3 +0,2 @@

var _ = require("lodash")
, Resource = require("../Resource")
var Resource = require("../Resource")
, bindingName = "Oriskami/v1 NodeBindings/"

@@ -18,2 +17,3 @@ , httpTimeout = 120000

, "resources" : resources
, "api_host" : "api.oriskami.com"
, "revokedCerts" : ""

@@ -26,6 +26,7 @@ , "headers" : {

},"request" : {
"host" : "api.oriskami.com"
, "port" : "443"
"port" : "443"
, "version" : version
, "ciphers" : "DEFAULT:!aNULL:!eNULL:!LOW:!EXPORT:!SSLv2:!MD5" }}
, "ciphers" : "DEFAULT:!aNULL:!eNULL:!LOW:!EXPORT:!SSLv2:!MD5" }
}
this._api.request.host = this._api.api_host

@@ -32,0 +33,0 @@ this.set("auth", token)

@@ -1,3 +0,11 @@

var _ = require("lodash")
, encode = encodeURIComponent
var encode = encodeURIComponent
, isFunction = function(x){ return typeof x === "function" }
, toPath = function(x){
for(var path = "?"
, keys = Object.keys(x)
, i = 0 ; i < keys.length ; i++){
path += encode(keys[i]) + "=" + encode(x[keys[i]]) + "&"
}
return path
}

@@ -22,3 +30,3 @@ /*

var data = arguments[0]
, next = _.isFunction(arguments[1]) ? arguments[1] : function(){}
, next = isFunction(arguments[1]) ? arguments[1] : function(){}

@@ -50,3 +58,3 @@ this.request.call(this, {

next = arguments[2]
path = _.reduce(_.keys(json), function(x, k){return x += encode(k) + "=" + encode(json[k]) + "&"}, "?")
path = toPath(json)
}

@@ -71,3 +79,3 @@

, data = nArgs === 3 ? arguments[1] : arguments[0]
, next = _.isFunction(arguments[idLast]) ? arguments[idLast] : function(){}
, next = isFunction(arguments[idLast]) ? arguments[idLast] : function(){}

@@ -99,3 +107,3 @@ this.request.call(this, {

next = arguments[2]
path = _.reduce(_.keys(json), function(x, k){return x += encode(k) + "=" + encode(json[k]) + "&"}, "?")
path = toPath(json)
}

@@ -116,4 +124,4 @@

var args = arguments
, parameters = !_.isFunction(args[0]) ? args[0] : {}
, next = _.isFunction(args[0]) ? args[0] : _.isFunction(args[1]) ? args[1] : function(){}
, parameters = !isFunction(args[0]) ? args[0] : {}
, next = isFunction(args[0]) ? args[0] : isFunction(args[1]) ? args[1] : function(){}

@@ -134,4 +142,4 @@ this.request.call(this, {

var args = arguments
, parameters = !_.isFunction(args[0]) ? args[0] : {}
, next = _.isFunction(args[0]) ? args[0] : _.isFunction(args[1]) ? args[1] : function(){}
, parameters = !isFunction(args[0]) ? args[0] : {}
, next = isFunction(args[0]) ? args[0] : isFunction(args[1]) ? args[1] : function(){}

@@ -138,0 +146,0 @@ this.request.call(this, {

{
"name": "oriskami",
"version": "1.16.0",
"version": "1.17.0",
"description": "API wrapper to Oriskami",

@@ -25,7 +25,8 @@ "main": "lib/index.js",

"chai": "^2.1.0",
"mocha": "^2.1.0"
"mocha": "^2.1.0",
"lodash": "^3.3.1"
},
"dependencies": {
"lodash": "^3.3.1"
"all": "0.0.0"
}
}

@@ -7,14 +7,23 @@ # Oriskami node.js bindings

The Oriskami Node.js library provides access to the Oriskami API from applications
written in the Node.js language. It includes a pre-defined set of classes for
API resources.
This library helps interact with Oriskami's API, a *risk management intelligence*
to detect and manage transactions having a risk. Oriskami works by:
1. fusioning your transaction data with external data providers;
2. applying filters like whitelists, blacklists, rules, or risk scores trained with machine learning; and
3. triggering notifications when a risk is detected (e-mail, slack, signed webhooks, etc.).
## Quick Start
For a quick start see below, otherwise here are few links:
- [**Browse product details**](https://www.oriskami.com/shop)
- [**Sign up**](https://www.oriskami.com/signup)
- [**Get an access token**](https://my.oriskami.com/)
- [**Schedule a demo**](https://www.oriskami.com/shop/schedule-demo)
- [**See the docs**](https://www.oriskami.com/docs)
Install the nodejs binding of `oriskami` from npm.
## Quick Start: Five steps
`npm install oriskami`
1. **Install** the binding:
```js
npm install --save oriskami
```
Initialize the binding with your API access token:
2. **Setup** your access token:
```js

@@ -25,120 +34,93 @@ var Oriskami = require("oriskami")

### Send event
3. **Bootstrap** your account with historical data (`EventPast`; *not* analyzed):
```js
oriskami.events.create({
oriskami.EventsPast.create({
"parameters" :{
"id": 16646,
"email": "abc@gmail.com",
"names": "M Abc",
"account_creation_time": "2017-05-17 21:50:00",
"account_id": "10000",
"account_n_fulfilled": "1",
"account_total_since_created": "49.40",
"account_total_cur": "EUR",
"invoice_time": "2017-05-17 21:55:00",
"invoice_address_country": "France",
"invoice_address_place": "75008 Paris",
"invoice_address_street1": "1 Av. des Champs-Élysées",
"invoice_name": "M ABC",
"invoice_phone1": "0123456789",
"invoice_phone2": null,
"transport_date": "2017-05-18 08:00:00",
"transport_type": "Delivery",
"transport_mode": "TNT",
"transport_weight": "9.000",
"transport_unit": "kg",
"transport_cur": "EUR",
"delivery_address_country": "France",
"delivery_address_place": "75008 Paris",
"delivery_address_street1": "1 Av. des Champs-Élysées",
"delivery_name": "M ABC",
"delivery_phone1": "0123450689",
"customer_ip_address": "1.2.3.4",
"pmeth_origin": "FRA",
"pmeth_validity": "0121",
"pmeth_brand": "MC",
"pmeth_bin": "510000",
"pmeth_3ds": "-1",
"cart_products": [ " Product ref #12345 " ],
"cart_details": [
{
"name": "Product ref #12345",
"pu": "10.00",
"n": "1",
"reimbursed": " 0",
"available": "1",
"amount": "10.00",
"cur": "EUR"
}
],
"cart_n": "15000",
"order_payment_accepted": "2017-05-17 22:00:00",
"amount_pmeth": "ABC Payment Service Provider",
"amount_discounts": 0.00,
"amount_products": 20.00,
"amount_transport": 10.00,
"amount_total": 30.00,
"amount_cur": "EUR"
"id": 16646
, "email": "abc@gmail.com"
, "names": "M Abc"
, "account_creation_time": "2017-05-17 21:50:00"
, "account_id": "10000"
, "account_n_fulfilled": "1"
, "account_total_since_created": "49.40"
, "account_total_cur": "EUR"
, "invoice_time": "2017-05-17 21:55:00"
, "invoice_address_country": "France"
, "invoice_address_place": "75008 Paris"
, "invoice_address_street1": "1 Av. des Champs-Élysées"
, "invoice_name": "M ABC"
, "invoice_phone1": "0123456789"
, "invoice_phone2": null
, "transport_date": "2017-05-18 08:00:00"
, "transport_type": "Delivery"
, "transport_mode": "TNT"
, "transport_weight": "9.000"
, "transport_unit": "kg"
, "transport_cur": "EUR"
, "delivery_address_country": "France"
, "delivery_address_place": "75008 Paris"
, "delivery_address_street1": "1 Av. des Champs-Élysées"
, "delivery_name": "M ABC"
, "delivery_phone1": "0123450689"
, "customer_ip_address": "1.2.3.4"
, "pmeth_origin": "FRA"
, "pmeth_validity": "0121"
, "pmeth_brand": "MC"
, "pmeth_bin": "510000"
, "pmeth_3ds": "-1"
, "cart_products": [ " Product ref #12345 ", " Product ref #45678 " ]
, "cart_details": [{
"name": "Product ref #12345"
, "pu": "10.00"
, "n": "1"
, "reimbursed": " 0"
, "available": "1"
, "amount": "10.00"
, "cur": "EUR"
}, {
"name": "Product ref #45678"
, "pu": "20.00"
, "n": "2"
, "reimbursed": " 0"
, "available": "1"
, "amount": "40.00"
, "cur": "EUR"
}]
, "cart_n": "15000"
, "order_payment_accepted": "2017-05-17 22:00:00"
, "amount_pmeth": "ABC Payment Service Provider"
, "amount_discounts": 0.00
, "amount_products": 20.00
, "amount_transport": 10.00
, "amount_total": 30.00
, "amount_cur": "EUR"
}
, function(err, res){
if(err){
console.log(err)
return err
}
})
}, (err, res) => /* callback */)
```
4. **Label** events for which the risk (`is_loss`) has materialized:
```js
oriskami.events.retrieve("16646", function(err, res){
if(err){
console.log(err)
return err
}
})
oriskami.EventLabel.update({
"id" : "1"
, "label": "is_loss"
, "value": "false"
}, (err, res) => /* process results */)
```
## Resources, actions, and arguments
Every resource is accessed via your `oriskami` instance and accepts an optional
callback as the last argument. In the matrix below we list the resources
(rows), the actions (columns) and the arguments (cells). The full documentation
is available at [https://oriskami.com/docs/nodejs](https://oriskami.com/docs/nodejs).
5. **Send** live `Events`:
```js
oriskami.events.create({ }, (err, res) => /* process results */)
```
Then you will get notified when a risk is detected.
## Events API: Open Beta (public preview)
| | Resource | C | R | U | D | L | Test Specs |
|--------------:| ----------------------- |:-:|:-:|:-:|:-:|:-----:|:-------:|
| **Settings** | Auth, Credentials | | | | | | |
| **Router** | Router | | [`123`](https://oriskami.com/docs/nodejs#retrieve_router) | | | | [See on github](https://github.com/oriskami/oriskami-node/blob/master/test/Resources/Router/spec.js) |
| | RouterParameter | | | [`123, {}`](https://oriskami.com/docs/nodejs#update_routerparameter) | | [`{}`](https://oriskami.com/docs/nodejs#list_routerparameter) | [See on github](https://github.com/oriskami/oriskami-node/blob/master/test/Resources/RouterParameter/spec.js) |
| | RouterData | | | [`123, {}`](https://oriskami.com/docs/nodejs#update_routerdata) | | [`{}`](https://oriskami.com/docs/nodejs#list_routerdata) | [See on github](https://github.com/oriskami/oriskami-node/blob/master/test/Resources/RouterData/spec.js) |
| | RouterDataGeocoding | | | | | [`{}`](https://oriskami.com/docs/nodejs#list_routerdatageocoding) | [See on github](https://github.com/oriskami/oriskami-node/blob/master/test/Resources/RouterDataGeocoding/spec.js) |
| | RouterDataGeoip | | | [`123, {}`](https://oriskami.com/docs/nodejs#update_routerdatageoip) | | [`{}`](https://oriskami.com/docs/nodejs#list_routerdata) | [See on github](https://github.com/oriskami/oriskami-node/blob/master/test/Resources/RouterDataGeoip/spec.js) |
| | RouterDataPhone | | | [`123, {}`](https://oriskami.com/docs/nodejs#update_routerdataphone) | | [`{}`](https://oriskami.com/docs/nodejs#list_routerdata) | [See on github](https://github.com/oriskami/oriskami-node/blob/master/test/Resources/RouterDataPhone/spec.js) |
| | RouterDataBlacklist | | | [`123, {}`](https://oriskami.com/docs/nodejs#update_routerdatablacklist) | | [`{}`](https://oriskami.com/docs/nodejs#list_routerdata) | [See on github](https://github.com/oriskami/oriskami-node/blob/master/test/Resources/RouterDataBlacklist/spec.js) |
| | RouterDataBin | | | [`123, {}`](https://oriskami.com/docs/nodejs#update_routerdatabin) | | [`{}`](https://oriskami.com/docs/nodejs#list_routerdata) | [See on github](https://github.com/oriskami/oriskami-node/blob/master/test/Resources/RouterDataBin/spec.js) |
| | RouterDataFeature | | | | | [`{}`](https://oriskami.com/docs/nodejs#list_routerdatafeature) | [See on github](https://github.com/oriskami/oriskami-node/blob/master/test/Resources/RouterDataFeature/spec.js) |
| | RouterFlow | [`{}`](https://oriskami.com/docs/nodejs#create_routerflow) | | [`123, {}`](https://oriskami.com/docs/nodejs#update_routerflow) | [`{}`](https://oriskami.com/docs/nodejs#delete_routerflow) | [`{}`](https://oriskami.com/docs/nodejs#list_routerflow) | [See on github](https://github.com/oriskami/oriskami-node/blob/master/test/Resources/RouterFlow/spec.js)|
| | RouterBackup | [`{}`](https://oriskami.com/docs/nodejs#create_routerbackup) | [`{}`](https://oriskami.com/docs/nodejs#retrieve_routerbackup) | | [`{}`](https://oriskami.com/docs/nodejs#delete_routerbackup) | [`{}`](https://oriskami.com/docs/nodejs#list_routerbackup) | [See on github](https://github.com/oriskami/oriskami-node/blob/master/test/Resources/RouterBackup/spec.js)|
| | RouterTest | | - | | | - | - |
| **Event data**| Event | [`{}`](https://oriskami.com/docs/nodejs#create_event)| [`123`](https://oriskami.com/docs/nodejs#retrieve_event) | [`123, {}`](https://oriskami.com/docs/nodejs#update_event) | [`123`](https://oriskami.com/docs/nodejs#delete_event) | [`{}`](https://oriskami.com/docs/nodejs#list_event) | [See on github](https://github.com/oriskami/oriskami-node/blob/master/test/Resources/Event/spec.js) |
| | EventPast | [`{}`](https://oriskami.com/docs/nodejs#create_eventpast)| | | | [`{}`](https://oriskami.com/docs/nodejs#list_eventpast) | [See on github](https://github.com/oriskami/oriskami-node/blob/master/test/Resources/EventPast/spec.js) |
| | EventNotification | | [`123`](https://oriskami.com/docs/nodejs#retrieve_eventnotification) | | | [`{}`](https://oriskami.com/docs/nodejs#list_eventnotification) | [See on github](https://github.com/oriskami/oriskami-node/blob/master/test/Resources/EventNotification/spec.js)|
| | EventLabel | | [`123`](https://oriskami.com/docs/nodejs#retrieve_eventlabel) | [`123, {}`](https://oriskami.com/docs/nodejs#update_eventlabel) | [`123`](https://oriskami.com/docs/nodejs#delete_eventlabel) | [`{}`](https://oriskami.com/docs/nodejs#list_eventlabel) | [See on github](https://github.com/oriskami/oriskami-node/blob/master/test/Resources/EventLabel/spec.js)|
| | EventLastId | | | | | [`{}`](https://oriskami.com/docs/nodejs#list_eventlastid) | [See on github](https://github.com/oriskami/oriskami-node/blob/master/test/Resources/EventLastId/spec.js)|
| | EventLabel | | [`123`](https://oriskami.com/docs/nodejs#retrieve_eventlabel) | [`123, {}`](https://oriskami.com/docs/nodejs#update_eventlabel) | [`123`](https://oriskami.com/docs/nodejs#delete_eventlabel) | [`{}`](https://oriskami.com/docs/nodejs#list_eventlabel) | [See on github](https://github.com/oriskami/oriskami-node/blob/master/test/Resources/EventLabel/spec.js)|
| | EventQueue | | [`123`](https://oriskami.com/docs/nodejs#retrieve_eventqueue) | [`123, {}`](https://oriskami.com/docs/nodejs#update_eventqueue) | [`123`](https://oriskami.com/docs/nodejs#delete_eventqueue) | [`{}`](https://oriskami.com/docs/nodejs#list_eventqueue) | [See on github](https://github.com/oriskami/oriskami-node/blob/master/test/Resources/EventQueue/spec.js)|
| | EventReview | | [`123`](https://oriskami.com/docs/nodejs#retrieve_eventreview) | [`123, {}`](https://oriskami.com/docs/nodejs#update_eventreview) | [`123`](https://oriskami.com/docs/nodejs#delete_eventreview) | [`{}`](https://oriskami.com/docs/nodejs#list_eventreview) | [See on github](https://github.com/oriskami/oriskami-node/blob/master/test/Resources/EventReview/spec.js)|
| **Flow filters** | Filter | | | [`123, {}`](https://oriskami.com/docs/nodejs#update_filter) | | [`{}`](https://oriskami.com/docs/nodejs#list_filter) | [See on github](https://github.com/oriskami/oriskami-node/blob/master/test/Resources/Filter/spec.js)|
| | FilterWhitelist | [`{}`](https://oriskami.com/docs/nodejs#create_filterwhitelist)| | [`123, {}`](https://oriskami.com/docs/nodejs#update_filterwhitelist) | [`123`](https://oriskami.com/docs/nodejs#delete_filterwhitelist) | [`{}`](https://oriskami.com/docs/nodejs#list_filterwhitelist) | [See on github](https://github.com/oriskami/oriskami-node/blob/master/test/Resources/FilterWhitelist/spec.js)|
| | FilterBlacklist | | | [`123, {}`](https://oriskami.com/docs/nodejs#update_filterblacklist) | | [`{}`](https://oriskami.com/docs/nodejs#list_filterblacklist) | [See on github](https://github.com/oriskami/oriskami-node/blob/master/test/Resources/FilterBlacklist/spec.js)|
| | FilterRulesCustom | [`{}`](https://oriskami.com/docs/nodejs#create_filterrulescustom)| | [`123, {}`](https://oriskami.com/docs/nodejs#update_filterrulescustom)| [`123`](https://oriskami.com/docs/nodejs#delete_filterrulescustom) | [`{}`](https://oriskami.com/docs/nodejs#list_filterrulescustom) | [See on github](https://github.com/oriskami/oriskami-node/blob/master/test/Resources/FilterRulesCustom/spec.js)|
| | FilterRulesBase | | | [`123, {}`](https://oriskami.com/docs/nodejs#update_filterrulesbase) | | [`{}`](https://oriskami.com/docs/nodejs#list_filterrulesbase) | [See on github](https://github.com/oriskami/oriskami-node/blob/master/test/Resources/FilterRulesBase/spec.js)|
| | FilterRulesAI | | | [`123, {}`](https://oriskami.com/docs/nodejs#update_filterrulesai) | [`123`](https://oriskami.com/docs/nodejs#delete_filterrulesai) | [`{}`](https://oriskami.com/docs/nodejs#list_filterrulesai) | [See on github](https://github.com/oriskami/oriskami-node/blob/master/test/Resources/FilterRulesAI/spec.js)|
| | FilterScoringsDedicated | | | [`123, {}`](https://oriskami.com/docs/nodejs#update_filterscoringsdedicated) | | [`{}`](https://oriskami.com/docs/nodejs#list_filterscoringsdedicated) | [See on github](https://github.com/oriskami/oriskami-node/blob/master/test/Resources/FilterScoringsDedicated/spec.js)|
| **Flow notifiers** | Notifier | | | [`123, {}`](https://oriskami.com/docs/nodejs#update_notifier) | | [`{}`](https://oriskami.com/docs/nodejs#list_notifier) | [See on github](https://github.com/oriskami/oriskami-node/blob/master/test/Resources/Notifier/spec.js)|
| | NotifierEmail | [`{}`](https://oriskami.com/docs/nodejs#create_notifieremail)| | [`123, {}`](https://oriskami.com/docs/nodejs#update_notifieremail) | [`123`](https://oriskami.com/docs/nodejs#delete_notifieremail) | [`{}`](https://oriskami.com/docs/nodejs#list_notifieremail) | [See on github](https://github.com/oriskami/oriskami-node/blob/master/test/Resources/NotifierEmail/spec.js)|
| | NotifierSms | [`{}`](https://oriskami.com/docs/nodejs#create_notifiersms)| | [`123, {}`](https://oriskami.com/docs/nodejs#update_notifiersms) | [`123`](https://oriskami.com/docs/nodejs#delete_notifiersms) | [`{}`](https://oriskami.com/docs/nodejs#list_notifiersms) | [See on github](https://github.com/oriskami/oriskami-node/blob/master/test/Resources/NotifierSms/spec.js)|
| | NotifierSlack | [`{}`](https://oriskami.com/docs/nodejs#create_notifierslack)| | [`123, {}`](https://oriskami.com/docs/nodejs#update_notifierslack) | [`123`](https://oriskami.com/docs/nodejs#delete_notifierslack) | [`{}`](https://oriskami.com/docs/nodejs#list_notifierslack) | [See on github](https://github.com/oriskami/oriskami-node/blob/master/test/Resources/NotifierSlack/spec.js)|
| | NotifierWebhook | [`{}`](https://oriskami.com/docs/nodejs#create_notifierwebhook)| | [`123, {}`](https://oriskami.com/docs/nodejs#update_notifierwebhook) | [`123`](https://oriskami.com/docs/nodejs#delete_notifierwebhook) | [`{}`](https://oriskami.com/docs/nodejs#list_notifierwebhook) | [See on github](https://github.com/oriskami/oriskami-node/blob/master/test/Resources/NotifierWebhook/spec.js)|
| | NotifierECommerce | | | [`123, {}`](https://oriskami.com/docs/nodejs#update_notifierecommerce) | | [`{}`](https://oriskami.com/docs/nodejs#list_notifierecommerce) | [See on github](https://github.com/oriskami/oriskami-node/blob/master/test/Resources/NotifierECommerce/spec.js)|
+ *C*: Create

@@ -152,4 +134,14 @@ + *R*: Retrieve

## Filter parameters
## Code snippets and filter parameters
A few code snippets:
| Action | Code snippet |
|:------------|:-----|
| 1. Change token | `oriskami.set("auth", "your-api-token")` |
| 2. Add new `resource` | `oriskami.extend("resourceName", "resourcePath")` |
| 3. Change timeout | `oriskami.set("timeout", 20000) // in ms` |
Filters available for most resources (`list`).
| Filter | Default | Example | Description |

@@ -163,21 +155,2 @@ | ------------- |:-------:|:--------------------|:------------------------------|

## Configuration
Extend `this` `oriskami` instance with a new resource whose accessibility is
controlled by access rights.
```js
oriskami.extend("resourceName", "resourcePath") // extend with
```
Change API access token dynamically:
```js
oriskami.set("auth", "your-api-token")
```
Define timeout of the binding:
```js
oriskami.set("timeout", 20000) // in ms`, node's default is `120000ms`
```
## Development

@@ -198,4 +171,3 @@

- Inspired from [stripe-node](https://github.com/stripe/stripe-node).
- Developed and maintained by Fabrice Colas for [Oriskami](https://www.oriskami.com).

@@ -5,2 +5,8 @@ var fs = require("fs")

// _________________________________________________________________________
// 2018-06-05: routines:SSL23_GET_SERVER_HELLO:sslv3 alert handshake failure
// https://github.com/nodejs/node/issues/16196
require("tls").DEFAULT_ECDH_CURVE = "auto"
// _________________________________________________________________________
module.exports = require("../lib")(process.env["ORISKAMI_TEST_TOKEN_NODEJS_1"], apiVersion)
var _ = require("lodash")
, expect = require("chai").expect
, oriskami = require("../../oriskami")
, oriskami = require("../../oriskami")
, examples = require("../../data/Event")

@@ -29,5 +29,13 @@ , jsons = _.map(examples, function(x){return {"id": x.id, "parameters": x}})

describe("Methods", function(){
before(function(done){
var defaultId = 0
oriskami["RouterData"].update(defaultId, {"is_active": "true"}, function(err, res){
if(err){ console.log(err, res) ; done(new Error("Did not update")) }
done()
})
})
var json = jsons[0]
, idResource
it("Should create and return a single resource", function(done){
it("Should create and return a resource", function(done){
oriskami["Event"].create(json, function(err, res){

@@ -47,19 +55,2 @@ if(err){

it("Should create and return several resources", function(done){
var nExamples = examples.length
oriskami["Event"].create(jsons, function(err, res){
if(err){
console.log(err, res)
done(err)
} else if(!!res.data && res.data.length === nExamples){
idResource = res.data[0].id
done()
} else {
console.log("Expected ", nExamples, " Returned ", res.data.length)
done((new Error("Did not return the several resources")))
}
})
})
it("Should retrieve via its id the created resource", function(done){

@@ -125,8 +116,10 @@ oriskami["Event"].retrieve(idResource, function(err, res){

before(function(done){
oriskami["Event"].create(jsons, function(err, res){
if(err) {
console.log(err)
return done(err)
}
done()
oriskami["Event"].create(jsons[0], function(err, res){
if(err) return done(err)
oriskami["Event"].create(jsons[1], function(err, res){
if(err) return done(err)
oriskami["Event"].create(jsons[2], function(err, res){
done(err)
})
})
})

@@ -133,0 +126,0 @@ })

var _ = require("lodash")
, expect = require("chai").expect
, oriskami = require("../../oriskami")
, oriskami = require("../../oriskami")
, examples = require("../../data/Event")

@@ -9,3 +9,3 @@ , jsons = _.map(examples, function(x){return {"id": x.id, "parameters": x}})

describe("Event", function(){
describe("EventPast", function(){
describe("Properties", function(){

@@ -45,15 +45,53 @@ it("Should have a name and path attribute", function() {

it("Should create and return several resources", function(done){
var nExamples = examples.length
it("Should retrieve via its id the created resource", function(done){
oriskami["EventPast"].retrieve(idResource, function(err, res){
var isStatusOk = res.statusCode >= 200 && res.statusCode <= 204
if(err){
console.log(err, res)
done(err)
} else if(res.data.length === 1 && res.data[0].id === idResource){
done()
} else {
console.log("Expected ", idResource, " Returned ", res.data[0].id)
done((new Error("Did not return the resource with id = "+idResource)))
}
})
})
oriskami["EventPast"].create(jsons, function(err, res){
it("Should update the created resource", function(done){
var newEmail = "abc@gmail.com"
oriskami["EventPast"].update(idResource, {
"id" : jsons[1].id
, "parameters": {"email": newEmail}
}, function(err, res){
if(err){
console.log(err, res)
done(err)
} else if(!!res.data && res.data.length === nExamples){
idResource = res.data[0].id
} else if(res.data.length === 1){
if(res.data[0].parameters.email !== newEmail){
done(new Error("Updated resource is not equal to submitted resource"))
console.log(err, sentData, newData)
}
done()
} else if(res.data.length !== 1){
console.log("Data:", res.data)
done(new Error("Data length !== 1 when updating"))
}
})
})
it("Should delete the created resource", function(done){
oriskami["EventPast"].del(idResource, function(err, res){
if(!err && res.data.length === 1){
oriskami["EventPast"].retrieve(idResource, function(err, res){
if(err || res.data.length > 0){
console.log(err, res)
done((new Error("Should have deleted resource id = "+idResource)))
}
done()
})
} else {
console.log(err, res)
done((new Error("Did not return an id")))
done((new Error("Did not return the deleted resource with id = "+idResource)))
}

@@ -60,0 +98,0 @@ })

var _ = require("lodash")
, expect = require("chai").expect
, oriskami = require("../../oriskami")
, oriskami = require("../../oriskami")
, examples = require("../../data/Event")

@@ -36,2 +36,14 @@ , jsons = _.map(examples, function(x){return {"id": x.id, "parameters": x}})

before(function(done){
oriskami["Event"].create(jsons[0], function(err, res){
if(err) return done(err)
oriskami["Event"].create(jsons[1], function(err, res){
if(err) return done(err)
oriskami["Event"].create(jsons[2], function(err, res){
done(err)
})
})
})
})
it("Should retrieve", function(done){

@@ -87,19 +99,27 @@ oriskami["EventQueue"].retrieve(idResource, function(err, res){

it("Should list", function(done){
oriskami["EventQueue"].list(function(err, res){
if(err){
it("Should create one and list", function(done){
oriskami["EventQueue"].update(idResource
, {"id": idResource, "active": "rules_base"}
, function(err, res){
if(err) {
console.log(err, res)
done(new Error("Should have no error"))
} else if(res.data.length !== 1){
console.log(res)
done(new Error("Should return only one element for this dataset"))
} else if(!_.contains(_.keys(res.data[0]), "queue")){
console.log(res)
done(new Error("Should have an attribute named 'queue' in 'data'"))
} else if(!_.contains(_.keys(res), "summary")){
console.log(res)
done(new Error("Should have an attribute named 'summary'"))
} else {
done()
done(new Error("Did not update"))
}
oriskami["EventQueue"].list(function(err, res){
if(err){
console.log(err, res)
done(new Error("Should have no error"))
} else if(res.data.length !== 1){
console.log(res)
done(new Error("Should return only one element for this dataset"))
} else if(!_.contains(_.keys(res.data[0]), "queue")){
console.log(res)
done(new Error("Should have an attribute named 'queue' in 'data'"))
} else if(!_.contains(_.keys(res), "summary")){
console.log(res)
done(new Error("Should have an attribute named 'summary'"))
} else {
done()
}
})
})

@@ -106,0 +126,0 @@ })

@@ -134,16 +134,26 @@ var _ = require("lodash")

xit("Should list", function(done){
var reviewId = 0
, reviewerId= "124"
oriskami.set("timeout", 20000)
oriskami["EventReview"].list(function(err, res){
if(!err && res.data.length > 0 && _.contains(_.keys(res.data[0]), "message")) {
// cleanup
_.each(res.data, function(eventReview){
if(eventReview.id === idResource){
var nReviews = res.data.length
oriskami["EventReview"].del(idResource, {"review_id": nReviews - 1}, done)
}
})
} else {
oriskami["EventReview"].update(idResource
, {"review_id": reviewId, "reviewer_id": reviewerId}
, function(err, res){
if(err){
console.log(res)
done(new Error("Should have only one returned element"))
return done(new Error("Should have only one returned element"))
}
oriskami["EventReview"].list(function(err, res){
if(!err && res.data.length > 0 && _.contains(_.keys(res.data[0]), "message")) {
// cleanup
_.each(res.data, function(eventReview){
if(eventReview.id === idResource){
var nReviews = res.data.length
oriskami["EventReview"].del(idResource, {"review_id": nReviews - 1}, done)
}
})
} else {
console.log(res)
done(new Error("Should have only one returned element"))
}
})
})

@@ -150,0 +160,0 @@ })

@@ -29,3 +29,9 @@ var _ = require("lodash")

it("Should list", function(done){
oriskami["FilterScoringsDedicated"].list(done)
oriskami["FilterScoringsDedicated"].list(function(err, res){
if(err){
console.log(err)
return done(new Error("Failed to list filter scorings dedicated"))
}
done()
})
})

@@ -38,10 +44,34 @@

, "features" : "all"
}, done)
}, function(err, res) {
if(err) {
console.log(err)
return done(new Error("Failed to create scoring"))
}
done()
})
})
it("Should retrieve", function(done){
oriskami["FilterScoringsDedicated"].retrieve(0, done)
oriskami["FilterScoringsDedicated"].create({
"query_target" : "sample:100"
, "query_base" : "fr"
, "features" : "all"
}, function(err, res0) {
if(err){
console.log(err)
return done(new Error("Failed to create / retrieve score"))
}
var expectedScoreId = res0.model_id
oriskami["FilterScoringsDedicated"].retrieve(res0.model_id, function(err, res1) {
if(err){
console.log(err)
console.log("Expected score id", expectedScoreId)
return done(new Error("Failed to retrieve the created score"))
}
done()
})
})
})
it("Should update status", function(done){
xit("Should update status", function(done){
oriskami["FilterScoringsDedicated"].create({

@@ -48,0 +78,0 @@ "is_active": "false"

@@ -31,5 +31,13 @@ var _ = require("lodash")

oriskami["RouterBackup"].create({"name": now}, function(err, res){
if(err){ console.log(err, res); done(new Error("Did not create")) }
if(err){
console.log(err, res)
done(new Error("Did not create"))
}
oriskami["RouterBackup"].list(function(err, res){
if(err){ done(new Error("Did not list")) }
if(err){
console.log(err, res)
done(new Error("Did not list"))
}
var backups = res.data

@@ -45,3 +53,6 @@ , backupId

oriskami["RouterBackup"].del(backupId, function(err, res){
if(err){ return done(new Error("Did not delete")) }
if(err){
console.log(err, res)
return done(new Error("Did not delete"))
}
done()

@@ -48,0 +59,0 @@ })

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc