Android-cuttlefish cvd tool
Classes | Protected Types | Protected Member Functions | Private Member Functions | Private Attributes | List of all members
cuttlefish::selector::CvdInstanceDatabaseTest Class Reference

#include <instance_database_helper.h>

Inheritance diagram for cuttlefish::selector::CvdInstanceDatabaseTest:
Inheritance graph
[legend]
Collaboration diagram for cuttlefish::selector::CvdInstanceDatabaseTest:
Collaboration graph
[legend]

Classes

struct  SetupError
 

Protected Types

enum class  ErrorCode : std::int32_t { kOk , kFileError , kInstanceDabaseError }
 

Protected Member Functions

 CvdInstanceDatabaseTest ()
 
 ~CvdInstanceDatabaseTest ()
 
bool SetUpOk () const
 
const std::string & Workspace () const
 
const std::string & HostArtifactsPath () const
 
bool AddGroup (const std::string &base_name, const std::vector< cvd::Instance > &instances)
 
InstanceDatabaseGetDb ()
 
const SetupErrorError () const
 

Private Member Functions

void ClearWorkspace ()
 
bool InitWorkspace ()
 
bool InitMockAndroidHostOut ()
 
void SetErrorCode (ErrorCode error_code, const std::string &msg)
 

Private Attributes

std::string android_artifacts_path_
 
std::string workspace_dir_
 
SetupError error_
 
std::string db_backing_path_
 
int db_backing_fd_
 
InstanceDatabase db_
 

Detailed Description

Creates n mock HOME directories, one per group. Also, creates 1 mock ANDROID_HOST_OUT with a mock launcher file.

The test suite is to assess InstanceDatabase APIs such as adding groups, adding instances to the groups, etc. The thing is that the InstanceDatabase APIs will check if HOME and/or ANDROID_HOST_OUT are directories. Also, for ANDROID_HOST_OUT, as a bare minimum validity check, it will see if there is a launcher file under the bin directory of it.

Thus, the mock environment should prepare an actual directories with a mock launcher file(s). In case the test runs/tests in the suite run in parallel, we give each test run a unique directory, and that's why all mock homes are under a temp directory created by mkdtemp()

Member Enumeration Documentation

◆ ErrorCode

enum class cuttlefish::selector::CvdInstanceDatabaseTest::ErrorCode : std::int32_t
strongprotected
Enumerator
kOk 
kFileError 
kInstanceDabaseError 

Constructor & Destructor Documentation

◆ CvdInstanceDatabaseTest()

cuttlefish::selector::CvdInstanceDatabaseTest::CvdInstanceDatabaseTest ( )
protected

◆ ~CvdInstanceDatabaseTest()

cuttlefish::selector::CvdInstanceDatabaseTest::~CvdInstanceDatabaseTest ( )
protected

Member Function Documentation

◆ AddGroup()

bool cuttlefish::selector::CvdInstanceDatabaseTest::AddGroup ( const std::string &  base_name,
const std::vector< cvd::Instance > &  instances 
)
protected

◆ ClearWorkspace()

void cuttlefish::selector::CvdInstanceDatabaseTest::ClearWorkspace ( )
private

◆ Error()

const SetupError & cuttlefish::selector::CvdInstanceDatabaseTest::Error ( ) const
inlineprotected

◆ GetDb()

InstanceDatabase & cuttlefish::selector::CvdInstanceDatabaseTest::GetDb ( )
inlineprotected

◆ HostArtifactsPath()

const std::string & cuttlefish::selector::CvdInstanceDatabaseTest::HostArtifactsPath ( ) const
inlineprotected

◆ InitMockAndroidHostOut()

bool cuttlefish::selector::CvdInstanceDatabaseTest::InitMockAndroidHostOut ( )
private

◆ InitWorkspace()

bool cuttlefish::selector::CvdInstanceDatabaseTest::InitWorkspace ( )
private

◆ SetErrorCode()

void cuttlefish::selector::CvdInstanceDatabaseTest::SetErrorCode ( ErrorCode  error_code,
const std::string &  msg 
)
private

◆ SetUpOk()

bool cuttlefish::selector::CvdInstanceDatabaseTest::SetUpOk ( ) const
inlineprotected

◆ Workspace()

const std::string & cuttlefish::selector::CvdInstanceDatabaseTest::Workspace ( ) const
inlineprotected

Member Data Documentation

◆ android_artifacts_path_

std::string cuttlefish::selector::CvdInstanceDatabaseTest::android_artifacts_path_
private

◆ db_

InstanceDatabase cuttlefish::selector::CvdInstanceDatabaseTest::db_
private

◆ db_backing_fd_

int cuttlefish::selector::CvdInstanceDatabaseTest::db_backing_fd_
private

◆ db_backing_path_

std::string cuttlefish::selector::CvdInstanceDatabaseTest::db_backing_path_
private

◆ error_

SetupError cuttlefish::selector::CvdInstanceDatabaseTest::error_
private

◆ workspace_dir_

std::string cuttlefish::selector::CvdInstanceDatabaseTest::workspace_dir_
private

The documentation for this class was generated from the following files: