examples

package
v0.7.0-beta1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 5, 2020 License: Apache-2.0 Imports: 11 Imported by: 9

README

Emulator Examples

This package contains code samples that interact with the Flow Emulator.

Running the emulator with the Flow CLI

The emulator is bundled with the Flow CLI, a command-line interface for working with Flow.

Installation

Follow these steps to install the Flow CLI.

Starting the server

Start the emulator by running the following command in this directory:

flow emulator start -v

The -v flag enables verbose log output, which is useful for testing

Running the examples

In a separate process, run any of the example programs below. Watch the emulator logs to see transaction output.

Create Account

Create a new account on Flow.

go run ./create_account/main.go
Add Account Key

Add a key to an existing account.

go run ./add_account_key/main.go
Deploy Contract

Deploy a Cadence smart contract.

go run ./deploy_contract/main.go
Query Events

Query events emitted by transactions.

go run ./query_events/main.go
Transaction Arguments

Submit a transaction with Cadence arguments:

go run ./transaction_arguments/main.go
Transaction Signing
Single Party, Single Signature

Sign a transaction with a single account.

go run ./transaction_signing/single_party/main.go
Single Party, Multiple Signatures

Sign a transaction with a single account using multiple signatures.

go run ./transaction_signing/single_party_multisig/main.go
Multiple Parties

Sign a transaction with multiple accounts.

go run ./transaction_signing/multi_party/main.go
Multiple Parties, Multiple Signatures

Sign a transaction with multiple accounts using multiple signatures.

go run ./transaction_signing/multi_party_multisig/main.go

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func CreateAccount

func CreateAccount(flowClient *client.Client, publicKeys []*flow.AccountKey, code []byte) *flow.Account

func DeployContract

func DeployContract(flowClient *client.Client, code []byte) flow.Address

func Handle

func Handle(err error)

func RandomAccount added in v0.4.0

func RandomAccount(flowClient *client.Client) (flow.Address, *flow.AccountKey, crypto.Signer)

func RandomPrivateKey

func RandomPrivateKey() crypto.PrivateKey

RandomPrivateKey returns a randomly generated ECDSA P-256 private key.

func ReadFile

func ReadFile(path string) []byte

ReadFile reads a file from the file system.

func ServiceAccount added in v0.4.0

func ServiceAccount(flowClient *client.Client) (flow.Address, *flow.AccountKey, crypto.Signer)

func WaitForSeal

func WaitForSeal(ctx context.Context, c *client.Client, id flow.Identifier) *flow.TransactionResult

Types

This section is empty.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL