MCPcopy Create free account
hub / github.com/KDE/labplot / testParserDateTime64ns

Method testParserDateTime64ns

tests/notebook/NotebookTest.cpp:230–253  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

228}
229
230void NotebookTest::testParserDateTime64ns() {
231 // Testing datetime day
232 // example output taken from a column in panda's dataframe, contains line breaks after every second value
233 QString input = QStringLiteral(
234 "array(['2009-01-01T00:10:00.000000000', '2009-01-01T00:20:00.000000000',\n '2009-01-01T00:30:00.000000000', '2009-01-01T00:40:00.000000000'],\n "
235 " dtype='datetime64[ns]')");
236 VariableParser parser(QStringLiteral("python"), input);
237
238 QTEST_ASSERT(parser.dataType() == AbstractColumn::ColumnMode::DateTime);
239 QCOMPARE(parser.isParsed(), true);
240 auto res = parser.dateTime();
241
242 QCOMPARE(res.length(), 4);
243 QCOMPARE(res.at(0).isValid(), true);
244 QCOMPARE(res.at(1).isValid(), true);
245 QCOMPARE(res.at(2).isValid(), true);
246 QCOMPARE(res.at(3).isValid(), true);
247
248 // ns are read as ms at the moment, higher precision not supported yet.
249 QTEST_ASSERT(res.at(0).toString(QStringLiteral("yyyy-MM-ddThh:mm:ss.zzz")) == QStringLiteral("2009-01-01T00:10:00.000"));
250 QTEST_ASSERT(res.at(1).toString(QStringLiteral("yyyy-MM-ddThh:mm:ss.zzz")) == QStringLiteral("2009-01-01T00:20:00.000"));
251 QTEST_ASSERT(res.at(2).toString(QStringLiteral("yyyy-MM-ddThh:mm:ss.zzz")) == QStringLiteral("2009-01-01T00:30:00.000"));
252 QTEST_ASSERT(res.at(3).toString(QStringLiteral("yyyy-MM-ddThh:mm:ss.zzz")) == QStringLiteral("2009-01-01T00:40:00.000"));
253}
254
255//**********************************************************
256//************************* Octave *************************

Callers

nothing calls this directly

Calls 6

isParsedMethod · 0.80
lengthMethod · 0.80
dataTypeMethod · 0.45
dateTimeMethod · 0.45
isValidMethod · 0.45
toStringMethod · 0.45

Tested by

no test coverage detected