brain/tests/grpc_vm_daemon_test.rs
Noor 7f332c8380
tests and fixes
test operator inspection
extensive tests on airdrop
refactor db module imports
seperated vm tests into its module
modularised report node into reusable method
fix register vm_node creates operator account in db
fix test brain message add ssh port on mock daemon while new vm
improved error handling on tests unwraping only on top level method
test utils methods accepts refs to remove clone() on top level methods
2025-05-08 15:05:41 +05:30

52 lines
1.7 KiB
Rust

use common::prepare_test_env::{
prepare_test_db, run_service_for_stream, run_service_in_background,
};
use common::test_utils::Key;
use common::vm_daemon_utils::{mock_vm_daemon, register_vm_node};
use detee_shared::vm_proto;
use detee_shared::vm_proto::brain_vm_cli_client::BrainVmCliClient;
use detee_shared::vm_proto::brain_vm_daemon_client::BrainVmDaemonClient;
mod common;
#[tokio::test]
async fn test_reg_vm_node() {
prepare_test_db().await.unwrap();
let addr = run_service_in_background().await.unwrap();
let mut client = BrainVmDaemonClient::connect(format!("http://{}", addr)).await.unwrap();
let vm_contracts =
register_vm_node(&mut client, &Key::new(), &Key::new().pubkey).await.unwrap();
assert!(vm_contracts.is_empty())
}
#[tokio::test]
async fn test_brain_message() {
env_logger::builder().filter_level(log::LevelFilter::Error).init();
prepare_test_db().await.unwrap();
let brain_channel = run_service_for_stream().await.unwrap();
let daemon_key = mock_vm_daemon(&brain_channel).await.unwrap();
let mut cli_client = BrainVmCliClient::new(brain_channel);
let cli_key = Key::new();
let req = vm_proto::NewVmReq {
admin_pubkey: cli_key.pubkey.clone(),
node_pubkey: daemon_key,
price_per_unit: 1200,
extra_ports: vec![8080, 8081],
locked_nano: 0,
..Default::default()
};
let new_vm_resp =
cli_client.new_vm(cli_key.sign_request(req).unwrap()).await.unwrap().into_inner();
assert!(new_vm_resp.error.is_empty());
assert!(new_vm_resp.uuid.len() == 40);
assert!(new_vm_resp.args.is_some());
assert!(new_vm_resp.args.unwrap().exposed_ports.len() == 3);
}