Пример #1
0
 void ProjectDatabaseRecord_Impl::updatePathData(const openstudio::path& originalBase,
                                                 const openstudio::path& newBase)
 {
   // don't use arguments -- go to the source
   ProjectDatabase database = projectDatabase();
   setName(toString(database.path()));
   setRunManagerDBPath(completeAndNormalize(database.runManager().dbPath()));
 }
Пример #2
0
  openstudio::runmanager::Workflow WorkflowRecord_Impl::workflow() const {
    ProjectDatabase projectDatabase = this->projectDatabase();

    openstudio::runmanager::Workflow result;
    openstudio::runmanager::RunManager runManager = projectDatabase.runManager();
    try {
      result = runManager.loadWorkflow(m_runManagerWorkflowKey);
      result.setUUID(handle());
    }
    catch (...) {
      LOG(Error,"Unable to load workflow from RunManager using key "
          << m_runManagerWorkflowKey << ". Returning empty Workflow.");
    }

    return result;
  }
TEST_F(ProjectFixture, MeasureGroupRecord)
{
  return;

  ProjectDatabase database = getCleanDatabase("MeasureGroupRecord");

  openstudio::path rubyPath = resourcesPath() / openstudio::toPath("project/rubyscripts/*.rb");

  openstudio::path perturbScript = rubyPath/openstudio::toPath("openstudio/runmanager/rubyscripts/PerturbObject.rb");
  RubyMeasure rubyMeasure(perturbScript,FileReferenceType::OSM,FileReferenceType::OSM);
  std::vector<Variable> variables;
  std::string name("name");
  Problem problem(name,variables,database.runManager().loadWorkflows().at(0));
  ProblemRecord problemRecord = ProblemRecord::factoryFromProblem(problem,database);
  MeasureVector measures;
  MeasureGroup measureGroup("Wall Construction",measures);
  MeasureGroupRecord measureGroupRecord(measureGroup, problemRecord,0);

  EXPECT_EQ(static_cast<unsigned>(0), measureGroupRecord.numMeasures(true));
  EXPECT_EQ(static_cast<unsigned>(0), measureGroupRecord.measureRecordIds(true).size());
  EXPECT_EQ(static_cast<unsigned>(0), measureGroupRecord.measureRecords(true).size());
  // can't do this yet, would like to on construction eventually
  //EXPECT_EQ(static_cast<unsigned>(0), measureGroupRecord.discoverArguments().size());
  //EXPECT_EQ(static_cast<unsigned>(0), measureGroupRecord.arguments().size());

  // create a real measure
  //RubyMeasureRecord rubyMeasureRecord1("Test Measure 1", rubyPath, measureGroupRecord);
  RubyMeasureRecord rubyMeasureRecord1(rubyMeasure,measureGroupRecord,0);
// TODO  EXPECT_EQ(measureGroupRecord.id(), rubyMeasureRecord1.variableRecord().id());
// TODO  EXPECT_EQ(measureGroupRecord.handle(), rubyMeasureRecord1.variableRecord().handle());
  EXPECT_EQ(static_cast<unsigned>(1), measureGroupRecord.numMeasures(true));
  ASSERT_EQ(static_cast<unsigned>(1), measureGroupRecord.measureRecordIds(true).size());
  EXPECT_EQ(rubyMeasureRecord1.id(), measureGroupRecord.measureRecordIds(true)[0]);
  ASSERT_EQ(static_cast<unsigned>(1), measureGroupRecord.measureRecords(true).size());
  EXPECT_EQ(rubyMeasureRecord1.handle(), measureGroupRecord.measureRecords(true)[0].handle());

  // create another real measure
  //RubyMeasureRecord rubyMeasureRecord2("Test Measure 2", rubyPath, measureGroupRecord);
  RubyMeasureRecord rubyMeasureRecord2(rubyMeasure,measureGroupRecord,0);
// TODO  EXPECT_EQ(measureGroupRecord.id(), rubyMeasureRecord2.variableRecord().id());
// TODO  EXPECT_EQ(measureGroupRecord.handle(), rubyMeasureRecord2.variableRecord().handle());
  EXPECT_EQ(static_cast<unsigned>(2), measureGroupRecord.numMeasures(true));
  ASSERT_EQ(static_cast<unsigned>(2), measureGroupRecord.measureRecordIds(true).size());
  EXPECT_EQ(rubyMeasureRecord1.id(), measureGroupRecord.measureRecordIds(true)[0]);
  EXPECT_EQ(rubyMeasureRecord2.id(), measureGroupRecord.measureRecordIds(true)[1]);
  ASSERT_EQ(static_cast<unsigned>(2), measureGroupRecord.measureRecords(true).size());
  EXPECT_EQ(rubyMeasureRecord1.handle(), measureGroupRecord.measureRecords(true)[0].handle());
  EXPECT_EQ(rubyMeasureRecord2.handle(), measureGroupRecord.measureRecords(true)[1].handle());

  // create a null measure
  UUID uuid;
  UUID versionUUID;
  NullMeasure nullMeasure(uuid,versionUUID,"","","",true);
  NullMeasureRecord nullMeasureRecord(nullMeasure,measureGroupRecord,0);
// TODO  EXPECT_EQ(measureGroupRecord.id(), nullMeasureRecord.variableRecord().id());
// TODO  EXPECT_EQ(measureGroupRecord.handle(), nullMeasureRecord.variableRecord().handle());
  EXPECT_EQ(static_cast<unsigned>(3), measureGroupRecord.numMeasures(true));
  ASSERT_EQ(static_cast<unsigned>(3), measureGroupRecord.measureRecordIds(true).size());
  EXPECT_EQ(rubyMeasureRecord1.id(), measureGroupRecord.measureRecordIds(true)[0]);
  EXPECT_EQ(rubyMeasureRecord2.id(), measureGroupRecord.measureRecordIds(true)[1]);
  EXPECT_EQ(nullMeasureRecord.id(), measureGroupRecord.measureRecordIds(true)[2]);
  ASSERT_EQ(static_cast<unsigned>(3), measureGroupRecord.measureRecords(true).size());
  EXPECT_EQ(rubyMeasureRecord1.handle(), measureGroupRecord.measureRecords(true)[0].handle());
  EXPECT_EQ(rubyMeasureRecord2.handle(), measureGroupRecord.measureRecords(true)[1].handle());
  EXPECT_EQ(nullMeasureRecord.handle(), measureGroupRecord.measureRecords(true)[2].handle());

  EXPECT_TRUE(rubyMeasureRecord2.setIsSelected(false));

  EXPECT_EQ(static_cast<unsigned>(2), measureGroupRecord.numMeasures(true));
  ASSERT_EQ(static_cast<unsigned>(2), measureGroupRecord.measureRecordIds(true).size());
  EXPECT_EQ(static_cast<unsigned>(3), measureGroupRecord.numMeasures(false));
  ASSERT_EQ(static_cast<unsigned>(3), measureGroupRecord.measureRecordIds(false).size());
  EXPECT_EQ(rubyMeasureRecord1.id(), measureGroupRecord.measureRecordIds(true)[0]);
  EXPECT_EQ(nullMeasureRecord.id(), measureGroupRecord.measureRecordIds(true)[1]);
  EXPECT_EQ(rubyMeasureRecord1.id(), measureGroupRecord.measureRecordIds(false)[0]);
  EXPECT_EQ(rubyMeasureRecord2.id(), measureGroupRecord.measureRecordIds(false)[1]);
  EXPECT_EQ(nullMeasureRecord.id(), measureGroupRecord.measureRecordIds(false)[2]);
  ASSERT_EQ(static_cast<unsigned>(2), measureGroupRecord.measureRecords(true).size());
  EXPECT_EQ(rubyMeasureRecord1.handle(), measureGroupRecord.measureRecords(true)[0].handle());
  EXPECT_EQ(nullMeasureRecord.handle(), measureGroupRecord.measureRecords(true)[1].handle());
  ASSERT_EQ(static_cast<unsigned>(3), measureGroupRecord.measureRecords(false).size());
  EXPECT_EQ(rubyMeasureRecord1.handle(), measureGroupRecord.measureRecords(false)[0].handle());
  EXPECT_EQ(rubyMeasureRecord2.handle(), measureGroupRecord.measureRecords(false)[1].handle());
  EXPECT_EQ(nullMeasureRecord.handle(), measureGroupRecord.measureRecords(false)[2].handle());
}