You are an expert in writing code in many different languages. Your goal is to perform code completion for the following code, keeping in mind the rest of the code and the file meta data.
    Metadata details:
    filename: mod.rs
    path of file: ./repos/sway/test/src/sdk-harness/test_projects/contract_bytecode
    
    the code of the file until where you have to start completion: use fuel_vm::fuel_tx::Contract as FuelsTxContract;
use fuels::{accounts::wallet::WalletUnlocked, prelude::*, types::Bits256};

abigen!(Contract(
    name = "ContractBytecodeTest",
    abi = "test_projects/contract_bytecod
    
async fn can_get_bytecode_root() {
    let wallet = launch_provider_and_get_wallet().await.unwrap();

    let (contract_instance, id) = get_test_contract_instance(wallet).await;

    let bytecode_root = contract_instance
        .methods()
        .get_contract_bytecode_root(ContractId::from(id.clone()))
        .with_contracts(&[&contract_instance])
        .call()
        .await
        .unwrap()
        .value;

    let contract_bytecode =
        std::fs::read("test_projects/contract_bytecode/out/release/contract_bytecode.bin").unwrap();
    let expected_bytecode_root = Bits256(*FuelsTxContract::root_from_code(contract_bytecode));

    assert_eq!(expected_bytecode_root, bytecode_root);
}