Please visit the Fuel installation guide to install the Fuel toolchain binaries and prerequisites.
forc is Sway equivalent of Rust's cargo. fuel-core is a Fuel full node implementation.
There are two main ways you can use the Fuel Rust SDK:
forc and running the tests fuels-rs crate You can create a new Sway project with
forc new <Project name>Or you can initialize a project within an existing folder with
forc init Now that we have a new project, we can add a Rust integration test using a cargo generate template.
If cargo generate is not already installed, you can install it with:
cargo install cargo-generateNote You can learn more about cargo generate by visiting its repository .
Let's generate the default test harness with the following command:
cargo generate --init fuellabs/sway templates/sway-test-rs --name <Project name> --force --force forces your --name input to retain your desired casing for the {{project-name}} placeholder in the template. Otherwise, cargo-generate automatically converts it to kebab-case. With --force, this means that both my_fuel_project and my-fuel-project are valid project names, depending on your needs.
Before running test, we need to build the Sway project with:
forc buildAfterwards, we can run the test with:
cargo testNote If you need to capture output from the tests, use one of the following commands:
cargo test -- --nocapture Add these dependencies on your Cargo.toml:
fuels = "0.66.0"Note We're using version
0.66.0of the SDK, which is the latest version at the time of this writing.
And then, in your Rust file that's going to make use of the SDK:
use fuels::prelude::*; Another way to experience the SDK is to look at the source code. The e2e/tests/ folder is full of integration tests that go through almost all aspects of the SDK.
Note Before running the tests, we need to build all the Sway test projects. The file
packages/fuels/Forc.tomlcontains a `[workspace], which members are the paths to all integration tests. To build these tests, run the following command:
forc build --release --path e2e
forccan also be used to clean and format the test projects. Check thehelpoutput for more info.
After building the projects, we can run the tests with
cargo testIf you need all targets and all features, you can run
cargo test --all-targets --all-featuresNote If you need to capture output from the tests, you can run
cargo test -- --nocaptureRead The Sway Book for more in-depth knowledge about Sway, the official smart contract language for the Fuel Virtual Machine.