void CalvinCHPQuantificationFileUpdaterTest::testQuantification() { CreateReferenceFile(); CalvinCHPQuantificationFileUpdater upd; upd.Initialize(TEST_FILE); upd.UpdateQuantification(0, 123.0f); upd.UpdateQuantification(2, 222.0f); CHPQuantificationData data; CHPQuantificationFileReader reader; CPPUNIT_ASSERT_NO_THROW(reader.SetFilename(TEST_FILE)); CPPUNIT_ASSERT_NO_THROW(reader.Read(data)); CPPUNIT_ASSERT(data.GetEntryCount() == 4); ProbeSetQuantificationData e; data.GetQuantificationEntry(0, e); CPPUNIT_ASSERT(e.name == "1"); CPPUNIT_ASSERT_DOUBLES_EQUAL(e.quantification, 123.0f, 0.000001f); data.GetQuantificationEntry(1, e); CPPUNIT_ASSERT(e.name == "2"); CPPUNIT_ASSERT_DOUBLES_EQUAL(e.quantification, 20.0f, 0.000001f); data.GetQuantificationEntry(2, e); CPPUNIT_ASSERT(e.name == "3"); CPPUNIT_ASSERT_DOUBLES_EQUAL(e.quantification, 222.0f, 0.000001f); data.GetQuantificationEntry(3, e); CPPUNIT_ASSERT(e.name == "4"); CPPUNIT_ASSERT_DOUBLES_EQUAL(e.quantification, 40.0f, 0.000001f); }
/* * Read the file. */ bool FusionCHPQuantificationData::Read() { CHPQuantificationFileReader reader; reader.SetFilename(filename); try { reader.Read(chpData); return true; } catch(...) { return false; } }
void CHPQuantificationFileReaderTest::testReadId() { CHPQuantificationData data; CHPQuantificationFileReader reader; CPPUNIT_ASSERT_NO_THROW(reader.SetFilename("../data/CHP_quantification_file_id")); CPPUNIT_ASSERT_NO_THROW(reader.Read(data)); CPPUNIT_ASSERT(data.GetFilename() == "../data/CHP_quantification_file_id"); CPPUNIT_ASSERT(data.GetAlgName() == L"sig"); CPPUNIT_ASSERT(data.GetAlgVersion() == L"1.0"); CPPUNIT_ASSERT(data.GetArrayType() == L"test3"); CPPUNIT_ASSERT(data.GetEntryCount() == 2); ParameterNameValueTypeList params = data.GetAlgParams(); CPPUNIT_ASSERT(params.size() == 1); ParameterNameValueTypeList::iterator it=params.begin(); ParameterNameValueType param = *it; CPPUNIT_ASSERT(param.GetName() == L"an1"); CPPUNIT_ASSERT(param.GetValueText() == L"av1"); params = data.GetSummaryParams(); CPPUNIT_ASSERT(params.size() == 1); it=params.begin(); param = *it; CPPUNIT_ASSERT(param.GetName() == L"sn1"); CPPUNIT_ASSERT(param.GetValueText() == L"sv1"); ProbeSetQuantificationData e; data.GetQuantificationEntry(0, e); CPPUNIT_ASSERT(e.id == 10); CPPUNIT_ASSERT(e.quantification == 10.0f); CPPUNIT_ASSERT(e.name == ""); data.GetQuantificationEntry(1, e); CPPUNIT_ASSERT(e.id == 20); CPPUNIT_ASSERT(e.quantification == 20.0f); CPPUNIT_ASSERT(e.name == ""); }
void CHPQuantificationFileWriterTest::WriteTest() { ParameterNameValueTypeList params; ParameterNameValueType param; CHPQuantificationData data("CHP_quantification_file"); data.SetAlgName(L"sig"); data.SetAlgVersion(L"1.0"); data.SetArrayType(L"test3"); data.SetEntryCount(2, 10); param.SetName(L"an1"); param.SetValueText(L"av1"); params.push_back(param); data.AddAlgParams(params); params.clear(); param.SetName(L"sn1"); param.SetValueText(L"sv1"); params.push_back(param); data.AddSummaryParams(params); CHPQuantificationFileWriter *writer = new CHPQuantificationFileWriter(data); affymetrix_calvin_data::ProbeSetQuantificationData e; writer->SeekToDataSet(); e.name = "abc"; e.quantification = 10.0f; writer->WriteEntry(e); e.name = "xyz"; e.quantification = 20.0f; writer->WriteEntry(e); delete writer; CPPUNIT_ASSERT(1); CHPQuantificationData data2; CHPQuantificationFileReader reader; reader.SetFilename("CHP_quantification_file"); reader.Read(data2); CPPUNIT_ASSERT(data2.GetAlgName() == L"sig"); CPPUNIT_ASSERT(data2.GetAlgVersion() == L"1.0"); CPPUNIT_ASSERT(data2.GetArrayType() == L"test3"); CPPUNIT_ASSERT(data2.GetEntryCount() == 2); ParameterNameValueTypeList p = data2.GetAlgParams(); ParameterNameValueTypeList::iterator it = p.begin(); param = *it; CPPUNIT_ASSERT(param.GetName() == L"an1"); CPPUNIT_ASSERT(param.GetValueText() == L"av1"); p = data2.GetSummaryParams(); it = p.begin(); param = *it; CPPUNIT_ASSERT(param.GetName() == L"sn1"); CPPUNIT_ASSERT(param.GetValueText() == L"sv1"); data2.GetQuantificationEntry(0, e); CPPUNIT_ASSERT_DOUBLES_EQUAL(e.quantification, 10.0f, 0.0001f); CPPUNIT_ASSERT(e.name == "abc"); data2.GetQuantificationEntry(1, e); CPPUNIT_ASSERT_DOUBLES_EQUAL(e.quantification, 20.0f, 0.0001f); CPPUNIT_ASSERT(e.name == "xyz"); }