@zondax/zemu
Advanced tools
Comparing version 0.43.0-beta.3 to 0.43.0
@@ -17,3 +17,3 @@ /** ****************************************************************************** | ||
import { type IDeviceWindow, type IStartOptions } from "./types"; | ||
export declare const DEFAULT_EMU_IMG = "zondax/builder-zemu:speculos-e737165d37d4a8c761da0aeb6f77f8869fc5dbf9"; | ||
export declare const DEFAULT_EMU_IMG = "zondax/builder-zemu:speculos-744f56b299d627ac3c0bec136f1e1a21c744450c"; | ||
export declare const DEFAULT_MODEL = "nanos"; | ||
@@ -20,0 +20,0 @@ export declare const DEFAULT_NANO_START_TEXT = "Ready"; |
"use strict"; | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
exports.WINDOW_STAX = exports.WINDOW_X = exports.WINDOW_S = exports.KEYS = exports.DEFAULT_START_OPTIONS = exports.DEFAULT_STAX_REJECT_KEYWORD = exports.DEFAULT_STAX_APPROVE_KEYWORD = exports.DEFAULT_NANO_REJECT_KEYWORD = exports.DEFAULT_NANO_APPROVE_KEYWORD = exports.DEFAULT_WAIT_TIMEOUT = exports.DEFAULT_METHOD_TIMEOUT = exports.KILL_TIMEOUT = exports.DEFAULT_START_TIMEOUT = exports.BASE_NAME = exports.DEFAULT_HOST = exports.DEFAULT_KEY_DELAY = exports.DEFAULT_START_DELAY = exports.DEFAULT_STAX_START_TEXT = exports.DEFAULT_NANO_START_TEXT = exports.DEFAULT_MODEL = exports.DEFAULT_EMU_IMG = void 0; | ||
exports.DEFAULT_EMU_IMG = "zondax/builder-zemu:speculos-e737165d37d4a8c761da0aeb6f77f8869fc5dbf9"; | ||
exports.DEFAULT_EMU_IMG = "zondax/builder-zemu:speculos-744f56b299d627ac3c0bec136f1e1a21c744450c"; | ||
exports.DEFAULT_MODEL = "nanos"; | ||
@@ -6,0 +6,0 @@ exports.DEFAULT_NANO_START_TEXT = "Ready"; |
@@ -22,17 +22,17 @@ /// <reference types="node" /> | ||
export default class Zemu { | ||
private startOptions; | ||
startOptions: IStartOptions; | ||
private readonly host; | ||
private transport; | ||
transport: Transport; | ||
private readonly transportProtocol; | ||
private transportPort; | ||
protected speculosApiPort: number; | ||
transportPort: number; | ||
speculosApiPort: number; | ||
private readonly desiredTransportPort?; | ||
private readonly desiredSpeculosApiPort?; | ||
private readonly emuContainer; | ||
private readonly containerName; | ||
private readonly elfPath; | ||
private readonly libElfs; | ||
readonly containerName: string; | ||
readonly elfPath: string; | ||
readonly libElfs: Record<string, string>; | ||
private grpcManager?; | ||
private mainMenuSnapshot; | ||
private initialEvents; | ||
mainMenuSnapshot: ISnapshot; | ||
initialEvents: IEvent[]; | ||
constructor(elfPath: string, libElfs?: Record<string, string>, host?: string, desiredTransportPort?: number, desiredSpeculosApiPort?: number, emuImage?: string); | ||
@@ -39,0 +39,0 @@ static LoadPng2RGB(filename: string): PNGWithMetadata; |
@@ -5,3 +5,3 @@ { | ||
"license": "Apache-2.0", | ||
"version": "0.43.0-beta.3", | ||
"version": "0.43.0", | ||
"description": "Zemu Testing Framework", | ||
@@ -35,6 +35,6 @@ "main": "./dist/index.js", | ||
"dependencies": { | ||
"@grpc/grpc-js": "^1.8.12", | ||
"@grpc/grpc-js": "^1.8.15", | ||
"@grpc/proto-loader": "^0.7.5", | ||
"@ledgerhq/hw-transport": "^6.28.1", | ||
"@ledgerhq/hw-transport-http": "^6.27.12", | ||
"@ledgerhq/hw-transport": "^6.28.4", | ||
"@ledgerhq/hw-transport-http": "^6.27.15", | ||
"axios": "^1.3.4", | ||
@@ -47,20 +47,20 @@ "axios-retry": "^3.4.0", | ||
"pngjs": "^7.0.0", | ||
"randomstring": "^1.2.3" | ||
"randomstring": "^1.3.0" | ||
}, | ||
"devDependencies": { | ||
"@types/dockerode": "^3.3.11", | ||
"@types/dockerode": "^3.3.19", | ||
"@types/fs-extra": "^11.0.1", | ||
"@types/jest": "^29.4.0", | ||
"@types/jest": "^29.5.2", | ||
"@types/node": "^18.14.6", | ||
"@types/pngjs": "^6.0.1", | ||
"@types/randomstring": "^1.1.8", | ||
"@typescript-eslint/eslint-plugin": "^5.54.1", | ||
"@typescript-eslint/parser": "^5.54.1", | ||
"@zondax/ledger-substrate": "^0.40.5", | ||
"@typescript-eslint/eslint-plugin": "^5.60.0", | ||
"@typescript-eslint/parser": "^5.60.0", | ||
"@zondax/ledger-substrate": "^0.41.0", | ||
"copyfiles": "^2.4.1", | ||
"eslint": "^8.35.0", | ||
"eslint": "^8.43.0", | ||
"eslint-config-prettier": "^8.7.0", | ||
"eslint-config-standard-with-typescript": "^34.0.0", | ||
"eslint-config-standard-with-typescript": "^35.0.0", | ||
"eslint-plugin-import": "^2.27.5", | ||
"eslint-plugin-n": "^15.6.1", | ||
"eslint-plugin-n": "^15.0.0", | ||
"eslint-plugin-promise": "^6.0.0", | ||
@@ -72,4 +72,4 @@ "jest": "^29.5.0", | ||
"ts-node": "^10.9.1", | ||
"typescript": "^5.0.2" | ||
"typescript": "5.0.4" | ||
} | ||
} |
# Zemu | ||
![zondax_light](docs/assets/zondax_light.png#gh-light-mode-only) | ||
![zondax](docs/assets/zondax_light.png) | ||
![zondax_dark](docs/assets/zondax_dark.png#gh-dark-mode-only) | ||
[![License](https://img.shields.io/badge/License-Apache%202.0-blue.svg)](https://opensource.org/licenses/Apache-2.0) | ||
@@ -19,6 +17,6 @@ [![npm version](https://badge.fury.io/js/%40zondax%2Fzemu.svg)](https://badge.fury.io/js/%40zondax%2Fzemu) | ||
Integration and end-to-end testing of Ledger Apps is a manual and time consuming process. We believe that the Ledger | ||
apps ecosystem is lacking an adequate approach with respect to testing. The Zemu Framework is our solution for this | ||
problem. Under the hood, Zemu uses Ledger's project [speculos](https://github.com/ledgerHQ/speculos). It's currently | ||
being used in every Ledger App built by Zondax, among many others (such as Ethereum one built by Ledger team). | ||
Integration and end-to-end testing of Ledger Apps is a manual and time consuming process. We believe that the Ledger apps ecosystem is | ||
lacking an adequate approach with respect to testing. The Zemu Framework is our solution for this problem. Under the hood, Zemu uses | ||
Ledger's project [speculos](https://github.com/ledgerHQ/speculos). It's currently being used in every Ledger App built by Zondax, among many | ||
others (such as Ethereum one built by Ledger team). | ||
@@ -25,0 +23,0 @@ _Zemu is an emulation and testing framework for Ledger Nano S/S+/X devices._ |
@@ -18,3 +18,3 @@ /** ****************************************************************************** | ||
export const DEFAULT_EMU_IMG = "zondax/builder-zemu:speculos-e737165d37d4a8c761da0aeb6f77f8869fc5dbf9"; | ||
export const DEFAULT_EMU_IMG = "zondax/builder-zemu:speculos-744f56b299d627ac3c0bec136f1e1a21c744450c"; | ||
@@ -21,0 +21,0 @@ export const DEFAULT_MODEL = "nanos"; |
@@ -68,9 +68,9 @@ /** ****************************************************************************** | ||
export default class Zemu { | ||
private startOptions!: IStartOptions; | ||
public startOptions!: IStartOptions; | ||
private readonly host: string; | ||
private transport!: Transport; | ||
public transport!: Transport; | ||
private readonly transportProtocol: string = "http"; | ||
private transportPort!: number; | ||
protected speculosApiPort!: number; | ||
public transportPort!: number; | ||
public speculosApiPort!: number; | ||
private readonly desiredTransportPort?: number; | ||
@@ -80,10 +80,10 @@ private readonly desiredSpeculosApiPort?: number; | ||
private readonly emuContainer: EmuContainer; | ||
private readonly containerName: string; | ||
public readonly containerName: string; | ||
private readonly elfPath: string; | ||
private readonly libElfs: Record<string, string>; | ||
public readonly elfPath: string; | ||
public readonly libElfs: Record<string, string>; | ||
private grpcManager?: GRPCRouter; | ||
private mainMenuSnapshot!: ISnapshot; | ||
private initialEvents!: IEvent[]; | ||
public mainMenuSnapshot!: ISnapshot; | ||
public initialEvents!: IEvent[]; | ||
@@ -90,0 +90,0 @@ constructor( |
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
3031789
76
43
Updated@grpc/grpc-js@^1.8.15
Updatedrandomstring@^1.3.0