How to use the frisby.Joi function in frisby

To help you get started, we’ve selected a few frisby examples, based on popular ways it is used in public projects.

Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.

github bkimminich / juice-shop / test / api / securityQuestionApiSpec.js View on Github external
const frisby = require('frisby')
const Joi = frisby.Joi
const insecurity = require('../../lib/insecurity')
const config = require('config')

const API_URL = 'http://localhost:3000/api'
const REST_URL = 'http://localhost:3000/rest'

const authHeader = { Authorization: 'Bearer ' + insecurity.authorize(), 'content-type': 'application/json' }

describe('/api/SecurityQuestions', () => {
  it('GET all security questions ', () => {
    return frisby.get(API_URL + '/SecurityQuestions')
      .expect('status', 200)
      .expect('header', 'content-type', /application\/json/)
      .expect('jsonTypes', 'data.*', {
        id: Joi.number(),
        question: Joi.string()
github bkimminich / juice-shop / test / api / complaintApiSpec.js View on Github external
const frisby = require('frisby')
const Joi = frisby.Joi
var insecurity = require('../../lib/insecurity')

const API_URL = 'http://localhost:3000/api'

const authHeader = { 'Authorization': 'Bearer ' + insecurity.authorize(), 'content-type': 'application/json' }

describe('/Complaints', function () {
  it('POST new complaint', function (done) {
    frisby.post(API_URL + '/Complaints', {
      headers: authHeader,
      body: {
        message: 'My stuff never arrived! This is outrageous!'
      }
    })
    .expect('status', 200)
    .expect('header', 'content-type', /application\/json/)
github bkimminich / juice-shop / test / api / userApiSpec.js View on Github external
const frisby = require('frisby')
const Joi = frisby.Joi
const insecurity = require('../../lib/insecurity')

const API_URL = 'http://localhost:3000/api'
const REST_URL = 'http://localhost:3000/rest'

const authHeader = { 'Authorization': 'Bearer ' + insecurity.authorize(), 'content-type': 'application/json' }
const jsonHeader = { 'content-type': 'application/json' }

describe('/api/Users', () => {
  it('GET all users is forbidden via public API', () => {
    return frisby.get(API_URL + '/Users')
      .expect('status', 401)
  })

  it('GET all users', () => {
    return frisby.get(API_URL + '/Users', { headers: authHeader })
github bkimminich / juice-shop / test / api / administrationApiSpec.js View on Github external
const frisby = require('frisby')
const Joi = frisby.Joi
const utils = require('../../lib/utils')

const REST_URL = 'http://localhost:3000/rest/admin'

describe('/rest/admin/application-version', () => {
  it('GET application version from package.json', () => {
    return frisby.get(REST_URL + '/application-version')
      .expect('status', 200)
      .expect('header', 'content-type', /application\/json/)
      .expect('json', {
        version: utils.version()
      })
  })
})

describe('/rest/admin/application-configuration', () => {
github bkimminich / juice-shop / test / api / challengeApiSpec.js View on Github external
const frisby = require('frisby')
const Joi = frisby.Joi
var insecurity = require('../../lib/insecurity')

const API_URL = 'http://localhost:3000/api'
const REST_URL = 'http://localhost:3000/rest'

var authHeader = { 'Authorization': 'Bearer ' + insecurity.authorize(), 'content-type': 'application/json' }

describe('/api/Challenges', function () {
  it('GET all challenges', function (done) {
    frisby.get(API_URL + '/Challenges')
      .expect('status', 200)
      .expect('header', 'content-type', /application\/json/)
      .expect('jsonTypes', 'data.*', {
        id: Joi.number(),
        name: Joi.string(),
        description: Joi.string(),
github bkimminich / juice-shop / test / api / recycleApiSpec.js View on Github external
const frisby = require('frisby')
const Joi = frisby.Joi
const insecurity = require('../../lib/insecurity')

const API_URL = 'http://localhost:3000/api'

const authHeader = { 'Authorization': 'Bearer ' + insecurity.authorize(), 'content-type': 'application/json' }

describe('/api/Recycles', () => {
  it('POST new recycle', () => {
    return frisby.post(API_URL + '/Recycles', {
      headers: authHeader,
      body: {
        quantity: 200,
        address: 'Bjoern Kimminich, 123 Juicy Road, Test City',
        isPickup: true,
        date: '2017-05-31'
      }
github bkimminich / juice-shop / test / api / complaintApiSpec.js View on Github external
const frisby = require('frisby')
const Joi = frisby.Joi
const insecurity = require('../../lib/insecurity')

const API_URL = 'http://localhost:3000/api'

const authHeader = { Authorization: 'Bearer ' + insecurity.authorize(), 'content-type': 'application/json' }

describe('/api/Complaints', () => {
  it('POST new complaint', () => {
    return frisby.post(API_URL + '/Complaints', {
      headers: authHeader,
      body: {
        message: 'You have no clue what https://github.com/eslint/eslint-scope/issues/39 means, do you???'
      }
    })
      .expect('status', 201)
      .expect('header', 'content-type', /application\/json/)
github bkimminich / juice-shop / test / api / loginApiSpec.js View on Github external
const frisby = require('frisby')
const Joi = frisby.Joi
const insecurity = require('../../lib/insecurity')
const config = require('config')

const API_URL = 'http://localhost:3000/api'
const REST_URL = 'http://localhost:3000/rest'

const customHeader = {
  'X-User-Email': 'ciso@' + config.get('application.domain'),
  Authorization: 'Bearer ' + insecurity.authorize(),
  'content-type': 'application/json'
}
const jsonHeader = { 'content-type': 'application/json' }

describe('/rest/user/login', () => {
  it('POST login newly created user', () => {
    return frisby.post(API_URL + '/Users', {
github bkimminich / juice-shop / test / api / 2faSpec.js View on Github external
const frisby = require('frisby')
const Joi = frisby.Joi
const insecurity = require('../../lib/insecurity')
const config = require('config')

const otplib = require('otplib')
const jwt = require('jsonwebtoken')

const REST_URL = 'http://localhost:3000/rest'
const API_URL = 'http://localhost:3000/api'

const jsonHeader = { 'content-type': 'application/json' }

async function login ({ email, password, totpSecret }) {
  const loginRes = await frisby
    .post(REST_URL + '/user/login', {
      email,
      password
github laconiajs / laconia / packages / laconia-acceptance-test / acceptance-test / acceptance.spec.js View on Github external
const frisby = require("frisby");
const uuidv4 = require("uuid/v4");
const Joi = frisby.Joi;
const DynamoDbOrderRepository = require("../src/DynamoDbOrderRepository");
const S3TotalOrderStorage = require("../src/S3TotalOrderStorage");
const { getAccountId } = require("../src/sts");
const laconiaTest = require("@laconia/test");
const WebSocket = require("ws");

const SERVERLESS_SERVICE_NAME = "laconia-acceptance";
const SERVERLESS_STAGE = process.env.NODE_VERSION || "node10";
const AWS_REGION = process.env.AWS_REGION || "eu-west-1";
const prefix = `${SERVERLESS_SERVICE_NAME}-${SERVERLESS_STAGE}`;
const name = name => `${prefix}-${name}`;
const bucketName = (name, accountId) => `${prefix}-${accountId}-${name}`;
const AWS = require("aws-sdk");
const documentClient = new AWS.DynamoDB.DocumentClient();

jest.setTimeout(10000);

frisby

Frisby.js v2.0: REST API Endpoint Testing built on Jasmine

BSD-3-Clause
Latest version published 4 years ago

Package Health Score

53 / 100
Full package analysis