1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
|
// file : libbuild2/test/operation.cxx -*- C++ -*-
// copyright : Copyright (c) 2014-2019 Code Synthesis Ltd
// license : MIT; see accompanying LICENSE file
#include <libbuild2/test/operation.hxx>
#include <libbuild2/variable.hxx>
using namespace std;
using namespace butl;
namespace build2
{
namespace test
{
static operation_id
test_pre (const values& params, meta_operation_id mo, const location& l)
{
if (!params.empty ())
fail (l) << "unexpected parameters for operation test";
// Run update as a pre-operation, unless we are disfiguring.
//
return mo != disfigure_id ? update_id : 0;
}
const operation_info op_test {
test_id,
0,
"test",
"test",
"testing",
"tested",
"has nothing to test", // We cannot "be tested".
execution_mode::first,
1 /* concurrency */,
&test_pre,
nullptr
};
// Also the explicit update-for-test operation alias.
//
const operation_info op_update_for_test {
update_id, // Note: not update_for_test_id.
test_id,
op_update.name,
op_update.name_do,
op_update.name_doing,
op_update.name_did,
op_update.name_done,
op_update.mode,
op_update.concurrency,
op_update.pre,
op_update.post
};
}
}
|