Ninja
Public Member Functions | Public Attributes | List of all members
BuildWithDepsLogTest Struct Referenceabstract

Tests of builds involving deps logs necessarily must span multiple builds. More...

Inheritance diagram for BuildWithDepsLogTest:
Inheritance graph
[legend]

Public Member Functions

void AddAssertionFailure ()
 
void AddCatRule (State *state)
 Add a "cat" rule to state. More...
 
int AssertionFailures () const
 
 BuildWithDepsLogTest ()
 
bool Check (bool condition, const char *file, int line, const char *error)
 
void Dirty (const string &path)
 
bool Failed () const
 
NodeGetNode (const string &path)
 Short way to get a Node by its path from state_. More...
 
virtual bool IsPathDead (StringPiece s) const
 Return if a given output is no longer part of the build manifest. More...
 
BuildConfig MakeConfig ()
 
void RebuildTarget (const string &target, const char *manifest, const char *log_path=NULL, const char *deps_path=NULL, State *state=NULL)
 Rebuild target in the 'working tree' (fs_). More...
 
virtual void Run ()=0
 
virtual void SetUp ()
 
virtual void TearDown ()
 

Public Attributes

void * builder_
 Shadow parent class builder_ so we don't accidentally use it. More...
 
FakeCommandRunner command_runner_
 
BuildConfig config_
 
VirtualFileSystem fs_
 
State state_
 
BuildStatus status_
 
ScopedTempDir temp_dir_
 

Detailed Description

Tests of builds involving deps logs necessarily must span multiple builds.

We reuse methods on BuildTest but not the builder_ it sets up, because we want pristine objects for each build.

Definition at line 1802 of file build_test.cc.

Constructor & Destructor Documentation

◆ BuildWithDepsLogTest()

BuildWithDepsLogTest::BuildWithDepsLogTest ( )
inline

Definition at line 1803 of file build_test.cc.

Member Function Documentation

◆ AddAssertionFailure()

void testing::Test::AddAssertionFailure ( )
inlineinherited

Definition at line 42 of file test.h.

References testing::Test::assertion_failures_.

◆ AddCatRule()

void StateTestWithBuiltinRules::AddCatRule ( State state)
inherited

Add a "cat" rule to state.

Used by some tests; it's otherwise done by the ctor to state_.

Definition at line 87 of file test.cc.

References AssertParse().

Referenced by BuildTest::RebuildTarget(), and StateTestWithBuiltinRules::StateTestWithBuiltinRules().

◆ AssertionFailures()

int testing::Test::AssertionFailures ( ) const
inlineinherited

Definition at line 41 of file test.h.

References testing::Test::assertion_failures_.

◆ Check()

bool testing::Test::Check ( bool  condition,
const char *  file,
int  line,
const char *  error 
)
inherited

Definition at line 119 of file ninja_test.cc.

References testing::Test::failed_, printer, and LinePrinter::PrintOnNewLine().

◆ Dirty()

void BuildTest::Dirty ( const string &  path)
inherited

◆ Failed()

bool testing::Test::Failed ( ) const
inlineinherited

Definition at line 40 of file test.h.

References testing::Test::failed_.

Referenced by main().

◆ GetNode()

Node * StateTestWithBuiltinRules::GetNode ( const string &  path)
inherited

Short way to get a Node by its path from state_.

Definition at line 93 of file test.cc.

References EXPECT_FALSE, State::GetNode(), and StateTestWithBuiltinRules::state_.

Referenced by BuildTest::Dirty(), and PlanTest::TestPoolWithDepthOne().

◆ IsPathDead()

virtual bool BuildTest::IsPathDead ( StringPiece  s) const
inlinevirtualinherited

Return if a given output is no longer part of the build manifest.

This is only called during recompaction and doesn't have to be fast.

Implements BuildLogUser.

Definition at line 481 of file build_test.cc.

◆ MakeConfig()

BuildConfig BuildTest::MakeConfig ( )
inlineinherited

Definition at line 493 of file build_test.cc.

References BuildConfig::QUIET, and BuildConfig::verbosity.

◆ RebuildTarget()

void BuildTest::RebuildTarget ( const string &  target,
const char *  manifest,
const char *  log_path = NULL,
const char *  deps_path = NULL,
State state = NULL 
)
inherited

Rebuild target in the 'working tree' (fs_).

State of command_runner_ and logs contents (if specified) ARE MODIFIED. Handy to check for NOOP builds, and higher-level rebuild tests.

Definition at line 507 of file build_test.cc.

References StateTestWithBuiltinRules::AddCatRule(), Builder::AddTarget(), Builder::AlreadyUpToDate(), ASSERT_EQ, ASSERT_NO_FATAL_FAILURE, ASSERT_TRUE, AssertParse(), Builder::Build(), Builder::command_runner_, BuildTest::command_runner_, FakeCommandRunner::commands_ran_, BuildTest::config_, EXPECT_TRUE, BuildTest::fs_, BuildLog::Load(), DepsLog::Load(), BuildLog::OpenForWrite(), and DepsLog::OpenForWrite().

◆ Run()

virtual void testing::Test::Run ( )
pure virtualinherited

Referenced by main().

◆ SetUp()

virtual void BuildWithDepsLogTest::SetUp ( )
inlinevirtual

Reimplemented from BuildTest.

Definition at line 1805 of file build_test.cc.

References ScopedTempDir::CreateAndEnter(), BuildTest::SetUp(), and temp_dir_.

◆ TearDown()

virtual void BuildWithDepsLogTest::TearDown ( )
inlinevirtual

Reimplemented from testing::Test.

Definition at line 1811 of file build_test.cc.

References ScopedTempDir::Cleanup(), and temp_dir_.

Member Data Documentation

◆ builder_

void* BuildWithDepsLogTest::builder_

Shadow parent class builder_ so we don't accidentally use it.

Definition at line 1818 of file build_test.cc.

◆ command_runner_

FakeCommandRunner BuildTest::command_runner_
inherited

Definition at line 500 of file build_test.cc.

Referenced by BuildTest::RebuildTarget(), and BuildTest::SetUp().

◆ config_

BuildConfig BuildTest::config_
inherited

Definition at line 499 of file build_test.cc.

Referenced by BuildDryRun::BuildDryRun(), and BuildTest::RebuildTarget().

◆ fs_

VirtualFileSystem BuildTest::fs_
inherited

Definition at line 501 of file build_test.cc.

Referenced by BuildTest::RebuildTarget(), and BuildTest::SetUp().

◆ state_

State StateTestWithBuiltinRules::state_
inherited

◆ status_

BuildStatus BuildTest::status_
inherited

Definition at line 504 of file build_test.cc.

◆ temp_dir_

ScopedTempDir BuildWithDepsLogTest::temp_dir_

Definition at line 1815 of file build_test.cc.

Referenced by SetUp(), and TearDown().


The documentation for this struct was generated from the following file: