小编Sag*_*gar的帖子

我在哪里可以找到GoogleTest XML Schema?

我正在尝试验证GoogleTest(gtest)XML输出文件,为此我需要gtest格式的架构/ XSD.

我在网上搜索过,找不到任何东西.似乎有很多指向JUnit架构,但是 - 据我所知 - 它们是不同的; GoogleTest XML支持标记中的value_param字段<testcase>,而JUnit则不支持.类似地,对于标签中的timestamp字段<testsuites>.

xml junit xsd xunit googletest

5
推荐指数
1
解决办法
768
查看次数

如何将参数传递给可变参数宏?

我有一个可变函数:

LogWrite(FILE * fp, int level, const char * filename, const char * function, ...)
Run Code Online (Sandbox Code Playgroud)

它应该像这样调用:

LogWrite(fp, int Level, __FILE__, __FUNCTION__, "Message: %s", message)
Run Code Online (Sandbox Code Playgroud)

但是,我想编写一个可变参数宏,以便更容易调用:

1: #define LOGWRITE_L1(...) LogWrite(file, 1, __FILE__, __FUNCTION__, ...)
or
2: #define LOGWRITE_L1(file, ...) LogWrite(file, 1, __FILE__, __FUNCTION__, ...)
Run Code Online (Sandbox Code Playgroud)

这样开发人员可以使用以下方法调用它:

LOGWRITE_L1(myfile, "Hello!");
Run Code Online (Sandbox Code Playgroud)

代替

LogWrite(myfile, 1, __FILE__, __FUNCTION__, "Hello!")
Run Code Online (Sandbox Code Playgroud)

但是,这两种方法都给我一个编译器错误.

1: expected expression before '...'
2:'file' undeclared (first use in this function)
Run Code Online (Sandbox Code Playgroud)

这可能还是我在浪费时间?我以前从未使用过变量函数,所以不确定.我的功能工作......我使用完整的声明调用它,并写入我想要的文件.

c macros function variadic-functions variadic-macros

4
推荐指数
1
解决办法
1577
查看次数

Mongo DB芹菜的工作示例

我是celery的新手,正在使用Celery运行异步任务。

  1. 我想将任务结果保存到MongoDB。
  2. 我想使用AMQP经纪人。

芹菜项目的例子并没有太大帮助。谁能给我指出一些可行的例子?

mongodb celery

4
推荐指数
2
解决办法
6940
查看次数

使用Zabbix代理监控MySQl

我无法从Zabbix默认的模板应用程序MySQL获得所有结果.错误是:

zabbix代理不支持

我已经设置zabbix_agent.conf并包含在内my.cnf.我需要配置哪些其他设置,以便Zabbix Agent监控MySQL服务器?

mysql zabbix

4
推荐指数
1
解决办法
1万
查看次数

在C++中的向量向量上使用"unique()"

我希望这不是一个重复的问题,但如果是,请随意指出我正确的方向.

我有一个vector<vector<int> >.

有可能unique()在这上面使用吗?就像是:

vector<vector<int> > myvec;
//blah blah do something to myvec
vector<vector<int> >::interator it = unique(myvec.begin(), myvec.end());
Run Code Online (Sandbox Code Playgroud)

请问范围myvec.begin()it是唯一的?

c++ algorithm stl vector unique

3
推荐指数
1
解决办法
2036
查看次数

转换为unix时间戳不正确

我有一个我写的功能(如果有一个很好的标准替代品,请告诉我......)

time_t get_unix_time(string time_str) {
    time_t loctime;
    time(&loctime);

    struct tm *given_time;
    time_str = time_str.substr(0, time_str.find_first_of('.'));

    replace(time_str.begin(), time_str.end(), ':', ',');
    replace(time_str.begin(), time_str.end(), '-', ',');
    replace(time_str.begin(), time_str.end(), '/', ',');
    replace(time_str.begin(), time_str.end(), ' ', ',');

    given_time = localtime(&loctime);
    vector<string> trecord = split_string(time_str, ',');

    given_time->tm_year = atoi(trecord.at(0).c_str()) - 1900;
    given_time->tm_mon  = atoi(trecord.at(1).c_str()) - 1;
    given_time->tm_mday = atoi(trecord.at(2).c_str());
    given_time->tm_hour = atoi(trecord.at(3).c_str());
    given_time->tm_min  = atoi(trecord.at(4).c_str());
    given_time->tm_sec  = atoi(trecord.at(5).c_str());

    return mktime(given_time);
}
Run Code Online (Sandbox Code Playgroud)

该函数的输入(time_str)格式为1970-01-01 00:00:00.0.split_string()函数将字符串time_str拆分为包含以下内容的向量:

{1970,01,01,00,00,00}

用于填充given_time结构.

我编写了一个函数来测试它,并将其完全传递给了输入(epoch的开始).但是,它给我回来的时间是21600,即1970-01-01 06:00:00,或UTC + 6 …

c c++ mktime gmt unix-timestamp

3
推荐指数
1
解决办法
2622
查看次数

在正则表达式中的字符类中使用方括号

我有一个字符串:

['A', 'B']
Run Code Online (Sandbox Code Playgroud)

我需要删除所有,[]字符。最终结果应该是

'A' 'B'
Run Code Online (Sandbox Code Playgroud)

以下是我尝试过的所有内容以及结果的列表

我尝试过的命令

user@vm:~$ echo "['A', 'B']" | sed -r 's/[\[\],]//g'
['A', 'B']

user@vm:~$ echo "['A', 'B']" | sed -r 's/[[],]//g'  # unescaped
['A', 'B']

user@vm:~$ echo "['A', 'B']" | sed -r 's/[\[\]]//g'  # removed ","
['A', 'B']

user@vm:~$ echo "['A', 'B']" | sed -r 's/[,]//g'  #removed "[" and "]"
['A' 'B']

user@vm:~$ echo "['A', 'B']" | sed -r 's/[[,]//g'  # removed "]"
'A' 'B']
Run Code Online (Sandbox Code Playgroud)

显然,它们都不起作用。但是,这些命令可以:

user@vm:~$ echo …
Run Code Online (Sandbox Code Playgroud)

bash sed

3
推荐指数
1
解决办法
112
查看次数

xmlstarlet插入标签

我正在使用命令:

xmlstarlet ed --omit-decl --subnode "/boinc" --type elem -n app -v "" project_00.xml > project_01.xml

但是,我想在这一个中再插入两个标签:

<app>
 <name>name</name>
 <nikname>nikname</nikname>
</app>
Run Code Online (Sandbox Code Playgroud)

在我project_00.xml,我已经有其他标签应用程序,它导致冲突.

此命令的问题:

xmlstarlet ed --subnode "/boinc" --type elem -n app -v "" project_00.xml|     xmlstarlet ed --subnode //app --type elem -n name -v "newApp"| xmlstarlet ed --subnode //app --type elem -n user_friendly_name -v "New.App" > project_01.xml
Run Code Online (Sandbox Code Playgroud)

就是它创造了这个:

  <app name="wilson">
    <name>wilson</name>
    <user_friendly_name>Mr.Wilson</user_friendly_name>
    <name>newApp</name>
    <user_friendly_name>New.App</user_friendly_name>
  </app>
  <app>
    <name>newApp</name>
    <user_friendly_name>New.App</user_friendly_name>
  </app>
Run Code Online (Sandbox Code Playgroud)

知道确切的命令吗?

我尝试了这个命令,但它复制了所有应用程序标签

xmlstarlet ed -s "/boinc" -t elem -n app -v …
Run Code Online (Sandbox Code Playgroud)

xmlstarlet

2
推荐指数
1
解决办法
1955
查看次数