Socket
Socket
Sign inDemoInstall

@curity/cypress-commands

Package Overview
Dependencies
0
Maintainers
5
Versions
1
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    @curity/cypress-commands

Cypress commands used to test the Curity Identity Server plugins


Version published
Weekly downloads
3
decreased by-91.43%
Maintainers
5
Install size
23.0 kB
Created
Weekly downloads
 

Changelog

Source

1.0.0 (2022-06-07)

Initial release of the commands library.

Readme

Source

Curity Cypress Commands

Cypress commands used when testing the Curity Identity Server plugins.

Installation

Install using npm, with

npm install -D @curity/cypress-commands

Usage

To use the commands in your tests:

  1. Import the registration function in your spec file with import { registerCurityCommands } from '@curity/cypress-commands.
  2. Register commands once before running any tests by calling registerCurityCommands().
  3. You can then use the commands as any other Cypress command, e.g. cy.getIDToken().

You can see the spec files in cypress/integration to check how the commands are used in Cypress tests.

Registering with a Prefix

If you happen to use other custom Cypress commands with the same names, then you can register the Curity commands with a prefix. E.g. registerCurityCommands('curity'). All command names from this package will be prefixed with the chosen string and the first letter of the original command name will be capitalized. E.g. getIDToken will become curityGetIDToken.

Note that you will not get Typescript support if you register commands with a prefix.

Available commands

  • buildAuthorizationURL
  • startAuthorization
  • decodeJWT
  • getIDToken
  • getIDTokenClaims

buildAuthorizationURL

Prepares an authorization URL object based on the passed parameters. See src/index.d.ts for the list of currently supported parameters.

Example usage

    cy.buildAuthorizationURL({baseURL: "https://idsvr.example.com", clientID: "client1"})
        .then(url => cy.visit(url.toString())).get('#login').should('exist')

startAuthorization

Visits the Authorization URL. Either the previous subject needs to be a URL or the parameters object must be passed. See src/index.d.ts for the list of currently supported parameters.

Example usage

    const parameters = { baseURL: "https://idsvr.example.com", clientID: "client1" }
    cy.buildAuthorizationURL(parameters).startAuthorization().get('#login').should('exist')
    cy.startAuthorization(parameters).get('#login').should('exist')

decodeJWT

Decodes a JWT and returns its claims in form of a map. If no parameter is passed then the previous subject is taken as the token.

Example usage

    cy.decodeJWT(token).its('sub').should('equal', 'john.doe')

getIDToken

Gets the ID token from the fragment part of the current URL.

Example usage

    cy.getIDToken().should('not.be.empty')

getIDTokenClaims

Gets the ID token from the fragment part of the current URL, decodes it and returns its claims. It's a shorthand for calling getIDToken and decodeJWT in a chain.

Example usage

    cy.getIDTokenClaims().its('sub').should('equal', 'john.doe')

FAQs

Last updated on 07 Jun 2022

Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

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

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc