Esempio n. 1
0
GTEST_API_ int main(int argc, char **argv)
{
  QCoreApplication qca(argc, argv);
  FilesExist();
  qsrand(time(NULL));
  testing::InitGoogleTest(&argc, argv);
  Dissent::Init();
  int res = RUN_ALL_TESTS();
  FilesDelete();
  return res;
}
Esempio n. 2
0
GTEST_API_ int main(int argc, char **argv)
{
    QCoreApplication qca(argc, argv);
    CryptoFactory::GetInstance().SetThreading(CryptoFactory::MultiThreaded);
    Dissent::Crypto::AsymmetricKey::DefaultKeySize = 512;
    Logging::UseFile("test.log");
    qDebug() << "Beginning tests";
    FilesExist();
    testing::InitGoogleTest(&argc, argv);
    int res = RUN_ALL_TESTS();
    FilesDelete();
    return res;
}
/** check that parameter settings make sense */
bool Parameter::Validate()
{
  bool noErrorFlag = true;

  PARAM_MAP::const_iterator iterParams;
  for (iterParams = m_setting.begin(); iterParams != m_setting.end(); ++iterParams) {
    const std::string &key = iterParams->first;
    
    if (m_valid.find(key) == m_valid.end())
    {
      UserMessage::Add("Unknown parameter " + key);
      noErrorFlag = false;
    }
  }
  

  // required parameters
  if (m_setting["ttable-file"].size() == 0) {
    UserMessage::Add("No phrase translation table (ttable-file)");
    noErrorFlag = false;
  }

  if (m_setting["lmodel-dub"].size() > 0) {
    if (m_setting["lmodel-file"].size() != m_setting["lmodel-dub"].size()) {
      stringstream errorMsg("");
      errorMsg << "Config and parameters specify "
               << static_cast<int>(m_setting["lmodel-file"].size())
               << " language model files (lmodel-file), but "
               << static_cast<int>(m_setting["lmodel-dub"].size())
               << " LM upperbounds (lmodel-dub)"
               << endl;
      UserMessage::Add(errorMsg.str());
      noErrorFlag = false;
    }
  }

  if (m_setting["lmodel-file"].size() * (m_setting.find("lmodel-oov-feature") != m_setting.end() ? 2 : 1)
         != m_setting["weight-l"].size()) {
    stringstream errorMsg("");
    errorMsg << "Config and parameters specify "
             << static_cast<int>(m_setting["lmodel-file"].size())
             << " language model files (lmodel-file), but "
             << static_cast<int>(m_setting["weight-l"].size())
             << " weights (weight-l)";
    errorMsg << endl << "You might be giving '-lmodel-file TYPE FACTOR ORDER FILENAME' but you should be giving these four as a single argument, i.e. '-lmodel-file \"TYPE FACTOR ORDER FILENAME\"'";
    errorMsg << endl << "You should also remember that each language model requires 2 weights, if and only if lmodel-oov-feature is on.";
    UserMessage::Add(errorMsg.str());
    noErrorFlag = false;
  }

  // do files exist?

  // input file
  if (noErrorFlag && m_setting["input-file"].size() == 1) {
    noErrorFlag = FileExists(m_setting["input-file"][0]);
  }
  // generation tables
  if (noErrorFlag) {
    std::vector<std::string> ext;
    //raw tables in either un compressed or compressed form
    ext.push_back("");
    ext.push_back(".gz");
    noErrorFlag = FilesExist("generation-file", 3, ext);
  }
  // distortion
  if (noErrorFlag) {
    std::vector<std::string> ext;
    //raw tables in either un compressed or compressed form
    ext.push_back("");
    ext.push_back(".gz");
    //prefix tree format
    ext.push_back(".binlexr.idx");
    noErrorFlag = FilesExist("distortion-file", 3, ext);
  }
  return noErrorFlag;
}