Blender V5.0
blender::csv_parse::tests Namespace Reference

Classes

struct  StrParseResult

Functions

static std::optional< int64_tfind_end_of_simple_field (const StringRef buffer, const int64_t start, const char delimiter=',')
static std::optional< int64_tfind_end_of_quoted_field (const StringRef buffer, const int64_t start, const char quote='"', const Span<char> escape_chars = Span<char>(StringRef("\"\\")))
static std::optional< Vector< std::string > > parse_record_fields (const StringRef buffer, const int64_t start=0, const char delimiter=',', const char quote='"', const Span<char> quote_escape_chars = Span<char>{'"', '\\'})
static StrParseResult parse_csv_fields (const StringRef str, const CsvParseOptions &options)
 TEST (csv_parse, FindEndOfSimpleField)
 TEST (csv_parse, FindEndOfQuotedField)
 TEST (csv_parse, ParseRecordFields)
 TEST (csv_parse, ParseCsvBasic)
 TEST (csv_parse, ParseCsvMissingEnd)
 TEST (csv_parse, ParseCsvMultiLine)
 TEST (csv_parse, ParseCsvEmpty)
 TEST (csv_parse, ParseCsvTitlesOnly)
 TEST (csv_parse, ParseCsvTrailingNewline)
 TEST (csv_parse, UnescapeField)

Function Documentation

◆ find_end_of_quoted_field()

std::optional< int64_t > blender::csv_parse::tests::find_end_of_quoted_field ( const StringRef buffer,
const int64_t start,
const char quote = '"',
const Span< char > escape_chars = Span<char>(StringRef("\"\\")) )
static

Definition at line 19 of file BLI_csv_parse_test.cc.

References blender::csv_parse::detail::find_end_of_quoted_field().

Referenced by TEST().

◆ find_end_of_simple_field()

std::optional< int64_t > blender::csv_parse::tests::find_end_of_simple_field ( const StringRef buffer,
const int64_t start,
const char delimiter = ',' )
static

Definition at line 12 of file BLI_csv_parse_test.cc.

References blender::csv_parse::detail::find_end_of_simple_field().

Referenced by TEST().

◆ parse_csv_fields()

◆ parse_record_fields()

std::optional< Vector< std::string > > blender::csv_parse::tests::parse_record_fields ( const StringRef buffer,
const int64_t start = 0,
const char delimiter = ',',
const char quote = '"',
const Span< char > quote_escape_chars = Span<char>{'"', '\\'} )
static

Definition at line 28 of file BLI_csv_parse_test.cc.

Referenced by TEST().

◆ TEST() [1/10]

blender::csv_parse::tests::TEST ( csv_parse ,
FindEndOfQuotedField  )

Definition at line 116 of file BLI_csv_parse_test.cc.

References EXPECT_EQ(), and find_end_of_quoted_field().

◆ TEST() [2/10]

blender::csv_parse::tests::TEST ( csv_parse ,
FindEndOfSimpleField  )

Definition at line 92 of file BLI_csv_parse_test.cc.

References EXPECT_EQ(), and find_end_of_simple_field().

◆ TEST() [3/10]

blender::csv_parse::tests::TEST ( csv_parse ,
ParseCsvBasic  )

Definition at line 169 of file BLI_csv_parse_test.cc.

References EXPECT_EQ(), options, parse_csv_fields(), and result.

◆ TEST() [4/10]

blender::csv_parse::tests::TEST ( csv_parse ,
ParseCsvEmpty  )

Definition at line 221 of file BLI_csv_parse_test.cc.

References EXPECT_EQ(), options, parse_csv_fields(), and result.

◆ TEST() [5/10]

blender::csv_parse::tests::TEST ( csv_parse ,
ParseCsvMissingEnd  )

Definition at line 199 of file BLI_csv_parse_test.cc.

References options, parse_csv_fields(), and result.

◆ TEST() [6/10]

blender::csv_parse::tests::TEST ( csv_parse ,
ParseCsvMultiLine  )

Definition at line 207 of file BLI_csv_parse_test.cc.

References EXPECT_EQ(), options, parse_csv_fields(), and result.

◆ TEST() [7/10]

blender::csv_parse::tests::TEST ( csv_parse ,
ParseCsvTitlesOnly  )

Definition at line 231 of file BLI_csv_parse_test.cc.

References EXPECT_EQ(), options, parse_csv_fields(), and result.

◆ TEST() [8/10]

blender::csv_parse::tests::TEST ( csv_parse ,
ParseCsvTrailingNewline  )

Definition at line 244 of file BLI_csv_parse_test.cc.

References EXPECT_EQ(), options, parse_csv_fields(), and result.

◆ TEST() [9/10]

blender::csv_parse::tests::TEST ( csv_parse ,
ParseRecordFields  )

Definition at line 145 of file BLI_csv_parse_test.cc.

References EXPECT_EQ(), and parse_record_fields().

◆ TEST() [10/10]

blender::csv_parse::tests::TEST ( csv_parse ,
UnescapeField  )

Definition at line 259 of file BLI_csv_parse_test.cc.

References EXPECT_EQ(), options, and blender::csv_parse::unescape_field().