mirror of
				https://github.com/subsurface/subsurface.git
				synced 2025-02-19 22:16:15 +00:00 
			
		
		
		
	Change test case to use new Seabear parsing function
Signed-off-by: Miika Turkia <miika.turkia@gmail.com>
This commit is contained in:
		
							parent
							
								
									c832973df5
								
							
						
					
					
						commit
						0829d601c6
					
				
					 1 changed files with 2 additions and 108 deletions
				
			
		|  | @ -244,116 +244,10 @@ void TestParse::testParseNewFormat() | ||||||
| 	 */ | 	 */ | ||||||
| 
 | 
 | ||||||
| 	for (int i = 0; i < files.size(); ++i) { | 	for (int i = 0; i < files.size(); ++i) { | ||||||
| 		QString delta; |  | ||||||
| 		QStringList currColumns; |  | ||||||
| 		QStringList headers; |  | ||||||
| 		QString file = QString::fromLatin1(SUBSURFACE_TEST_DATA "/dives/").append(files.at(i)); |  | ||||||
| 		QFile f(file); |  | ||||||
| 
 |  | ||||||
| 		/*
 |  | ||||||
| 		 * Parse the sample interval if available from CSV |  | ||||||
| 		 * header. |  | ||||||
| 		 */ |  | ||||||
| 
 |  | ||||||
| 		f.open(QFile::ReadOnly); |  | ||||||
| 		while ((firstLine = f.readLine().trimmed()).length() > 0 && !f.atEnd()) { |  | ||||||
| 			if (firstLine.contains("//Log interval: ")) |  | ||||||
| 				delta = firstLine.remove(QString::fromLatin1("//Log interval: ")).trimmed().remove(QString::fromLatin1(" s")); |  | ||||||
| 		} |  | ||||||
| 		firstLine = f.readLine().trimmed(); |  | ||||||
| 
 |  | ||||||
| 		/*
 |  | ||||||
| 		 * Parse the field configuration from the CSV header. |  | ||||||
| 		 */ |  | ||||||
| 
 |  | ||||||
| 		currColumns = firstLine.split(';'); |  | ||||||
| 		Q_FOREACH (QString columnText, currColumns) { |  | ||||||
| 			if (columnText == "Time") { |  | ||||||
| 				headers.append("Sample time"); |  | ||||||
| 			} else if (columnText == "Depth") { |  | ||||||
| 				headers.append("Sample depth"); |  | ||||||
| 			} else if (columnText == "Temperature") { |  | ||||||
| 				headers.append("Sample temperature"); |  | ||||||
| 			} else if (columnText == "NDT") { |  | ||||||
| 				headers.append("Sample NDL"); |  | ||||||
| 			} else if (columnText == "TTS") { |  | ||||||
| 				headers.append("Sample TTS"); |  | ||||||
| 			} else if (columnText == "pO2_1") { |  | ||||||
| 				headers.append("Sample sensor1 pO₂"); |  | ||||||
| 			} else if (columnText == "pO2_2") { |  | ||||||
| 				headers.append("Sample sensor2 pO₂"); |  | ||||||
| 			} else if (columnText == "pO2_3") { |  | ||||||
| 				headers.append("Sample sensor3 pO₂"); |  | ||||||
| 			} else if (columnText == "Ceiling") { |  | ||||||
| 				headers.append("Sample ceiling"); |  | ||||||
| 			} else if (columnText == "Tank pressure") { |  | ||||||
| 				headers.append("Sample pressure"); |  | ||||||
| 			} else { |  | ||||||
| 				// We do not know about this value
 |  | ||||||
| 				qDebug() << "Seabear import found an un-handled field: " << columnText; |  | ||||||
| 				headers.append(""); |  | ||||||
| 			} |  | ||||||
| 			f.close(); |  | ||||||
| 		} |  | ||||||
| 
 |  | ||||||
| 		/*
 |  | ||||||
| 		 * Validate the parsing routine returns success. |  | ||||||
| 		 */ |  | ||||||
| 
 |  | ||||||
| 		char *params[42]; |  | ||||||
| 		int pnr = 0; |  | ||||||
| 
 |  | ||||||
| 		params[pnr++] = strdup("timeField"); |  | ||||||
| 		params[pnr++] = intdup(headers.indexOf(tr("Sample time"))); |  | ||||||
| 		params[pnr++] = strdup("depthField"); |  | ||||||
| 		params[pnr++] = intdup(headers.indexOf(tr("Sample depth"))); |  | ||||||
| 		params[pnr++] = strdup("tempField"); |  | ||||||
| 		params[pnr++] = intdup(headers.indexOf(tr("Sample temperature"))); |  | ||||||
| 		params[pnr++] = strdup("po2Field"); |  | ||||||
| 		params[pnr++] = intdup(headers.indexOf(tr("Sample pO₂"))); |  | ||||||
| 		params[pnr++] = strdup("o2sensor1Field"); |  | ||||||
| 		params[pnr++] = intdup(headers.indexOf(tr("Sample sensor1 pO₂"))); |  | ||||||
| 		params[pnr++] = strdup("o2sensor2Field"); |  | ||||||
| 		params[pnr++] = intdup(headers.indexOf(tr("Sample sensor2 pO₂"))); |  | ||||||
| 		params[pnr++] = strdup("o2sensor3Field"); |  | ||||||
| 		params[pnr++] = intdup(headers.indexOf(tr("Sample sensor3 pO₂"))); |  | ||||||
| 		params[pnr++] = strdup("cnsField"); |  | ||||||
| 		params[pnr++] = intdup(headers.indexOf(tr("Sample CNS"))); |  | ||||||
| 		params[pnr++] = strdup("ndlField"); |  | ||||||
| 		params[pnr++] = intdup(headers.indexOf(tr("Sample NDL"))); |  | ||||||
| 		params[pnr++] = strdup("ttsField"); |  | ||||||
| 		params[pnr++] = intdup(headers.indexOf(tr("Sample TTS"))); |  | ||||||
| 		params[pnr++] = strdup("stopdepthField"); |  | ||||||
| 		params[pnr++] = intdup(headers.indexOf(tr("Sample stopdepth"))); |  | ||||||
| 		params[pnr++] = strdup("pressureField"); |  | ||||||
| 		params[pnr++] = intdup(headers.indexOf(tr("Sample pressure"))); |  | ||||||
| 		params[pnr++] = strdup("setpointField"); |  | ||||||
| 		params[pnr++] = intdup(-1); |  | ||||||
| 		params[pnr++] = strdup("numberField"); |  | ||||||
| 		params[pnr++] = intdup(-1); |  | ||||||
| 		params[pnr++] = strdup("separatorIndex"); |  | ||||||
| 		params[pnr++] = intdup(2); |  | ||||||
| 		params[pnr++] = strdup("units"); |  | ||||||
| 		params[pnr++] = intdup(0); |  | ||||||
| 		params[pnr++] = strdup("delta"); |  | ||||||
| 		params[pnr++] = strdup(delta.toUtf8().data()); |  | ||||||
| 		params[pnr++] = NULL; |  | ||||||
| 
 |  | ||||||
| 		QCOMPARE(parse_seabear_csv_file(file.toUtf8().data(), |  | ||||||
| 					params, pnr - 1, "csv"), 0); |  | ||||||
| 
 | 
 | ||||||
|  | 		QCOMPARE(parse_seabear_log(QString::fromLatin1(SUBSURFACE_TEST_DATA | ||||||
|  | 			"/dives/").append(files.at(i)).toLatin1().data()), 0); | ||||||
| 		QCOMPARE(dive_table.nr, i + 1); | 		QCOMPARE(dive_table.nr, i + 1); | ||||||
| 
 |  | ||||||
| 		/*
 |  | ||||||
| 		 * Set artificial but static dive times so the result |  | ||||||
| 		 * can be compared to saved one. |  | ||||||
| 		 */ |  | ||||||
| 
 |  | ||||||
| 		if (dive_table.nr > 0) { |  | ||||||
| 			dive = dive_table.dives[dive_table.nr - 1]; |  | ||||||
| 			dive->when = 1255152761 + 7200 * i; |  | ||||||
| 			dive->dc.when = 1255152761 + 7200 * i; |  | ||||||
| 		} |  | ||||||
| 	} | 	} | ||||||
| 
 | 
 | ||||||
| 	fprintf(stderr, "number of dives %d \n", dive_table.nr); | 	fprintf(stderr, "number of dives %d \n", dive_table.nr); | ||||||
|  |  | ||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue