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: variables.rs
    path of file: ./repos/solang/tests/polkadot_tests
    
    the code of the file until where you have to start completion: // SPDX-License-Identifier: Apache-2.0

use crate::build_solidity;
use parity_scale_codec::Encode;

#[test]
fn global_constants() {
    // test that error is allowed as a variable name/contract name
    let mut runtime = build_solidity(
        r##"
        int32 constant error = 102 + 104;
        contract a {
      
    
fn ext_fn_call_is_reading_variable() {
    let mut runtime = build_solidity(
        r##"contract C {
            function ext_func_call(uint32 arg) public payable returns (uint32) {
                A a = new A();
                function(uint32) external returns (uint32) func = a.a;
                return func(arg);
            }
        }

        contract A {
            function a(uint32 arg) public pure returns (uint32) {
                return arg;
            }
        }"##,
    );

    runtime.set_transferred_value(1000);
    runtime.function("ext_func_call", 0xdeadbeefu32.encode());
    assert_eq!(runtime.output(), 0xdeadbeefu32.encode())
}