From e0028a909ef1d756d9df382c19df67c49a5be368 Mon Sep 17 00:00:00 2001 From: ThirteenAG Date: Mon, 22 Jan 2024 19:06:16 +0800 Subject: [PATCH] mINI wrapper update --- .gitattributes | 15 - .github/workflows/msbuild.yml | 39 + .gitignore | 342 +++++++- IniReader.cpp | 122 +++ IniReader.h | 469 +++-------- LICENSE | 21 + LICENSE.txt | 23 - README.md | 49 +- ini_parser.hpp | 382 --------- mINI/.gitignore | 7 + mINI/CHANGELOG.md | 54 ++ mINI/LICENSE | 19 + mINI/README.md | 333 ++++++++ mINI/icon.png | Bin 0 -> 1634 bytes mINI/src/mini/ini.h | 885 ++++++++++++++++++++ mINI/tests/build.bat | 7 + mINI/tests/build.sh | 6 + mINI/tests/building.txt | 25 + mINI/tests/clean.bat | 3 + mINI/tests/clean.sh | 3 + mINI/tests/lest/LICENSE.txt | 23 + mINI/tests/lest/lest.hpp | 1485 +++++++++++++++++++++++++++++++++ mINI/tests/run.bat | 7 + mINI/tests/run.sh | 6 + mINI/tests/testcasesens.cpp | 100 +++ mINI/tests/testcopy.cpp | 77 ++ mINI/tests/testgenerate.cpp | 287 +++++++ mINI/tests/testhuge.cpp | 59 ++ mINI/tests/testread.cpp | 457 ++++++++++ mINI/tests/testutf8.cpp | 141 ++++ mINI/tests/testwrite.cpp | 747 +++++++++++++++++ premake5.bat | 1 + premake5.exe | Bin 0 -> 1568256 bytes premake5.lua | 43 + tests/SplinterCell.in | 290 +++++++ tests/SplinterCell.in2 | 11 + tests/test.bat | 3 + 37 files changed, 5737 insertions(+), 804 deletions(-) create mode 100644 .github/workflows/msbuild.yml create mode 100644 IniReader.cpp create mode 100644 LICENSE delete mode 100644 LICENSE.txt delete mode 100644 ini_parser.hpp create mode 100644 mINI/.gitignore create mode 100644 mINI/CHANGELOG.md create mode 100644 mINI/LICENSE create mode 100644 mINI/README.md create mode 100644 mINI/icon.png create mode 100644 mINI/src/mini/ini.h create mode 100644 mINI/tests/build.bat create mode 100644 mINI/tests/build.sh create mode 100644 mINI/tests/building.txt create mode 100644 mINI/tests/clean.bat create mode 100644 mINI/tests/clean.sh create mode 100644 mINI/tests/lest/LICENSE.txt create mode 100644 mINI/tests/lest/lest.hpp create mode 100644 mINI/tests/run.bat create mode 100644 mINI/tests/run.sh create mode 100644 mINI/tests/testcasesens.cpp create mode 100644 mINI/tests/testcopy.cpp create mode 100644 mINI/tests/testgenerate.cpp create mode 100644 mINI/tests/testhuge.cpp create mode 100644 mINI/tests/testread.cpp create mode 100644 mINI/tests/testutf8.cpp create mode 100644 mINI/tests/testwrite.cpp create mode 100644 premake5.bat create mode 100644 premake5.exe create mode 100644 premake5.lua create mode 100644 tests/SplinterCell.in create mode 100644 tests/SplinterCell.in2 create mode 100644 tests/test.bat diff --git a/.gitattributes b/.gitattributes index bdb0cab..dfe0770 100644 --- a/.gitattributes +++ b/.gitattributes @@ -1,17 +1,2 @@ # Auto detect text files and perform LF normalization * text=auto - -# Custom for Visual Studio -*.cs diff=csharp - -# Standard to msysgit -*.doc diff=astextplain -*.DOC diff=astextplain -*.docx diff=astextplain -*.DOCX diff=astextplain -*.dot diff=astextplain -*.DOT diff=astextplain -*.pdf diff=astextplain -*.PDF diff=astextplain -*.rtf diff=astextplain -*.RTF diff=astextplain diff --git a/.github/workflows/msbuild.yml b/.github/workflows/msbuild.yml new file mode 100644 index 0000000..ad5ae08 --- /dev/null +++ b/.github/workflows/msbuild.yml @@ -0,0 +1,39 @@ +name: MSBuild + +on: + push: + pull_request: + workflow_dispatch: + +env: + SOLUTION_FILE_PATH: build/IniReader.sln + BUILD_CONFIGURATION: Release + +permissions: + contents: read + +jobs: + build: + runs-on: windows-latest + + steps: + - uses: actions/checkout@v4 + with: + submodules: recursive + + - name: Add MSBuild to PATH + uses: microsoft/setup-msbuild@v1 + + - name: Configure build + shell: cmd + run: ./premake5.bat + + - name: Build + shell: cmd + run: msbuild /m /p:Configuration=${{env.BUILD_CONFIGURATION}} ${{env.SOLUTION_FILE_PATH}} + + - name: Test + shell: cmd + run: | + cd tests + test.bat diff --git a/.gitignore b/.gitignore index e915029..ffe634c 100644 --- a/.gitignore +++ b/.gitignore @@ -1,5 +1,339 @@ -################################################################################ -# This .gitignore file was automatically created by Microsoft(R) Visual Studio. -################################################################################ +## Ignore Visual Studio temporary files, build results, and +## files generated by popular Visual Studio add-ons. +## +## Get latest from https://github.com/github/gitignore/blob/master/VisualStudio.gitignore -/.vs +# User-specific files +*.rsuser +*.suo +*.user +*.userosscache +*.sln.docstates +*.asi + +# User-specific files (MonoDevelop/Xamarin Studio) +*.userprefs + +# Build results +[Dd]ebug/ +[Dd]ebugPublic/ +[Rr]elease/ +[Rr]eleases/ +bld/ +[Bb]in/ +[Oo]bj/ +[Ll]og/ +[Bb]uild/ + +# Visual Studio 2015/2017 cache/options directory +.vs/ +# Uncomment if you have tasks that create the project's static files in wwwroot +#wwwroot/ + +# Visual Studio 2017 auto generated files +Generated\ Files/ + +# MSTest test Results +[Tt]est[Rr]esult*/ +[Bb]uild[Ll]og.* + +# NUNIT +*.VisualState.xml +TestResult.xml + +# Build Results of an ATL Project +[Dd]ebugPS/ +[Rr]eleasePS/ +dlldata.c + +# Benchmark Results +BenchmarkDotNet.Artifacts/ + +# .NET Core +project.lock.json +project.fragment.lock.json +artifacts/ + +# StyleCop +StyleCopReport.xml + +# Files built by Visual Studio +*_i.c +*_p.c +*_h.h +*.ilk +*.meta +*.obj +*.iobj +*.pch +*.pdb +*.ipdb +*.pgc +*.pgd +*.rsp +*.sbr +*.tlb +*.tli +*.tlh +*.tmp +*.tmp_proj +*_wpftmp.csproj +*.log +*.vspscc +*.vssscc +.builds +*.pidb +*.svclog +*.scc + +# Chutzpah Test files +_Chutzpah* + +# Visual C++ cache files +ipch/ +*.aps +*.ncb +*.opendb +*.opensdf +*.sdf +*.cachefile +*.VC.db +*.VC.VC.opendb + +# Visual Studio profiler +*.psess +*.vsp +*.vspx +*.sap + +# Visual Studio Trace Files +*.e2e + +# TFS 2012 Local Workspace +$tf/ + +# Guidance Automation Toolkit +*.gpState + +# ReSharper is a .NET coding add-in +_ReSharper*/ +*.[Rr]e[Ss]harper +*.DotSettings.user + +# JustCode is a .NET coding add-in +.JustCode + +# TeamCity is a build add-in +_TeamCity* + +# DotCover is a Code Coverage Tool +*.dotCover + +# AxoCover is a Code Coverage Tool +.axoCover/* +!.axoCover/settings.json + +# Visual Studio code coverage results +*.coverage +*.coveragexml + +# NCrunch +_NCrunch_* +.*crunch*.local.xml +nCrunchTemp_* + +# MightyMoose +*.mm.* +AutoTest.Net/ + +# Web workbench (sass) +.sass-cache/ + +# Installshield output folder +[Ee]xpress/ + +# DocProject is a documentation generator add-in +DocProject/buildhelp/ +DocProject/Help/*.HxT +DocProject/Help/*.HxC +DocProject/Help/*.hhc +DocProject/Help/*.hhk +DocProject/Help/*.hhp +DocProject/Help/Html2 +DocProject/Help/html + +# Click-Once directory +publish/ + +# Publish Web Output +*.[Pp]ublish.xml +*.azurePubxml +# Note: Comment the next line if you want to checkin your web deploy settings, +# but database connection strings (with potential passwords) will be unencrypted +*.pubxml +*.publishproj + +# Microsoft Azure Web App publish settings. Comment the next line if you want to +# checkin your Azure Web App publish settings, but sensitive information contained +# in these scripts will be unencrypted +PublishScripts/ + +# NuGet Packages +*.nupkg +# The packages folder can be ignored because of Package Restore +**/[Pp]ackages/* +# except build/, which is used as an MSBuild target. +!**/[Pp]ackages/build/ +# Uncomment if necessary however generally it will be regenerated when needed +#!**/[Pp]ackages/repositories.config +# NuGet v3's project.json files produces more ignorable files +*.nuget.props +*.nuget.targets + +# Microsoft Azure Build Output +csx/ +*.build.csdef + +# Microsoft Azure Emulator +ecf/ +rcf/ + +# Windows Store app package directories and files +AppPackages/ +BundleArtifacts/ +Package.StoreAssociation.xml +_pkginfo.txt +*.appx + +# Visual Studio cache files +# files ending in .cache can be ignored +*.[Cc]ache +# but keep track of directories ending in .cache +!*.[Cc]ache/ + +# Others +ClientBin/ +~$* +*~ +*.dbmdl +*.dbproj.schemaview +*.jfm +*.pfx +*.publishsettings +orleans.codegen.cs + +# Including strong name files can present a security risk +# (https://github.com/github/gitignore/pull/2483#issue-259490424) +#*.snk + +# Since there are multiple workflows, uncomment next line to ignore bower_components +# (https://github.com/github/gitignore/pull/1529#issuecomment-104372622) +#bower_components/ + +# RIA/Silverlight projects +Generated_Code/ + +# Backup & report files from converting an old project file +# to a newer Visual Studio version. Backup files are not needed, +# because we have git ;-) +_UpgradeReport_Files/ +Backup*/ +UpgradeLog*.XML +UpgradeLog*.htm +ServiceFabricBackup/ +*.rptproj.bak + +# SQL Server files +*.mdf +*.ldf +*.ndf + +# Business Intelligence projects +*.rdl.data +*.bim.layout +*.bim_*.settings +*.rptproj.rsuser + +# Microsoft Fakes +FakesAssemblies/ + +# GhostDoc plugin setting file +*.GhostDoc.xml + +# Node.js Tools for Visual Studio +.ntvs_analysis.dat +node_modules/ + +# Visual Studio 6 build log +*.plg + +# Visual Studio 6 workspace options file +*.opt + +# Visual Studio 6 auto-generated workspace file (contains which files were open etc.) +*.vbw + +# Visual Studio LightSwitch build output +**/*.HTMLClient/GeneratedArtifacts +**/*.DesktopClient/GeneratedArtifacts +**/*.DesktopClient/ModelManifest.xml +**/*.Server/GeneratedArtifacts +**/*.Server/ModelManifest.xml +_Pvt_Extensions + +# Paket dependency manager +.paket/paket.exe +paket-files/ + +# FAKE - F# Make +.fake/ + +# JetBrains Rider +.idea/ +*.sln.iml + +# CodeRush personal settings +.cr/personal + +# Python Tools for Visual Studio (PTVS) +__pycache__/ +*.pyc + +# Cake - Uncomment if you are using it +# tools/** +# !tools/packages.config + +# Tabs Studio +*.tss + +# Telerik's JustMock configuration file +*.jmconfig + +# BizTalk build output +*.btp.cs +*.btm.cs +*.odx.cs +*.xsd.cs + +# OpenCover UI analysis results +OpenCover/ + +# Azure Stream Analytics local run output +ASALocalRun/ + +# MSBuild Binary and Structured Log +*.binlog + +# NVidia Nsight GPU debugger configuration file +*.nvuser + +# MFractors (Xamarin productivity tool) working folder +.mfractor/ + +# Local History for Visual Studio +.localhistory/ + +#Excludes +tests/*.exe +tests/*.pdb +tests/*.ini \ No newline at end of file diff --git a/IniReader.cpp b/IniReader.cpp new file mode 100644 index 0000000..d27b883 --- /dev/null +++ b/IniReader.cpp @@ -0,0 +1,122 @@ +#include "IniReader.h" +#include "lest.hpp" + +using T_LineData = std::vector; +using T_INIFileData = std::tuple; + +bool writeTestFile(T_INIFileData const& testData) +{ + WCHAR buffer[MAX_PATH]; + HMODULE hm = NULL; + GetModuleHandleExW(GET_MODULE_HANDLE_EX_FLAG_FROM_ADDRESS | GET_MODULE_HANDLE_EX_FLAG_UNCHANGED_REFCOUNT, (LPCWSTR)&writeTestFile, &hm); + GetModuleFileNameW(hm, buffer, ARRAYSIZE(buffer)); + std::filesystem::path modulePath(buffer); + + std::string const& filename = std::get<0>(testData); + T_LineData const& lines = std::get<1>(testData); + std::ofstream fileWriteStream(modulePath.parent_path() / filename); + if (fileWriteStream.is_open()) + { + if (lines.size()) + { + auto it = lines.begin(); + for (;;) + { + fileWriteStream << *it; + if (++it == lines.end()) + { + break; + } + fileWriteStream << std::endl; + } + } + return true; + } + return false; +} + +T_INIFileData testDataBasic{ + // filename + "data01.ini", + // original data + { + ";some comment", + "[some section]", + "some key=1 //comment1", + "FLT=2.55 # comment2", + "BOOLEAN = True # comment2", + "STRING=text # comment2", + "Find/Replace=(X=361,Y=248,XL=458,YL=193)", + }, + // expected result + { + "" + } +}; + +const lest::test mINI_tests[] = { + CASE("TEST: IniReader") + { + CIniReader iniReader("data01.ini"); + + auto i = iniReader.ReadInteger("some section", "some key", -1); + EXPECT(i == 1); + + auto i2 = iniReader.ReadInteger("some section2", "some key2", -1); + EXPECT(i2 == -1); + + auto f = iniReader.ReadFloat("some section", "FLT", -1.0f); + EXPECT(fabs(f - 2.55f) <= FLT_EPSILON); + + auto b = iniReader.ReadBoolean("some section", "BOOLEAN", true); + EXPECT(b == true); + + auto s = iniReader.ReadString("some section", "STRING", "fail"); + EXPECT(s == "text"); + + auto s2 = iniReader.ReadString("some section", "Find/Replace", "fail"); + EXPECT(s2 == "(X=361,Y=248,XL=458,YL=193)"); + }, + + CASE("TEST: IniWriter") + { + auto compare_files = [](const std::filesystem::path& filename1, const std::filesystem::path& filename2) -> bool + { + std::ifstream file1(filename1, std::ifstream::ate | std::ifstream::binary); //open file at the end + std::ifstream file2(filename2, std::ifstream::ate | std::ifstream::binary); //open file at the end + const std::ifstream::pos_type fileSize = file1.tellg(); + + if (fileSize != file2.tellg()) { + return false; //different file size + } + + file1.seekg(0); //rewind + file2.seekg(0); //rewind + + std::istreambuf_iterator begin1(file1); + std::istreambuf_iterator begin2(file2); + + return std::equal(begin1,std::istreambuf_iterator(),begin2); //Second argument is end-of-range iterator + }; + + CIniReader iniReader("SplinterCell.in"); + CIniReader iniWriter("SplinterCell.in"); + iniWriter.SetNewIniPathForSave("SplinterCell.ini"); + + iniWriter.WriteInteger("D3DDrv.D3DRenderDevice", "ForceShadowMode", 1); + iniWriter.WriteString("D3DDrv.D3DRenderDevice", "FullScreenVideo", "True"); + + EXPECT(compare_files(iniReader.GetIniPath(), iniWriter.GetIniPath()) == true); + } +}; + +int main(int argc, char** argv) +{ + writeTestFile(testDataBasic); + // run tests + if (int failures = lest::run(mINI_tests, argc, argv)) + { + return failures; + } + return std::cout << std::endl << "All tests passed!" << std::endl, EXIT_SUCCESS; +} \ No newline at end of file diff --git a/IniReader.h b/IniReader.h index a52d0a8..195f366 100644 --- a/IniReader.h +++ b/IniReader.h @@ -1,255 +1,22 @@ #ifndef INIREADER_H #define INIREADER_H -#include "ini_parser.hpp" -#include -#include + +#define MINI_CASE_SENSITIVE +#include "mINI\src\mini\ini.h" +#define WIN32_LEAN_AND_MEAN #include #include -/* -* String comparision functions, with case sensitive option -*/ - -using std::strcmp; - -inline int strcmp(const char* str1, const char* str2, bool csensitive) -{ - return (csensitive ? ::strcmp(str1, str2) : ::_stricmp(str1, str2)); -} - -inline int strcmp(const char* str1, const char* str2, size_t num, bool csensitive) -{ - return (csensitive ? ::strncmp(str1, str2, num) : ::_strnicmp(str1, str2, num)); -} - -inline int compare(const std::string& str1, const std::string& str2, bool case_sensitive) -{ - if (str1.length() == str2.length()) - return strcmp(str1.c_str(), str2.c_str(), case_sensitive); - return (str1.length() < str2.length() ? -1 : 1); -} - -inline int compare(const std::string& str1, const std::string& str2, size_t num, bool case_sensitive) -{ - if (str1.length() == str2.length()) - return strcmp(str1.c_str(), str2.c_str(), num, case_sensitive); - return (str1.length() < str2.length() ? -1 : 1); -} - -inline int compare(const char* str1, const char* str2, bool case_sensitive) -{ - return strcmp(str1, str2, case_sensitive); -} - -inline int compare(const char* str1, const char* str2, size_t num, bool case_sensitive) -{ - return strcmp(str1, str2, num, case_sensitive); -} - -inline bool starts_with(const char* str, const char* prefix, bool case_sensitive) -{ - while (*prefix) - { - bool equal; - if (case_sensitive) - equal = (*str++ == *prefix++); - else - equal = (::tolower(*str++) == ::tolower(*prefix++)); - - if (!equal) return false; - } - return true; -} - -inline bool ends_with(const char* str, const char* prefix, bool case_sensitive) -{ - auto str2 = &str[strlen(str) - 1]; - auto prefix2 = &prefix[strlen(prefix) - 1]; - - while (prefix2 >= prefix) - { - bool equal; - if (case_sensitive) - equal = (*str2-- == *prefix2--); - else - equal = (::tolower(*str2--) == ::tolower(*prefix2--)); - - if (!equal) return false; - } - return true; -} - class CIniReader { private: std::filesystem::path m_szFileName; - - // writes a key into the ini without losing other data around it - // only writes the first found instance - inline bool WriteIniString(std::string_view szSection, std::string_view szKey, std::string_view szValue, bool bKeepInlineData = false) - { - if (!std::filesystem::exists(m_szFileName)) - { - std::ofstream inifile; - inifile.open(m_szFileName); - if (!inifile.is_open()) - return false; - inifile.close(); - } - - std::ifstream ifile; - ifile.open(m_szFileName, std::ios::binary); - - if (!ifile.is_open()) - return false; - - // read entire ini to buffer which will be used as a reference - std::stringstream iniStream; - iniStream << ifile.rdbuf(); - ifile.close(); - - // write back the ini to the file with modified contents - std::ofstream ofile; - ofile.open(m_szFileName, std::ios::binary); - if (!ofile.is_open()) - return false; - - std::string line; - std::string write_line; - bool bFirst = true; - bool bInSection = false; - bool bEnteredSectionOnce = false; - bool bWrittenOnce = false; - while (std::getline(iniStream, line)) - { - if (line.empty()) - continue; - - // trim any newline chars - line.erase(std::find_if(line.rbegin(), line.rend(), std::not_fn(std::function(::isspace))).base(), line.end()); - - write_line = line; - if (!bWrittenOnce) - { - if (!line.empty() && line.front() == '[' && line.back() == ']') - { - bFirst = false; - if (line.find(szSection) != std::string::npos) - { - bInSection = true; - bEnteredSectionOnce = true; - } - else - bInSection = false; - } - - if (bInSection) - { - if (line.find(szKey) != std::string::npos) - { - size_t pos; - std::string clean_line = line; - - // Find comment and remove anything after it from the line - if ((pos = clean_line.find_first_of(';')) != clean_line.npos) - clean_line.erase(pos); - - if ((pos = clean_line.rfind("//")) != clean_line.npos) - clean_line.erase(pos); - - clean_line.erase(std::find_if(clean_line.rbegin(), clean_line.rend(), std::not_fn(std::function(::isspace))).base(), clean_line.end()); - - write_line = clean_line.substr(clean_line.find(szKey), clean_line.rfind('=')); - write_line += "="; - write_line += szValue; - - if (bKeepInlineData) - { - bool bAddSpace = false; - std::string comment = line.substr(line.find('=') + 1); - // after the equals sign we may have a space, so check for that and trim it - comment.erase(comment.begin(), std::find_if(comment.begin(), comment.end(), std::not_fn(std::function(::isspace)))); - // check if there even is a comment - if ((comment.find(';') != std::string::npos) || (comment.find("//") != std::string::npos)) - { - // search for the first instance of a space and move it there - pos = 0; - for (char i : comment) - { - if (isspace(i)) - break; - pos++; - } - if (pos) - { - // move back if we overshoot - size_t backpos = 0; - if ((backpos = comment.rfind(';', pos)) != std::string::npos) - { - pos = backpos; - bAddSpace = true; - } - else if ((backpos = comment.rfind("//", pos)) != std::string::npos) - { - pos = backpos; - bAddSpace = true; - } - - comment = comment.substr(pos); - } - else if (comment.find(';') != std::string::npos) - { - comment = comment.substr(comment.find(';')); - bAddSpace = true; - } - else if (comment.find("//") != std::string::npos) - { - comment = comment.substr(comment.find("//")); - bAddSpace = true; - } - - if (bAddSpace) - write_line += ' '; - write_line += comment; - } - } - - bWrittenOnce = true; - } - } - else if (bEnteredSectionOnce) - { - ofile << szKey << "=" << szValue << "\r\n"; - bWrittenOnce = true; - } - } - - ofile << write_line << "\r\n"; - ofile.flush(); - } - - if (!bWrittenOnce) - { - if (!bEnteredSectionOnce) - { - if (!bFirst) - ofile << "\r\n"; - ofile << '[' << szSection << ']' << "\r\n"; - } - ofile << szKey << "=" << szValue << "\r\n"; - } - - ofile.close(); - - return true; - } + mINI::INIStructure m_ini; public: - linb::ini data; - CIniReader() { - SetIniPath(""); + SetIniPath(); } CIniReader(std::filesystem::path szFileName) @@ -257,25 +24,27 @@ class CIniReader SetIniPath(szFileName); } - CIniReader(std::stringstream& ini_mem) - { - data.load_file(ini_mem); - } - bool operator==(CIniReader& ir) { - if (data.size() != ir.data.size()) - return false; - - for (auto& section : data) + auto& a = m_ini; + auto& b = ir.m_ini; + for (auto const& it : a) { - for (auto& key : data.at(section.first)) + auto const& section = std::get<0>(it); + auto const& collection = std::get<1>(it); + if (collection.size() != b[section].size()) { + return false; + } + for (auto const& it2 : collection) { - if (key.second != ir.data.at(section.first)[key.first]) + auto const& key = std::get<0>(it2); + auto const& value = std::get<1>(it2); + if (value != b[section][key]) { return false; + } } } - return true; + return a.size() == b.size(); } bool operator!=(CIniReader& ir) @@ -285,21 +54,16 @@ class CIniReader bool CompareBySections(CIniReader& ir) { - if (data.size() != ir.data.size()) - return false; + std::vector sections1; + std::vector sections2; - for (auto& section : data) - { - if (ir.data.find(section.first) == ir.data.end()) - return false; + for (auto const& it : m_ini) + sections1.emplace_back(std::get<0>(it)); - if (section.second.size() != ir.data.find(section.first)->second.size()) - return false; + for (auto const& it : ir.m_ini) + sections2.emplace_back(std::get<0>(it)); - if (section.first != ir.data.find(section.first)->first) - return false; - } - return true; + return std::equal(sections1.begin(), sections1.end(), sections2.begin(), sections2.end()); } bool CompareByValues(CIniReader& ir) @@ -312,6 +76,11 @@ class CIniReader return m_szFileName; } + void SetNewIniPathForSave(std::filesystem::path szFileName) + { + m_szFileName = szFileName; + } + void SetIniPath() { SetIniPath(""); @@ -319,127 +88,159 @@ class CIniReader void SetIniPath(std::filesystem::path szFileName) { - //char buffer[MAX_PATH]; + static const auto lpModuleName = 1; WCHAR buffer[MAX_PATH]; HMODULE hm = NULL; - GetModuleHandleExA(GET_MODULE_HANDLE_EX_FLAG_FROM_ADDRESS | GET_MODULE_HANDLE_EX_FLAG_UNCHANGED_REFCOUNT, (LPCSTR)&ends_with, &hm); + GetModuleHandleExW(GET_MODULE_HANDLE_EX_FLAG_FROM_ADDRESS | GET_MODULE_HANDLE_EX_FLAG_UNCHANGED_REFCOUNT, (LPCWSTR)&lpModuleName, &hm); GetModuleFileNameW(hm, buffer, ARRAYSIZE(buffer)); - std::filesystem::path modulePath(buffer); - std::u8string strFileName = szFileName.u8string(); - if (strFileName.find(':') != std::u8string::npos) + if (szFileName.is_absolute()) { m_szFileName = szFileName; } - else if (strFileName.length() == 0) + else if (szFileName.empty()) { m_szFileName = modulePath.replace_extension(".ini"); } else { - m_szFileName = modulePath.u8string().substr(0, modulePath.u8string().rfind('\\') + 1) + strFileName.data(); + m_szFileName = modulePath.parent_path() / szFileName; } - data.load_file(m_szFileName); + mINI::INIFile file(m_szFileName); + file.read(m_ini); } int ReadInteger(std::string_view szSection, std::string_view szKey, int iDefaultValue) { - auto str = data.get(szSection.data(), szKey.data(), std::to_string(iDefaultValue)); - return std::stoi(str, nullptr, starts_with(str.c_str(), "0x", false) ? 16 : 10); + try + { + if (m_ini.has(szSection.data())) + { + auto& collection = m_ini[szSection.data()]; + if (collection.has(szKey.data())) + { + auto& value = collection[szKey.data()]; + return std::stoi(value, nullptr, (value.starts_with("0x") || value.starts_with("0X")) ? 16 : 10); + } + } + } + catch (...) {} + return iDefaultValue; } float ReadFloat(std::string_view szSection, std::string_view szKey, float fltDefaultValue) { - return (float)atof(data.get(szSection.data(), szKey.data(), std::to_string(fltDefaultValue)).c_str()); + try + { + if (m_ini.has(szSection.data())) + { + auto& collection = m_ini[szSection.data()]; + if (collection.has(szKey.data())) + { + auto& value = collection[szKey.data()]; + return static_cast(std::atof(value.data())); + } + } + } + catch (...) {} + return fltDefaultValue; } - + bool ReadBoolean(std::string_view szSection, std::string_view szKey, bool bolDefaultValue) { - auto val = data.get(szSection.data(), szKey.data(), ""); - if (!val.empty()) + try { - if (val.size() == 1) - return val.front() != '0'; - else - return compare(val, "false", false); + if (m_ini.has(szSection.data())) + { + auto& collection = m_ini[szSection.data()]; + if (collection.has(szKey.data())) + { + auto value = collection[szKey.data()]; + if (value.size() == 1) + return value != "0"; + else { + std::transform(value.begin(), value.end(), value.begin(), ::tolower); + if (value == "false") + return false; + else if (value == "true") + return true; + } + } + } } + catch (...) {} return bolDefaultValue; } - + std::string ReadString(std::string_view szSection, std::string_view szKey, std::string_view szDefaultValue) { - auto s = data.get(szSection.data(), szKey.data(), szDefaultValue.data()); - - if (!s.empty()) + try { - if (s.at(0) == '\"' || s.at(0) == '\'') - s.erase(0, 1); - - if (s.at(s.size() - 1) == '\"' || s.at(s.size() - 1) == '\'') - s.erase(s.size() - 1); + if (m_ini.has(szSection.data())) + { + auto& collection = m_ini[szSection.data()]; + if (collection.has(szKey.data())) + { + auto value = collection[szKey.data()]; + if (!value.empty()) + { + if (value.at(0) == '\"' || value.at(0) == '\'') + value.erase(0, 1); + if (value.at(value.size() - 1) == '\"' || value.at(value.size() - 1) == '\'') + value.erase(value.size() - 1); + } + return value; + } + } } - - return s; + catch (...) {} + return szDefaultValue.data(); } - - void WriteInteger(std::string_view szSection, std::string_view szKey, int iValue, bool useparser = false) + + void WriteInteger(std::string_view szSection, std::string_view szKey, int iValue, bool pretty = false) { - if (useparser) - { - data.set(szSection.data(), szKey.data(), std::to_string(iValue)); - data.write_file(m_szFileName); - } - else + try { - char szValue[255]; - _snprintf_s(szValue, 255, "%s%d", " ", iValue); - WriteIniString(szSection, szKey, szValue, true); + mINI::INIFile file(m_szFileName); + m_ini[szSection.data()][szKey.data()] = std::to_string(iValue); + file.write(m_ini, pretty); } + catch (...) {} } - - void WriteFloat(std::string_view szSection, std::string_view szKey, float fltValue, bool useparser = false) + + void WriteFloat(std::string_view szSection, std::string_view szKey, float fltValue, bool pretty = false) { - if (useparser) - { - data.set(szSection.data(), szKey.data(), std::to_string(fltValue)); - data.write_file(m_szFileName); - } - else + try { - char szValue[255]; - _snprintf_s(szValue, 255, "%s%f", " ", fltValue); - WriteIniString(szSection, szKey, szValue, true); + mINI::INIFile file(m_szFileName); + m_ini[szSection.data()][szKey.data()] = std::to_string(fltValue); + file.write(m_ini, pretty); } + catch (...) {} } - - void WriteBoolean(std::string_view szSection, std::string_view szKey, bool bolValue, bool useparser = false) + + void WriteBoolean(std::string_view szSection, std::string_view szKey, bool bolValue, bool pretty = false) { - if (useparser) - { - data.set(szSection.data(), szKey.data(), std::to_string(bolValue)); - data.write_file(m_szFileName); - } - else + try { - char szValue[255]; - _snprintf_s(szValue, 255, "%s%s", " ", bolValue ? "True" : "False"); - WriteIniString(szSection, szKey, szValue, true); + mINI::INIFile file(m_szFileName); + m_ini[szSection.data()][szKey.data()] = bolValue ? "True" : "False"; + file.write(m_ini, pretty); } + catch (...) {} } - - void WriteString(std::string_view szSection, std::string_view szKey, std::string_view szValue, bool useparser = false) + + void WriteString(std::string_view szSection, std::string_view szKey, std::string_view szValue, bool pretty = false) { - if (useparser) - { - data.set(szSection.data(), szKey.data(), szValue.data()); - data.write_file(m_szFileName); - } - else + try { - WriteIniString(szSection, szKey, szValue); + mINI::INIFile file(m_szFileName); + m_ini[szSection.data()][szKey.data()] = szValue.data(); + file.write(m_ini, pretty); } + catch (...) {} } }; diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..99295df --- /dev/null +++ b/LICENSE @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2024 Sergey P. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/LICENSE.txt b/LICENSE.txt deleted file mode 100644 index 71bf92b..0000000 --- a/LICENSE.txt +++ /dev/null @@ -1,23 +0,0 @@ -/* - * Copyright (c) 2013-2015 Denilson das Mercês Amorim - * - * This software is provided 'as-is', without any express or implied - * warranty. In no event will the authors be held liable for any damages - * arising from the use of this software. - * - * Permission is granted to anyone to use this software for any purpose, - * including commercial applications, and to alter it and redistribute it - * freely, subject to the following restrictions: - * - * 1. The origin of this software must not be misrepresented; you must not - * claim that you wrote the original software. If you use this software - * in a product, an acknowledgment in the product documentation would be - * appreciated but is not required. - * - * 2. Altered source versions must be plainly marked as such, and must not be - * misrepresented as being the original software. - * - * 3. This notice may not be removed or altered from any source - * distribution. - * - */ \ No newline at end of file diff --git a/README.md b/README.md index 6eaf2fe..71f2aea 100644 --- a/README.md +++ b/README.md @@ -1,47 +1,4 @@ -IniReader ----------------- -Sample: - - #include "stdafx.h" - #include "IniReader\IniReader.h" - #include - #include - #include - - int main() - { - CIniReader ini1("ini1.ini"); - ini1.WriteInteger("MAIN", "INTEGER", 33); - ini1.WriteFloat("MAIN", "FLOAT", 35.5f); - ini1.WriteBoolean("MAIN", "BOOL", false); - ini1.WriteString("MAIN", "STRING", "text"); - - CIniReader ini2("ini2.ini"); - ini2.WriteInteger("MAIN", "INTEGER", 33); - ini2.WriteFloat("MAIN", "FLOAT", 35.5f); - ini2.WriteBoolean("MAIN", "BOOL", false); - ini2.WriteString("MAIN", "STRING", "text"); - - std::cout << ini1.ReadInteger("MAIN", "INTEGER", 0) << std::endl; - std::cout << ini2.ReadString("MAIN", "STRING", "") << std::endl; - - if (ini1 == ini2) - std::cout << "ini1 and ini2 are the same." << std::endl; - - std::ifstream file("ini1.ini", std::ios::in); - std::stringstream ini_mem; - ini_mem << file.rdbuf(); - - CIniReader mem_ini(ini_mem); - - mem_ini.WriteInteger("MAIN", "INTEGER", 0); - - if (!mem_ini.CompareByValues(ini2)) - std::cout << "mem_ini and ini2 are different." << std::endl; - - return 0; - } +## IniReader -Result: - -![](http://i.imgur.com/LyqVYN7.png) \ No newline at end of file +A wrapper of slightly modified version of [mINI](https://github.com/metayeti/mINI). +Writing to duplicate keys is not supported. \ No newline at end of file diff --git a/ini_parser.hpp b/ini_parser.hpp deleted file mode 100644 index fcd4a0f..0000000 --- a/ini_parser.hpp +++ /dev/null @@ -1,382 +0,0 @@ -/* - * Copyright (c) 2013-2015 Denilson das Mercês Amorim - * Copyright (c) 2017 ThirteenAG - * Copyright (c) 2023 Lovro Pleše (xan1242 / Tenjoin) - * - * This software is provided 'as-is', without any express or implied - * warranty. In no event will the authors be held liable for any damages - * arising from the use of this software. - * - * Permission is granted to anyone to use this software for any purpose, - * including commercial applications, and to alter it and redistribute it - * freely, subject to the following restrictions: - * - * 1. The origin of this software must not be misrepresented; you must not - * claim that you wrote the original software. If you use this software - * in a product, an acknowledgment in the product documentation would be - * appreciated but is not required. - * - * 2. Altered source versions must be plainly marked as such, and must not be - * misrepresented as being the original software. - * - * 3. This notice may not be removed or altered from any source - * distribution. - * - */ -#ifndef LINB_INI_PARSER_HPP -#define LINB_INI_PARSER_HPP - - /* - * STL-like INI Container - */ - -#include // for std::string -#include // for std::map -#include // for std::FILE -#include // for std::find_if -#include // for std::function -#include // for std::vector -#include -#include -#include - -namespace linb -{ - template< - class CharT = char, /* Not compatible with other type here, since we're using C streams */ - class StringType = std::basic_string, - class KeyContainer = std::map, - class SectionContainer = std::map - > class basic_ini - { - public: - typedef CharT char_type; - typedef StringType string_type; - typedef KeyContainer key_container; - typedef SectionContainer section_container; - - // Typedef container values types - typedef typename section_container::value_type value_type; - typedef typename section_container::key_type key_type; - typedef typename section_container::mapped_type mapped_type; - - // Typedef common types - typedef typename section_container::size_type size_type; - typedef typename section_container::difference_type difference_type; - - // Typedef iterators - typedef typename section_container::iterator iterator; - typedef typename section_container::const_iterator const_iterator; - typedef typename section_container::reverse_iterator reverse_iterator; - typedef typename section_container::const_reverse_iterator const_reverse_iterator; - - // typedef References and pointers - typedef typename section_container::reference reference; - typedef typename section_container::const_reference const_reference; - typedef typename section_container::pointer pointer; - typedef typename section_container::const_pointer const_pointer; - - private: - section_container data; - - public: - - basic_ini() - { } - - basic_ini(const char_type* filename) - { - this->read_file(filename); - } - - /* Iterator methods */ - iterator begin() - { - return data.begin(); - } - const_iterator begin() const - { - return data.begin(); - } - iterator end() - { - return data.end(); - } - const_iterator end() const - { - return data.end(); - } - const_iterator cbegin() const - { - return data.cbegin(); - } - const_iterator cend() const - { - return data.cend(); - } - - /* Reverse iterator methods */ - reverse_iterator rbegin() - { - return data.rbegin(); - } - const_reverse_iterator rbegin() const - { - return data.rbegin(); - } - reverse_iterator rend() - { - return data.rend(); - } - const_reverse_iterator rend() const - { - return data.rend(); - } - const_reverse_iterator crbegin() const - { - return data.crbegin(); - } - const_reverse_iterator crend() const - { - return data.crend(); - } - - /* Acessing index methods */ - mapped_type& operator[](const string_type& sect) - { - return data[sect]; - } - mapped_type& operator[](string_type&& sect) - { - return data[std::forward(sect)]; - } - mapped_type& at(const string_type& sect) - { - return data.at(sect); - } - const mapped_type& at(const string_type& sect) const - { - return data.at(sect); - } - - /* Capacity information */ - bool empty() const - { - return data.empty(); - } - size_type size() const - { - return data.size(); - } - size_type max_size() const - { - return data.max_size(); - } - - /* Modifiers */ - void clear() - { - return data.clear(); - } - - /* Lookup */ - size_type count(const string_type& sect) - { - return data.count(sect); - } - iterator find(const string_type& sect, bool case_sensitive = false) - { - if (!case_sensitive) - return std::find_if(data.begin(), data.end(), - [§](auto& s) { return std::equal(s.first.begin(), s.first.end(), sect.begin(), sect.end(), - [](char a, char b) {return tolower(a) == tolower(b); }); - }); - else - return data.find(sect); - } - - /* Gets a value from the specified section & key, default_value is returned if the sect & key doesn't exist */ - string_type get(const string_type& sect, const key_type& key, const string_type& default_value) - { - auto it = this->find(sect); - if (it != this->end()) - { - auto itv = it->second.find(key); - if (itv != it->second.end()) - return itv->second; - } - return default_value; - } - - /* Sets the value of a value in the ini */ - void set(const string_type& sect, const key_type& key, const string_type& value) - { - (*this)[sect][key] = value; // no emplace since overwrite! - } - - /* Too lazy to continue this container... If you need more methods, just add it */ - - - bool read_file(std::stringstream& ini_mem) - { - if (ini_mem.rdbuf()->in_avail()) - { - key_container* keys = nullptr; - string_type line; - string_type key; - string_type value; - string_type null_string; - size_type pos; - - // Trims an string - auto trim = [](string_type& s, bool trimLeft, bool trimRight) -> string_type& - { - if (s.size()) - { - // Ignore UTF-8 BOM - while (s.size() >= 3 && s[0] == (char)(0xEF) && s[1] == (char)(0xBB) && s[2] == (char)(0xBF)) - s.erase(s.begin(), s.begin() + 3); - - if (trimLeft) - s.erase(s.begin(), std::find_if(s.begin(), s.end(), std::not_fn(std::function(::isspace)))); - if (trimRight) - s.erase(std::find_if(s.rbegin(), s.rend(), std::not_fn(std::function(::isspace))).base(), s.end()); - } - return s; - }; - - // Start parsing - while (std::getline(ini_mem, line)) - { - // Find comment and remove anything after it from the line - if ((pos = line.find_first_of(';')) != line.npos) - line.erase(pos); - - if ((pos = line.rfind(" //")) != line.npos) - line.erase(pos); - - // Trim the string, and if it gets empty, skip this line - if (trim(line, true, true).empty()) - continue; - - // Find section name - if (line.front() == '[' && line.back() == ']') - { - pos = line.length() - 1; //line.find_first_of(']'); - if (pos != line.npos) - { - trim(key.assign(line, 1, pos - 1), true, true); - keys = &data[std::move(key)]; // Create section - } - else - keys = nullptr; - } - else - { - // Find key and value positions - pos = line.find_first_of('='); - if (pos == line.npos) - { - // There's only the key - key = line; // No need for trim, line is already trimmed - value.clear(); - } - else - { - // There's the key and the value - trim(key.assign(line, 0, pos), false, true); // trim the right - trim(value.assign(line, pos + 1, line.npos), true, false); // trim the left - } - - // Put the key/value into the current keys object, or into the section "" if no section has been found -#if __cplusplus >= 201103L || _MSC_VER >= 1800 - (keys ? *keys : data[null_string]).emplace(std::move(key), std::move(value)); -#else - (keys ? *keys : data[null_string])[key] = value; - key.clear(); value.clear(); -#endif - } - } - - return true; - } - return false; - } - - bool read_file(std::filesystem::path filename) - { - std::ifstream file(filename, std::ios::in); - if (file.is_open()) - { - std::stringstream ss; - ss << file.rdbuf(); - file.close(); - return read_file(ss); - } - return false; - } - - /* - * Dumps the content of this container into an ini file - */ - bool write_file(std::filesystem::path filename) - { - std::ofstream file; - file.open(filename); - if (file.is_open()) - { - bool first = true; - for (auto& sec : this->data) - { - if (!first) - file << '\n'; - file << '[' << sec.first.c_str() << "]\n"; - - first = false; - for (auto& kv : sec.second) - { - if (kv.second.empty()) - file << kv.first.c_str() << '\n'; - else - file << kv.first.c_str() << " = " << kv.second.c_str() << '\n'; - } - } - file.close(); - return true; - } - return false; - } - - - /* - */ - - bool load_file(std::stringstream& filename) - { - return read_file(filename); - } - - bool load_file(std::filesystem::path filename) - { - return read_file(filename); - } - - bool write_file(const StringType& filename) - { - return write_file(filename.c_str()); - } - }; - - - /* Use default basic_ini - * - * Limitations: - * * Not unicode aware - * * Case sensitive - * * Sections must have unique keys - */ - typedef basic_ini<> ini; -} - -#endif - diff --git a/mINI/.gitignore b/mINI/.gitignore new file mode 100644 index 0000000..f584363 --- /dev/null +++ b/mINI/.gitignore @@ -0,0 +1,7 @@ +*~ +*.swp +*.swo +*.vim +/tests/*.ini +/tests/*.test +/tests/*.exe \ No newline at end of file diff --git a/mINI/CHANGELOG.md b/mINI/CHANGELOG.md new file mode 100644 index 0000000..606c07d --- /dev/null +++ b/mINI/CHANGELOG.md @@ -0,0 +1,54 @@ +## 0.9.15 (January 11, 2024) +- `BUGFIX` Fixes G++ warnings and implements a copy assignment operator for mINI::INIMap. ([#28](https://github.com/pulzed/mINI/pull/28)) + +## 0.9.14 (May 27, 2022) +- `BUGFIX` Fixes C4310 warning. ([#19](https://github.com/pulzed/mINI/issues/19)) + +## 0.9.13 (April 25, 2022) +- `BUGFIX` Writer now understands UTF-8 BOM-encoded files. ([#7](https://github.com/pulzed/mINI/issues/17)) +- `BUGFIX` Fixes a bug introduced in 0.9.12 where reader would break when reading empty files. + +## 0.9.12 (April 24, 2022) +- `BUGFIX` Fixes parser breaking for UTF-8 BOM-encoded files. ([#7](https://github.com/pulzed/mINI/issues/17)) + +## 0.9.11 (October 6, 2021) +- `BUGFIX` Fixes various compiler warnings. + +## 0.9.10 (March 4, 2021) +- `BUGFIX` Change delimiter constants to `const char* const` to prevent unnecessary allocations. ([#5](https://github.com/pulzed/mINI/issues/5)) + +## 0.9.9 (February 22, 2021) +- `BUGFIX` Adds missing cctype header. ([#4](https://github.com/pulzed/mINI/pull/4)) + +## 0.9.8 (February 14, 2021) +- `BUGFIX` Avoid C4244 warning. ([#2](https://github.com/pulzed/mINI/pull/2)) + +## 0.9.7 (August 14, 2018) +- `FEATURE` Adds case sensitivity toggle via a macro definition. + +## 0.9.6 (May 30, 2018) +- `BUGFIX` Changed how files are written / generated. Proper line endings are selected depending on the system. +- `FEATURE` Support UTF-8 encoding. + +## 0.9.5 (May 28, 2018) +- `BUGFIX` Fixes a bug where writer would skip escaped `=` sequences for new sections. + +## 0.9.4 (May 28, 2018) +- `BUGFIX / FEATURE` Equals (`=`) characters within key names are now allowed. When writing or generating a file, key values containing the `=` characters will be escaped with the `\=` sequence. Upon reading the file back, the escape sequences will again be converted back to `=`. Values do not use escape sequences and may contain `=` characters. +- `BUGFIX` Square bracket characters (`[` and `]`) are now valid within section names. +- `BUGFIX` Trailing comments on section lines are now parsed properly. Fixes a bug where a trailing comment containing the `]` character would break the parser. +- `BUGFIX` Values being written or generated are now stripped of leading and trailing whitespace to conform to the specified format. + +## 0.9.3 (May 24, 2018) +- `BUGFIX` Fixes inconsistent behavior with empty section and key names where read would ignore empty names and write would allow them. +- `FEATURE` Empty key and section names are now allowed. + +## 0.9.2 (May 24, 2018) +- `BUGFIX` Fixes the multiple definition bug [#1](/../../issues/1) +- `BUGFIX` Fixes a bug where a `write()` call to an empty file would begin writing at line 2 instead of 1 due to a reader bug. + +## 0.9.1 (May 20, 2018) +- `BUGFIX` Fixed a bug where the writer would skip writing new keys and values following an empty section. + +## 0.9.0 (May 20, 2018) +- Release v0.9.0 diff --git a/mINI/LICENSE b/mINI/LICENSE new file mode 100644 index 0000000..6c63398 --- /dev/null +++ b/mINI/LICENSE @@ -0,0 +1,19 @@ +The MIT License (MIT) +Copyright (c) 2018 Danijel Durakovic + +Permission is hereby granted, free of charge, to any person obtaining a copy of +this software and associated documentation files (the "Software"), to deal in +the Software without restriction, including without limitation the rights to +use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies +of the Software, and to permit persons to whom the Software is furnished to do +so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS +FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR +COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER +IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/mINI/README.md b/mINI/README.md new file mode 100644 index 0000000..adb69c8 --- /dev/null +++ b/mINI/README.md @@ -0,0 +1,333 @@ +# mINI + +v0.9.15 + +## Info + +This is a tiny, header only C++ library for manipulating INI files. + +It conforms to the following format: +- section and key names are case insensitive +- whitespace around sections, keys and values is ignored +- empty section and key names are allowed +- keys that do not belong to a section are ignored +- comments are lines where the first non-whitespace character is a semicolon (`;`) +- trailing comments are allowed on section lines, but not key/value lines +- every entry exists on a single line and multiline is not supported + + +```INI +; comment +[section] +key = value +``` + + +Files are read on demand in one go, after which the data is kept in memory and is ready to be manipulated. Files are closed after read or write operations. This utility supports lazy writing, which only writes changes and updates and preserves custom formatting and comments. A lazy write invoked by a `write()` call will read the output file, find which changes have been made, and update the file accordingly. If you only need to generate files, use `generate()` instead. + +Section and key order is preserved on read and write operations. Iterating through data will take the same order as the original file or the order in which keys were added to the structure. + +This library operates with the `std::string` type to hold values and relies on your host environment for encoding. It should play nicely with UTF-8 but your mileage may vary. + +## Installation + +This is a header-only library. To install it, just copy everything in `/src/` into your own project's source code folder, or use a custom location and just make sure your compiler sees the additional include directory. Then include the file somewhere in your code: + +```C++ +#include "mini/ini.h" +``` + +You're good to go! + +## Basic examples + +### Reading / writing + +Start with an INI file named `myfile.ini`: +```INI +; amounts of fruits +[fruits] +apples=20 +oranges=30 +``` + +Our code: +```C++ +// first, create a file instance +mINI::INIFile file("myfile.ini"); + +// next, create a structure that will hold data +mINI::INIStructure ini; + +// now we can read the file +file.read(ini); + +// read a value +std::string& amountOfApples = ini["fruits"]["apples"]; + +// update a value +ini["fruits"]["oranges"] = "50"; + +// add a new entry +ini["fruits"]["bananas"] = "100"; + +// write updates to file +file.write(ini); +``` + +After running the code, our INI file now looks like this: +```INI +; amounts of fruits +[fruits] +apples=20 +oranges=50 +bananas=100 +``` + +### Generating a file + +```C++ +// create a file instance +mINI::INIFile file("myfile.ini"); + +// create a data structure +mINI::INIStructure ini; + +// populate the structure +ini["things"]["chairs"] = "20"; +ini["things"]["balloons"] = "100"; + +// generate an INI file (overwrites any previous file) +file.generate(ini); +``` + +## Manipulating files + +The `INIFile` class holds the filename and exposes functions for reading, writing and generating INI files. It does not keep the file open but merely provides an abstraction you can use to access physical files. + +To create a file instance: +```C++ +mINI::INIFile file("myfile.ini"); +``` + +You will also need a structure you can operate on: +```C++ +mINI::INIStructure ini; +``` + +To read from a file: +```C++ +bool readSuccess = file.read(ini); +``` + +To write back to a file while preserving comments and custom formatting: +```C++ +bool writeSuccess = file.write(ini); +``` + +You can set the second parameter to `write()` to `true` if you want the file to be written with pretty-print. Pretty-print adds spaces between key-value pairs and blank lines between sections in the output file: +```C++ +bool writeSuccess = file.write(ini, true); +``` + +A `write()` call will attempt to preserve any custom formatting the original INI file uses and will only use pretty-print for creation of new keys and sections. + +To generate a file: +```C++ +file.generate(ini); +``` + +Note that `generate()` will overwrite any custom formatting and comments from the original file! + +You can use pretty-print with `generate()` as well: +```C++ +file.generate(ini, true); +``` + +Example output for a generated INI file *without* pretty-print: +```INI +[section1] +key1=value1 +key2=value2 +[section2] +key1=value1 +``` + +Example output for a generated INI file *with* pretty-print: +```INI +[section1] +key1 = value1 +key2 = value2 + +[section2] +key1 = value1 +``` + +## Manipulating data + +### Reading data + +There are two ways to read data from the INI structure. You can either use the `[]` operator or the `get()` function: + +```C++ +// read value - if key or section don't exist, they will be created +// returns reference to real value +std::string& value = ini["section"]["key"]; + +// read value safely - if key or section don't exist they will NOT be created +// returns a copy +std::string value = ini.get("section").get("key"); +``` + +The difference between `[]` and `get()` operations is that `[]` returns a reference to **real** data (that you may modify) and creates a new item automatically if one does not already exist, whereas `get()` returns a **copy** of the data and doesn't create new items in the structure. Use `has()` before doing any operations with `[]` if you wish to avoid altering the structure. + +You may combine usage of `[]` and `get()`. + +Section and key names are case insensitive and are stripped of leading and trailing whitespace. `ini["section"]` is the same as `ini["SECTION"]` is the same as `ini[" sEcTiOn "]` and so on, and same for keys. Generated files always use lower case for section and key names. Writing to an existing file will preserve letter cases of the original file whenever those keys or sections already exists. + +### Updating data + +To set or update a value: +```C++ +ini["section"]["key"] = "value"; +``` + +Note that when writing to a file, values will be stripped of leading and trailing whitespace . For example, the following value will be converted to just `"c"` when reading back from a file: `ini["a"]["b"] = " c ";` + +You can set multiple values at once by using `set()`: +```C++ +ini["section"].set({ + {"key1", "value1"}, + {"key2", "value2"} +}); +``` + +To create an empty section, simply do: +```C++ +ini["section"]; +``` + +Similarly, to create an empty key: +```C++ +ini["section"]["key"]; +``` + +To remove a single key from a section: +```C++ +bool removeSuccess = ini["section"].remove("key"); +``` + +To remove a section: +```C++ +bool removeSuccess = ini.remove("section"); +``` + +To remove all keys from a section: +```C++ +ini["section"].clear(); +``` + +To remove all data in structure: +```C++ +ini.clear(); +``` + +### Other functions + +To check if a section is present: +```C++ +bool hasSection = ini.has("section"); +``` + +To check if a key within a section is present: +```C++ +bool hasKey = ini["section"].has("key"); +``` + +To get the number of keys in a section: +```C++ +size_t n_keys = ini["section"].size(); +``` + +To get the number of sections in the structure: +```C++ +size_t n_sections = ini.size(); +``` + +### Nitty-gritty + +Keep in mind that `[]` will always create a new item if the item does not already exist! You can use `has()` to check if an item exists before performing further operations. Remember that `get()` will return a copy of data, so you should **not** be doing removes or updates to data with it! + +Usage of the `[]` operator shouldn't be a problem in most real-world cases where you're doing lookups on known keys and you may not care if empty keys or sections get created. However - if you have a situation where you do not want new items to be added to the structure, either use `get()` to retreive items, or if you don't want to be working with copies of data, use `has()` before using the `[]` operator if you want to be on the safe side. + +Short example that demonstrates safe manipulation of data: +```C++ +if (ini.has("section")) +{ + // we have section, we can access it safely without creating a new one + auto& collection = ini["section"]; + if (collection.has("key")) + { + // we have key, we can access it safely without creating a new one + auto& value = collection["key"]; + } +} +``` + +## Iteration + +You can traverse the structure in order of insertion. The following example loops through the structure and displays results in a familiar format: +```C++ +for (auto const& it : ini) +{ + auto const& section = it.first; + auto const& collection = it.second; + std::cout << "[" << section << "]" << std::endl; + for (auto const& it2 : collection) + { + auto const& key = it2.first; + auto const& value = it2.second; + std::cout << key << "=" << value << std::endl; + } +} +``` + +`it.first` is always `std::string` type. + +`it.second` is an object which is either a `mINI::INIMap` type on the first level or `std::string` type on the second level. + +The API only exposes a `const_iterator`, so you can't use iterators to manipulate data directly. You can however access the structure as normal while iterating: + +```C++ +// change all values in the structure to "banana" +for (auto const& it : ini) +{ + auto const& section = it.first; + auto const& collection = it.second; + for (auto const& it2 : collection) + { + auto const& key = it2.first; + ini[section][key] = "banana"; // O(1) because hashmaps + } +} +``` + +## Case sensitivity + +If you wish to make the library not ignore letter case, add the directive `#define MINI_CASE_SENSITIVE` **before** including the library: +```C++ +#define MINI_CASE_SENSITIVE +#include "mini/ini.h" +``` + +This will affect reading and writing from files and access to the structure. + +## Thanks + +- [lest](https://github.com/martinmoene/lest) - testing framework + +## License + +Copyright © 2018 Danijel Durakovic + +Licensed under the terms of the [MIT license](LICENSE) diff --git a/mINI/icon.png b/mINI/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..850432e443f656347dcce27391e2518208152aca GIT binary patch literal 1634 zcmZvc4K$N`9LJwAFLAvTraF||ymdpAklYq?Y?$|o;cO+!+bD_B#*l=to30SU^*VVe zrdW&|61U8IEF70Ad=luWAIlt%mf1m&J{r-Q?eS2F=DT)0O002lK z;4nx2wNWs{MftPiM}IK@0LA#2o7*GI%~gV~2YUPXdjWtZ5l1wIH$#9kShiKn5^&x#kB;MRV@3&o0P^qf56Yi zB#M%Yn_w~LAIS^*3?)-nEdwIr-Sun9m@h6+Wr@QKnN2Yo)xfI9LF4T~u{HEjwx`k@ zM~GACg*)hWejPmbyYL0y0dycJn3QiwMXid9V}%t5JdjLbozO_42C`etZJ}G_q{SC;QLQ6nR;dV6X;cY#Y_GB-_orf0>Zm#>do)1?~tv4~!> zwuAu<0w`tBOnzlo5ZpBw03_uE0|aC|*~>4A-9R8M#3m(Wq>MGJgCx-a07fHVXPv`_ zIKz5ahKsxi-3X2hnRfS9{785O5@r&p&fZ=&YUdDY70^gS%q)}&pT?dl&9L>+hbqk- zy479;XOW!r<1HLs-tKMD2${!XO8Z!INrO{$+`Phpb*7u`J1_te5LtI;FZ=#1m#eg~ zyKI2XH-p+&RPq~D_i3D`s$o1`_+`UfUWwggtC8+~B3u9J&_FE}@;OissmHyDspku8f) zRAOX*pJsK8aO{@9*)6Rd12u+5=4#M+$t#Eep-7? z*~dYR;8D9Xxe*(oqz~#_@7Uhz&YXC8!HB7*tOB{h{o%w6xxl+J**OQ~WcRMQj8P zXRz~(bT#zuFq2t$fHvqKe|mO&+>13&9mb}9{<^yQfx0mfJ#T}$}W-2lnkh*Iss z#r&*B_9Ivg_tmBrE2LYSqy~grDU%lQ_*Z8h|JasuSsg?({0zzQxpt5HP;Qhql1IIM zd}jTU(5SpP7!W}I6kqvkOMqkk-wKz5Ye#G^`_gdUKi$q1IpRM>(IYypXvL#4{MnD{ zd7Ts1SdLSPftfmBOV~~-XMZ0BI!N7TnFmqzb;w)xeEM6issrQUFlpvmTlwzx8b_|Q z)b5pDI2$r`@9G2l!|NRju7ebvK?=f?W2ZG(^X7+5 zIk!%PFREl_6L#SPGJx~&r)Fzyq1#oW%A|1&MvZBQaGkr3Q*s0ze_-)eRhf0K zl~g^6=;(*H+3HL|cajamBzsT1Yq~h$f>POTSXn^xi^(^zF2*Rd703Vk00;|PSh*P{ F>K}c$wfz79 literal 0 HcmV?d00001 diff --git a/mINI/src/mini/ini.h b/mINI/src/mini/ini.h new file mode 100644 index 0000000..52ccf0c --- /dev/null +++ b/mINI/src/mini/ini.h @@ -0,0 +1,885 @@ +/* + * The MIT License (MIT) + * Copyright (c) 2018 Danijel Durakovic + * + * Permission is hereby granted, free of charge, to any person obtaining a copy of + * this software and associated documentation files (the "Software"), to deal in + * the Software without restriction, including without limitation the rights to + * use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies + * of the Software, and to permit persons to whom the Software is furnished to do + * so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS + * FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR + * COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER + * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN + * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + * + */ + +/////////////////////////////////////////////////////////////////////////////// +// +// /mINI/ v0.9.15 +// An INI file reader and writer for the modern age. +// +/////////////////////////////////////////////////////////////////////////////// +// +// A tiny utility library for manipulating INI files with a straightforward +// API and a minimal footprint. It conforms to the (somewhat) standard INI +// format - sections and keys are case insensitive and all leading and +// trailing whitespace is ignored. Comments are lines that begin with a +// semicolon. Trailing comments are allowed on section lines. +// +// Files are read on demand, upon which data is kept in memory and the file +// is closed. This utility supports lazy writing, which only writes changes +// and updates to a file and preserves custom formatting and comments. A lazy +// write invoked by a write() call will read the output file, find what +// changes have been made and update the file accordingly. If you only need to +// generate files, use generate() instead. Section and key order is preserved +// on read, write and insert. +// +/////////////////////////////////////////////////////////////////////////////// +// +// /* BASIC USAGE EXAMPLE: */ +// +// /* read from file */ +// mINI::INIFile file("myfile.ini"); +// mINI::INIStructure ini; +// file.read(ini); +// +// /* read value; gets a reference to actual value in the structure. +// if key or section don't exist, a new empty value will be created */ +// std::string& value = ini["section"]["key"]; +// +// /* read value safely; gets a copy of value in the structure. +// does not alter the structure */ +// std::string value = ini.get("section").get("key"); +// +// /* set or update values */ +// ini["section"]["key"] = "value"; +// +// /* set multiple values */ +// ini["section2"].set({ +// {"key1", "value1"}, +// {"key2", "value2"} +// }); +// +// /* write updates back to file, preserving comments and formatting */ +// file.write(ini); +// +// /* or generate a file (overwrites the original) */ +// file.generate(ini); +// +/////////////////////////////////////////////////////////////////////////////// +// +// Long live the INI file!!! +// +/////////////////////////////////////////////////////////////////////////////// + +#ifndef MINI_INI_H_ +#define MINI_INI_H_ + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +namespace mINI +{ + namespace INIStringUtil + { + const char* const whitespaceDelimiters = " \t\n\r\f\v"; + inline void trim(std::string& str) + { + str.erase(str.find_last_not_of(whitespaceDelimiters) + 1); + str.erase(0, str.find_first_not_of(whitespaceDelimiters)); + } +#ifndef MINI_CASE_SENSITIVE + inline void toLower(std::string& str) + { + std::transform(str.begin(), str.end(), str.begin(), [](const char c) { + return static_cast(std::tolower(c)); + }); + } +#endif + inline void replace(std::string& str, std::string const& a, std::string const& b) + { + if (!a.empty()) + { + std::size_t pos = 0; + while ((pos = str.find(a, pos)) != std::string::npos) + { + str.replace(pos, a.size(), b); + pos += b.size(); + } + } + } +#ifdef _WIN32 + const char* const endl = "\r\n"; +#else + const char* const endl = "\n"; +#endif + } + + template + class INIMap + { + private: + using T_DataIndexMap = std::unordered_map; + using T_DataItem = std::tuple; + using T_DataContainer = std::vector; + using T_MultiArgs = typename std::vector>; + + T_DataIndexMap dataIndexMap; + T_DataContainer data; + + inline std::size_t setEmpty(std::string& key) + { + std::size_t index = data.size(); + dataIndexMap[key] = index; + data.emplace_back(key, T(), std::string()); + return index; + } + + public: + using const_iterator = typename T_DataContainer::const_iterator; + + INIMap() { } + + INIMap(INIMap const& other) : dataIndexMap(other.dataIndexMap), data(other.data) + { + } + + INIMap& operator=(INIMap const& other) + { + std::size_t data_size = other.data.size(); + for (std::size_t i = 0; i < data_size; ++i) + { + auto const& key = std::get<0>(other.data[i]); + auto const& obj = std::get<1>(other.data[i]); + auto const& com = std::get<2>(other.data[i]); + data.emplace_back(key, obj, com); + } + dataIndexMap = T_DataIndexMap(other.dataIndexMap); + return *this; + } + + T& operator[](std::string key) + { + INIStringUtil::trim(key); +#ifndef MINI_CASE_SENSITIVE + INIStringUtil::toLower(key); +#endif + auto it = dataIndexMap.find(key); + bool hasIt = (it != dataIndexMap.end()); + std::size_t index = (hasIt) ? it->second : setEmpty(key); + return std::get<1>(data[index]); + } + T get(std::string key) const + { + INIStringUtil::trim(key); +#ifndef MINI_CASE_SENSITIVE + INIStringUtil::toLower(key); +#endif + auto it = dataIndexMap.find(key); + if (it == dataIndexMap.end()) + { + return T(); + } + return T(std::get<1>(data[it->second])); + } + void setComment(std::string key, std::string comment) + { + INIStringUtil::trim(key); +#ifndef MINI_CASE_SENSITIVE + INIStringUtil::toLower(key); +#endif + auto it = dataIndexMap.find(key); + if (it != dataIndexMap.end()) + std::get<2>(data[it->second]) = comment; + } + T getComment(std::string key) const + { + INIStringUtil::trim(key); +#ifndef MINI_CASE_SENSITIVE + INIStringUtil::toLower(key); +#endif + auto it = dataIndexMap.find(key); + if (it == dataIndexMap.end()) + { + return T(); + } + return T(std::get<2>(data[it->second])); + } + bool has(std::string key) const + { + INIStringUtil::trim(key); +#ifndef MINI_CASE_SENSITIVE + INIStringUtil::toLower(key); +#endif + return (dataIndexMap.count(key) == 1); + } + size_t count(std::string key) const + { + INIStringUtil::trim(key); +#ifndef MINI_CASE_SENSITIVE + INIStringUtil::toLower(key); +#endif + return std::count_if(data.begin(), data.end(), [&key](const auto& i) { return std::get<0>(i) == key; }); + } + void set(std::string key, T obj, std::string com = {}, bool bAllowMultiple = false) + { + INIStringUtil::trim(key); +#ifndef MINI_CASE_SENSITIVE + INIStringUtil::toLower(key); +#endif + auto it = dataIndexMap.find(key); + if (!bAllowMultiple && it != dataIndexMap.end()) + { + std::get<1>(data[it->second]) = obj; + std::get<2>(data[it->second]) = com; + } + else + { + dataIndexMap[key] = data.size(); + data.emplace_back(key, obj, com); + } + } + void set(T_MultiArgs const& multiArgs) + { + for (auto const& it : multiArgs) + { + auto const& key = std::get<0>(it); + auto const& obj = std::get<1>(it); + auto const& com = std::get<2>(it); + set(key, obj, com); + } + } + bool remove(std::string key) + { + INIStringUtil::trim(key); +#ifndef MINI_CASE_SENSITIVE + INIStringUtil::toLower(key); +#endif + auto it = dataIndexMap.find(key); + if (it != dataIndexMap.end()) + { + std::size_t index = it->second; + data.erase(data.begin() + index); + dataIndexMap.erase(it); + for (auto& it2 : dataIndexMap) + { + auto& vi = it2.second; + if (vi > index) + { + vi--; + } + } + return true; + } + return false; + } + void clear() + { + data.clear(); + dataIndexMap.clear(); + } + std::size_t size() const + { + return data.size(); + } + const_iterator begin() const { return data.begin(); } + const_iterator end() const { return data.end(); } + }; + + using INIStructure = INIMap>; + + namespace INIParser + { + using T_ParseValues = std::tuple; + + enum class PDataType : char + { + PDATA_NONE, + PDATA_COMMENT, + PDATA_SECTION, + PDATA_KEYVALUE_COMMENT, + PDATA_UNKNOWN + }; + + inline size_t getCommentAt(std::string_view line) + { + auto commentAt = line.find_first_of(';'); + if (commentAt == std::string::npos) + { + commentAt = line.find("//"); + if (commentAt == std::string::npos) + commentAt = line.find_first_of('#'); + } + return commentAt; + } + + inline PDataType parseLine(std::string line, T_ParseValues& parseData) + { + std::get<0>(parseData).clear(); + std::get<1>(parseData).clear(); + std::get<2>(parseData).clear(); + INIStringUtil::trim(line); + if (line.empty()) + { + return PDataType::PDATA_NONE; + } + char firstCharacter = line[0]; + char secondCharacter = line[1]; + if (firstCharacter == '#' || firstCharacter == ';' || (firstCharacter == '/' && secondCharacter == '/')) + { + std::get<2>(parseData) = line; + return PDataType::PDATA_COMMENT; + } + if (firstCharacter == '[') + { + auto commentAt = getCommentAt(line); + if (commentAt != std::string::npos) + { + line = line.substr(0, commentAt); + } + auto closingBracketAt = line.find_last_of(']'); + if (closingBracketAt != std::string::npos) + { + auto section = line.substr(1, closingBracketAt - 1); + INIStringUtil::trim(section); + std::get<0>(parseData) = section; + return PDataType::PDATA_SECTION; + } + } + auto lineNorm = line; + INIStringUtil::replace(lineNorm, "\\=", " "); + auto equalsAt = lineNorm.find_first_of('='); + if (equalsAt != std::string::npos) + { + auto key = line.substr(0, equalsAt); + INIStringUtil::trim(key); + INIStringUtil::replace(key, "\\=", "="); + auto value = line.substr(equalsAt + 1); + auto comment = std::string(); + auto commentAt = getCommentAt(line); + if (commentAt != std::string::npos) { + value = line.substr(0, commentAt); + value = value.substr(equalsAt + 1); + comment = line.substr(commentAt); + auto ident = value; + while (ident.back() == ' ') + { + ident.pop_back(); + comment.insert(0, " "); + } + } + INIStringUtil::trim(value); + std::get<0>(parseData) = key; + std::get<1>(parseData) = value; + std::get<2>(parseData) = comment; + return PDataType::PDATA_KEYVALUE_COMMENT; + } + return PDataType::PDATA_UNKNOWN; + } + } + + class INIReader + { + public: + using T_LineData = std::vector; + using T_LineDataPtr = std::shared_ptr; + + bool isBOM = false; + + private: + std::ifstream fileReadStream; + T_LineDataPtr lineData; + + T_LineData readFile() + { + fileReadStream.seekg(0, std::ios::end); + const std::size_t fileSize = static_cast(fileReadStream.tellg()); + fileReadStream.seekg(0, std::ios::beg); + if (fileSize >= 3) { + const char header[3] = { + static_cast(fileReadStream.get()), + static_cast(fileReadStream.get()), + static_cast(fileReadStream.get()) + }; + isBOM = ( + header[0] == static_cast(0xEF) && + header[1] == static_cast(0xBB) && + header[2] == static_cast(0xBF) + ); + } + else { + isBOM = false; + } + std::string fileContents; + fileContents.resize(fileSize); + fileReadStream.seekg(isBOM ? 3 : 0, std::ios::beg); + fileReadStream.read(&fileContents[0], fileSize); + fileReadStream.close(); + T_LineData output; + if (fileSize == 0) + { + return output; + } + std::string buffer; + buffer.reserve(50); + for (std::size_t i = 0; i < fileSize; ++i) + { + char& c = fileContents[i]; + if (c == '\n') + { + output.emplace_back(buffer); + buffer.clear(); + continue; + } + if (c != '\0' && c != '\r') + { + buffer += c; + } + } + output.emplace_back(buffer); + return output; + } + + public: + INIReader(std::filesystem::path const& filename, bool keepLineData = false) + { + fileReadStream.open(filename, std::ios::in | std::ios::binary); + if (keepLineData) + { + lineData = std::make_shared(); + } + } + ~INIReader() { } + + bool operator>>(INIStructure& data) + { + if (!fileReadStream.is_open()) + { + return false; + } + T_LineData fileLines = readFile(); + std::string section; + bool inSection = false; + INIParser::T_ParseValues parseData; + for (auto const& line : fileLines) + { + auto parseResult = INIParser::parseLine(line, parseData); + if (parseResult == INIParser::PDataType::PDATA_SECTION) + { + inSection = true; + data[section = std::get<0>(parseData)]; + } + else if (inSection && (parseResult == INIParser::PDataType::PDATA_KEYVALUE_COMMENT || + parseResult == INIParser::PDataType::PDATA_NONE || parseResult == INIParser::PDataType::PDATA_COMMENT)) + { + auto const& key = std::get<0>(parseData); + auto const& value = std::get<1>(parseData); + auto const& comment = std::get<2>(parseData); + data[section].set(key, value, comment, true); + } + if (lineData && parseResult != INIParser::PDataType::PDATA_UNKNOWN) + { + if (parseResult == INIParser::PDataType::PDATA_KEYVALUE_COMMENT && !inSection) + { + continue; + } + lineData->emplace_back(line); + } + } + return true; + } + T_LineDataPtr getLines() + { + return lineData; + } + }; + + class INIGenerator + { + private: + std::ofstream fileWriteStream; + + public: + bool prettyPrint = false; + + INIGenerator(std::filesystem::path const& filename) + { + fileWriteStream.open(filename, std::ios::out | std::ios::binary); + } + ~INIGenerator() { } + + bool operator<<(INIStructure const& data) + { + if (!fileWriteStream.is_open()) + { + return false; + } + if (!data.size()) + { + return true; + } + auto it = data.begin(); + for (;;) + { + auto const& section = std::get<0>(*it); + auto const& collection = std::get<1>(*it); + fileWriteStream + << "[" + << section + << "]"; + if (collection.size()) + { + fileWriteStream << INIStringUtil::endl; + auto it2 = collection.begin(); + for (;;) + { + auto key = std::get<0>(*it2); + INIStringUtil::replace(key, "=", "\\="); + auto value = std::get<1>(*it2); + INIStringUtil::trim(value); + auto comment = std::get<2>(*it2); + fileWriteStream + << key + << ((key.length() || value.length()) ? ((prettyPrint) ? " = " : "=") : "") + << value + << comment; + if (++it2 == collection.end()) + { + break; + } + fileWriteStream << INIStringUtil::endl; + } + } + if (++it == data.end()) + { + break; + } + fileWriteStream << INIStringUtil::endl; + if (prettyPrint) + { + fileWriteStream << INIStringUtil::endl; + } + } + return true; + } + }; + + class INIWriter + { + private: + using T_LineData = std::vector; + using T_LineDataPtr = std::shared_ptr; + + std::filesystem::path filename; + + T_LineData getLazyOutput(T_LineDataPtr const& lineData, INIStructure& data, INIStructure& original) + { + T_LineData output; + INIParser::T_ParseValues parseData; + std::string sectionCurrent; + bool parsingSection = false; + bool continueToNextSection = false; + bool discardNextEmpty = false; + bool writeNewKeys = false; + std::size_t lastKeyLine = 0; + for (auto line = lineData->begin(); line != lineData->end(); ++line) + { + if (!writeNewKeys) + { + auto parseResult = INIParser::parseLine(*line, parseData); + if (parseResult == INIParser::PDataType::PDATA_SECTION) + { + if (parsingSection) + { + writeNewKeys = true; + parsingSection = false; + --line; + continue; + } + sectionCurrent = std::get<0>(parseData); + if (data.has(sectionCurrent)) + { + parsingSection = true; + continueToNextSection = false; + discardNextEmpty = false; + output.emplace_back(*line); + lastKeyLine = output.size(); + } + else + { + continueToNextSection = true; + discardNextEmpty = true; + continue; + } + } + else if (parseResult == INIParser::PDataType::PDATA_KEYVALUE_COMMENT) + { + if (continueToNextSection) + { + continue; + } + if (data.has(sectionCurrent)) + { + auto& collection = data[sectionCurrent]; + auto const& key = std::get<0>(parseData); + auto const& value = std::get<1>(parseData); + auto const& comment = std::get<2>(parseData); + if (collection.has(key)) + { + auto outputValue = collection[key]; + auto outputComment = collection.getComment(key); + if (value == outputValue || collection.count(key) > 1) + { + output.emplace_back(*line); + } + else + { + INIStringUtil::trim(outputValue); + auto lineNorm = *line; + INIStringUtil::replace(lineNorm, "\\=", " "); + auto equalsAt = lineNorm.find_first_of('='); + auto valueAt = lineNorm.find_first_not_of( + INIStringUtil::whitespaceDelimiters, + equalsAt + 1 + ); + std::string outputLine = line->substr(0, valueAt); + if (prettyPrint && equalsAt + 1 == valueAt) + { + outputLine += " "; + } + outputLine += outputValue; + + if (!outputComment.empty() && outputComment.front() == ' ') + { + int i = outputValue.size() - value.size(); + if (i < 0) + { + while (i < 0) { + outputComment.insert(0, " "); + i++; + } + } + else if (i > 0) + { + auto pos = outputComment.find_first_not_of(' '); + while (i > 0 && pos >= size_t(i)) { + if (outputComment.front() == ' ') + outputComment.erase(0, 1); + i--; + } + } + } + outputLine += outputComment; + output.emplace_back(outputLine); + } + lastKeyLine = output.size(); + } + } + } + else + { + if (discardNextEmpty && line->empty()) + { + discardNextEmpty = false; + } + else if (parseResult != INIParser::PDataType::PDATA_UNKNOWN) + { + output.emplace_back(*line); + } + } + } + if (writeNewKeys || std::next(line) == lineData->end()) + { + T_LineData linesToAdd; + if (data.has(sectionCurrent) && original.has(sectionCurrent)) + { + auto const& collection = data[sectionCurrent]; + auto const& collectionOriginal = original[sectionCurrent]; + for (auto const& it : collection) + { + auto key = std::get<0>(it); + if (collectionOriginal.has(key)) + { + continue; + } + auto value = std::get<1>(it); + INIStringUtil::replace(key, "=", "\\="); + INIStringUtil::trim(value); + linesToAdd.emplace_back( + key + ((prettyPrint) ? " = " : "=") + value + ); + } + } + if (!linesToAdd.empty()) + { + output.insert( + output.begin() + lastKeyLine, + linesToAdd.begin(), + linesToAdd.end() + ); + } + if (writeNewKeys) + { + writeNewKeys = false; + --line; + } + } + } + for (auto const& it : data) + { + auto const& section = std::get<0>(it); + if (original.has(section)) + { + continue; + } + if (prettyPrint && output.size() > 0 && !output.back().empty()) + { + output.emplace_back(); + } + output.emplace_back("[" + section + "]"); + auto const& collection = std::get<1>(it); + for (auto const& it2 : collection) + { + auto key = std::get<0>(it2); + auto value = std::get<1>(it2); + INIStringUtil::replace(key, "=", "\\="); + INIStringUtil::trim(value); + output.emplace_back( + key + ((prettyPrint) ? " = " : "=") + value + ); + } + } + return output; + } + + public: + bool prettyPrint = false; + + INIWriter(std::filesystem::path const& filename) + : filename(filename) + { + } + ~INIWriter() { } + + bool operator<<(INIStructure& data) + { + std::error_code ec; + if (!std::filesystem::exists(filename, ec)) + { + INIGenerator generator(filename); + generator.prettyPrint = prettyPrint; + return generator << data; + } + INIStructure originalData; + T_LineDataPtr lineData; + bool readSuccess = false; + bool fileIsBOM = false; + { + INIReader reader(filename, true); + if ((readSuccess = reader >> originalData)) + { + lineData = reader.getLines(); + fileIsBOM = reader.isBOM; + } + } + if (!readSuccess) + { + return false; + } + T_LineData output = getLazyOutput(lineData, data, originalData); + std::ofstream fileWriteStream(filename, std::ios::out | std::ios::binary); + if (fileWriteStream.is_open()) + { + if (fileIsBOM) { + const char utf8_BOM[3] = { + static_cast(0xEF), + static_cast(0xBB), + static_cast(0xBF) + }; + fileWriteStream.write(utf8_BOM, 3); + } + if (output.size()) + { + auto line = output.begin(); + for (;;) + { + fileWriteStream << *line; + if (++line == output.end()) + { + break; + } + fileWriteStream << INIStringUtil::endl; + } + } + return true; + } + return false; + } + }; + + class INIFile + { + private: + std::filesystem::path filename; + + public: + INIFile(std::filesystem::path const& filename) + : filename(filename) + { } + + ~INIFile() { } + + bool read(INIStructure& data) const + { + if (data.size()) + { + data.clear(); + } + if (filename.empty()) + { + return false; + } + INIReader reader(filename); + return reader >> data; + } + bool generate(INIStructure const& data, bool pretty = false) const + { + if (filename.empty()) + { + return false; + } + INIGenerator generator(filename); + generator.prettyPrint = pretty; + return generator << data; + } + bool write(INIStructure& data, bool pretty = false) const + { + if (filename.empty()) + { + return false; + } + INIWriter writer(filename); + writer.prettyPrint = pretty; + return writer << data; + } + }; +} + +#endif // MINI_INI_H_ diff --git a/mINI/tests/build.bat b/mINI/tests/build.bat new file mode 100644 index 0000000..0b38ddb --- /dev/null +++ b/mINI/tests/build.bat @@ -0,0 +1,7 @@ +@echo off +IF %1.==. GOTO ERR +g++ -Wall -Wextra -std=c++17 -I./lest -I./../src -o %1.exe %1.cpp +GOTO END +:ERR +echo Use: %0 [test name] +:END diff --git a/mINI/tests/build.sh b/mINI/tests/build.sh new file mode 100644 index 0000000..c2d756b --- /dev/null +++ b/mINI/tests/build.sh @@ -0,0 +1,6 @@ +#!/bin/bash +if [[ $# -eq 0 ]] ; then + echo Use: $0 [test name] + exit 1 +fi +g++ -Wall -Wextra -std=c++14 -I./lest -I./../src -o $1.test $1.cpp diff --git a/mINI/tests/building.txt b/mINI/tests/building.txt new file mode 100644 index 0000000..a3b4a96 --- /dev/null +++ b/mINI/tests/building.txt @@ -0,0 +1,25 @@ +To build a test, use: + + build [testname] + +Examples: + + build testread + build testwrite + +------------------------------------------------------------ + +To run a test, use: + + run [testname] + +Examples: + + run testread + run testwrite + +------------------------------------------------------------ + +To cleanup all test files: + + clean \ No newline at end of file diff --git a/mINI/tests/clean.bat b/mINI/tests/clean.bat new file mode 100644 index 0000000..e8a3acf --- /dev/null +++ b/mINI/tests/clean.bat @@ -0,0 +1,3 @@ +@echo off +del *.ini +del *.exe \ No newline at end of file diff --git a/mINI/tests/clean.sh b/mINI/tests/clean.sh new file mode 100644 index 0000000..4709738 --- /dev/null +++ b/mINI/tests/clean.sh @@ -0,0 +1,3 @@ +#!/bin/bash +rm *.ini +rm *.test \ No newline at end of file diff --git a/mINI/tests/lest/LICENSE.txt b/mINI/tests/lest/LICENSE.txt new file mode 100644 index 0000000..36b7cd9 --- /dev/null +++ b/mINI/tests/lest/LICENSE.txt @@ -0,0 +1,23 @@ +Boost Software License - Version 1.0 - August 17th, 2003 + +Permission is hereby granted, free of charge, to any person or organization +obtaining a copy of the software and accompanying documentation covered by +this license (the "Software") to use, reproduce, display, distribute, +execute, and transmit the Software, and to prepare derivative works of the +Software, and to permit third-parties to whom the Software is furnished to +do so, all subject to the following: + +The copyright notices in the Software and this entire statement, including +the above license grant, this restriction and the following disclaimer, +must be included in all copies of the Software, in whole or in part, and +all derivative works of the Software, unless such copies or derivative +works are solely in the form of machine-executable object code generated by +a source language processor. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT +SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE +FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE, +ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER +DEALINGS IN THE SOFTWARE. diff --git a/mINI/tests/lest/lest.hpp b/mINI/tests/lest/lest.hpp new file mode 100644 index 0000000..3c96419 --- /dev/null +++ b/mINI/tests/lest/lest.hpp @@ -0,0 +1,1485 @@ +// Copyright 2013-2018 by Martin Moene +// +// lest is based on ideas by Kevlin Henney, see video at +// http://skillsmatter.com/podcast/agile-testing/kevlin-henney-rethinking-unit-testing-in-c-plus-plus +// +// Distributed under the Boost Software License, Version 1.0. (See accompanying +// file LICENSE.txt or copy at http://www.boost.org/LICENSE_1_0.txt) + +#ifndef LEST_LEST_HPP_INCLUDED +#define LEST_LEST_HPP_INCLUDED + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include +#include +#include + +#define lest_MAJOR 1 +#define lest_MINOR 35 +#define lest_PATCH 2 + +#define lest_VERSION lest_STRINGIFY(lest_MAJOR) "." lest_STRINGIFY(lest_MINOR) "." lest_STRINGIFY(lest_PATCH) + +#ifndef lest_FEATURE_AUTO_REGISTER +# define lest_FEATURE_AUTO_REGISTER 0 +#endif + +#ifndef lest_FEATURE_COLOURISE +# define lest_FEATURE_COLOURISE 0 +#endif + +#ifndef lest_FEATURE_LITERAL_SUFFIX +# define lest_FEATURE_LITERAL_SUFFIX 0 +#endif + +#ifndef lest_FEATURE_REGEX_SEARCH +# define lest_FEATURE_REGEX_SEARCH 0 +#endif + +#ifndef lest_FEATURE_TIME_PRECISION +# define lest_FEATURE_TIME_PRECISION 0 +#endif + +#ifndef lest_FEATURE_WSTRING +# define lest_FEATURE_WSTRING 1 +#endif + +#ifdef lest_FEATURE_RTTI +# define lest__cpp_rtti lest_FEATURE_RTTI +#elif defined(__cpp_rtti) +# define lest__cpp_rtti __cpp_rtti +#elif defined(__GXX_RTTI) || defined (_CPPRTTI) +# define lest__cpp_rtti 1 +#else +# define lest__cpp_rtti 0 +#endif + +#if lest_FEATURE_REGEX_SEARCH +# include +#endif + +// Stringify: + +#define lest_STRINGIFY( x ) lest_STRINGIFY_( x ) +#define lest_STRINGIFY_( x ) #x + +// Compiler warning suppression: + +#if defined (__clang__) +# pragma clang diagnostic ignored "-Waggregate-return" +# pragma clang diagnostic ignored "-Woverloaded-shift-op-parentheses" +# pragma clang diagnostic push +# pragma clang diagnostic ignored "-Wunused-comparison" +#elif defined (__GNUC__) +# pragma GCC diagnostic ignored "-Waggregate-return" +# pragma GCC diagnostic push +#endif + +// Suppress shadow and unused-value warning for sections: + +#if defined (__clang__) +# define lest_SUPPRESS_WSHADOW _Pragma( "clang diagnostic push" ) \ + _Pragma( "clang diagnostic ignored \"-Wshadow\"" ) +# define lest_SUPPRESS_WUNUSED _Pragma( "clang diagnostic push" ) \ + _Pragma( "clang diagnostic ignored \"-Wunused-value\"" ) +# define lest_RESTORE_WARNINGS _Pragma( "clang diagnostic pop" ) + +#elif defined (__GNUC__) +# define lest_SUPPRESS_WSHADOW _Pragma( "GCC diagnostic push" ) \ + _Pragma( "GCC diagnostic ignored \"-Wshadow\"" ) +# define lest_SUPPRESS_WUNUSED _Pragma( "GCC diagnostic push" ) \ + _Pragma( "GCC diagnostic ignored \"-Wunused-value\"" ) +# define lest_RESTORE_WARNINGS _Pragma( "GCC diagnostic pop" ) +#else +# define lest_SUPPRESS_WSHADOW /*empty*/ +# define lest_SUPPRESS_WUNUSED /*empty*/ +# define lest_RESTORE_WARNINGS /*empty*/ +#endif + +// C++ language version detection (C++23 is speculative): +// Note: VC14.0/1900 (VS2015) lacks too much from C++14. + +#ifndef lest_CPLUSPLUS +# if defined(_MSVC_LANG ) && !defined(__clang__) +# define lest_CPLUSPLUS (_MSC_VER == 1900 ? 201103L : _MSVC_LANG ) +# else +# define lest_CPLUSPLUS __cplusplus +# endif +#endif + +#define lest_CPP98_OR_GREATER ( lest_CPLUSPLUS >= 199711L ) +#define lest_CPP11_OR_GREATER ( lest_CPLUSPLUS >= 201103L ) +#define lest_CPP14_OR_GREATER ( lest_CPLUSPLUS >= 201402L ) +#define lest_CPP17_OR_GREATER ( lest_CPLUSPLUS >= 201703L ) +#define lest_CPP20_OR_GREATER ( lest_CPLUSPLUS >= 202002L ) +#define lest_CPP23_OR_GREATER ( lest_CPLUSPLUS >= 202300L ) + +#if ! defined( lest_NO_SHORT_MACRO_NAMES ) && ! defined( lest_NO_SHORT_ASSERTION_NAMES ) +# define MODULE lest_MODULE + +# if ! lest_FEATURE_AUTO_REGISTER +# define CASE lest_CASE +# define CASE_ON lest_CASE_ON +# define SCENARIO lest_SCENARIO +# endif + +# define SETUP lest_SETUP +# define SECTION lest_SECTION + +# define EXPECT lest_EXPECT +# define EXPECT_NOT lest_EXPECT_NOT +# define EXPECT_NO_THROW lest_EXPECT_NO_THROW +# define EXPECT_THROWS lest_EXPECT_THROWS +# define EXPECT_THROWS_AS lest_EXPECT_THROWS_AS + +# define GIVEN lest_GIVEN +# define WHEN lest_WHEN +# define THEN lest_THEN +# define AND_WHEN lest_AND_WHEN +# define AND_THEN lest_AND_THEN +#endif + +#if lest_FEATURE_AUTO_REGISTER +#define lest_SCENARIO( specification, sketch ) lest_CASE( specification, lest::text("Scenario: ") + sketch ) +#else +#define lest_SCENARIO( sketch ) lest_CASE( lest::text("Scenario: ") + sketch ) +#endif +#define lest_GIVEN( context ) lest_SETUP( lest::text(" Given: ") + context ) +#define lest_WHEN( story ) lest_SECTION( lest::text(" When: ") + story ) +#define lest_THEN( story ) lest_SECTION( lest::text(" Then: ") + story ) +#define lest_AND_WHEN( story ) lest_SECTION( lest::text("And then: ") + story ) +#define lest_AND_THEN( story ) lest_SECTION( lest::text("And then: ") + story ) + +#if lest_FEATURE_AUTO_REGISTER + +# define lest_CASE( specification, proposition ) \ + static void lest_FUNCTION( lest::env & ); \ + namespace { lest::add_test lest_REGISTRAR( specification, lest::test( proposition, lest_FUNCTION ) ); } \ + static void lest_FUNCTION( lest::env & lest_env ) + +#else // lest_FEATURE_AUTO_REGISTER + +# define lest_CASE( proposition ) \ + proposition, []( lest::env & lest_env ) + +# define lest_CASE_ON( proposition, ... ) \ + proposition, [__VA_ARGS__]( lest::env & lest_env ) + +# define lest_MODULE( specification, module ) \ + namespace { lest::add_module _( specification, module ); } + +#endif //lest_FEATURE_AUTO_REGISTER + +#define lest_SETUP( context ) \ + for ( int lest__section = 0, lest__count = 1; lest__section < lest__count; lest__count -= 0==lest__section++ ) \ + for ( lest::ctx lest__ctx_setup( lest_env, context ); lest__ctx_setup; ) + +#define lest_SECTION( proposition ) \ + lest_SUPPRESS_WSHADOW \ + static int lest_UNIQUE( id ) = 0; \ + if ( lest::guard( lest_UNIQUE( id ), lest__section, lest__count ) ) \ + for ( int lest__section = 0, lest__count = 1; lest__section < lest__count; lest__count -= 0==lest__section++ ) \ + for ( lest::ctx lest__ctx_section( lest_env, proposition ); lest__ctx_section; ) \ + lest_RESTORE_WARNINGS + +#define lest_EXPECT( expr ) \ + do { \ + try \ + { \ + if ( lest::result score = lest_DECOMPOSE( expr ) ) \ + throw lest::failure{ lest_LOCATION, #expr, score.decomposition }; \ + else if ( lest_env.pass() ) \ + lest::report( lest_env.os, lest::passing{ lest_LOCATION, #expr, score.decomposition, lest_env.zen() }, lest_env.context() ); \ + } \ + catch(...) \ + { \ + lest::inform( lest_LOCATION, #expr ); \ + } \ + } while ( lest::is_false() ) + +#define lest_EXPECT_NOT( expr ) \ + do { \ + try \ + { \ + if ( lest::result score = lest_DECOMPOSE( expr ) ) \ + { \ + if ( lest_env.pass() ) \ + lest::report( lest_env.os, lest::passing{ lest_LOCATION, lest::not_expr( #expr ), lest::not_expr( score.decomposition ), lest_env.zen() }, lest_env.context() ); \ + } \ + else \ + throw lest::failure{ lest_LOCATION, lest::not_expr( #expr ), lest::not_expr( score.decomposition ) }; \ + } \ + catch(...) \ + { \ + lest::inform( lest_LOCATION, lest::not_expr( #expr ) ); \ + } \ + } while ( lest::is_false() ) + +#define lest_EXPECT_NO_THROW( expr ) \ + do \ + { \ + try \ + { \ + lest_SUPPRESS_WUNUSED \ + expr; \ + lest_RESTORE_WARNINGS \ + } \ + catch (...) \ + { \ + lest::inform( lest_LOCATION, #expr ); \ + } \ + if ( lest_env.pass() ) \ + lest::report( lest_env.os, lest::got_none( lest_LOCATION, #expr ), lest_env.context() ); \ + } while ( lest::is_false() ) + +#define lest_EXPECT_THROWS( expr ) \ + do \ + { \ + try \ + { \ + lest_SUPPRESS_WUNUSED \ + expr; \ + lest_RESTORE_WARNINGS \ + } \ + catch (...) \ + { \ + if ( lest_env.pass() ) \ + lest::report( lest_env.os, lest::got{ lest_LOCATION, #expr }, lest_env.context() ); \ + break; \ + } \ + throw lest::expected{ lest_LOCATION, #expr }; \ + } \ + while ( lest::is_false() ) + +#define lest_EXPECT_THROWS_AS( expr, excpt ) \ + do \ + { \ + try \ + { \ + lest_SUPPRESS_WUNUSED \ + expr; \ + lest_RESTORE_WARNINGS \ + } \ + catch ( excpt & ) \ + { \ + if ( lest_env.pass() ) \ + lest::report( lest_env.os, lest::got{ lest_LOCATION, #expr, lest::of_type( #excpt ) }, lest_env.context() ); \ + break; \ + } \ + catch (...) {} \ + throw lest::expected{ lest_LOCATION, #expr, lest::of_type( #excpt ) }; \ + } \ + while ( lest::is_false() ) + +#define lest_UNIQUE( name ) lest_UNIQUE2( name, __LINE__ ) +#define lest_UNIQUE2( name, line ) lest_UNIQUE3( name, line ) +#define lest_UNIQUE3( name, line ) name ## line + +#define lest_DECOMPOSE( expr ) ( lest::expression_decomposer() << expr ) + +#define lest_FUNCTION lest_UNIQUE(__lest_function__ ) +#define lest_REGISTRAR lest_UNIQUE(__lest_registrar__ ) + +#define lest_LOCATION lest::location{__FILE__, __LINE__} + +namespace lest { + +const int exit_max_value = 255; + +using text = std::string; +using texts = std::vector; + +struct env; + +struct test +{ + text name; + std::function behaviour; + +#if lest_FEATURE_AUTO_REGISTER + test( text name_, std::function behaviour_ ) + : name( name_), behaviour( behaviour_) {} +#endif +}; + +using tests = std::vector; + +#if lest_FEATURE_AUTO_REGISTER + +struct add_test +{ + add_test( tests & specification, test const & test_case ) + { + specification.push_back( test_case ); + } +}; + +#else + +struct add_module +{ + template< std::size_t N > + add_module( tests & specification, test const (&module)[N] ) + { + specification.insert( specification.end(), std::begin( module ), std::end( module ) ); + } +}; + +#endif + +struct result +{ + const bool passed; + const text decomposition; + + template< typename T > + result( T const & passed_, text decomposition_) + : passed( !!passed_), decomposition( decomposition_) {} + + explicit operator bool() { return ! passed; } +}; + +struct location +{ + const text file; + const int line; + + location( text file_, int line_) + : file( file_), line( line_) {} +}; + +struct comment +{ + const text info; + + comment( text info_) : info( info_) {} + explicit operator bool() { return ! info.empty(); } +}; + +struct message : std::runtime_error +{ + const text kind; + const location where; + const comment note; + + ~message() throw() {} // GCC 4.6 + + message( text kind_, location where_, text expr_, text note_ = "" ) + : std::runtime_error( expr_), kind( kind_), where( where_), note( note_) {} +}; + +struct failure : message +{ + failure( location where_, text expr_, text decomposition_) + : message{ "failed", where_, expr_ + " for " + decomposition_ } {} +}; + +struct success : message +{ +// using message::message; // VC is lagging here + + success( text kind_, location where_, text expr_, text note_ = "" ) + : message( kind_, where_, expr_, note_ ) {} +}; + +struct passing : success +{ + passing( location where_, text expr_, text decomposition_, bool zen ) + : success( "passed", where_, expr_ + (zen ? "":" for " + decomposition_) ) {} +}; + +struct got_none : success +{ + got_none( location where_, text expr_ ) + : success( "passed: got no exception", where_, expr_ ) {} +}; + +struct got : success +{ + got( location where_, text expr_) + : success( "passed: got exception", where_, expr_) {} + + got( location where_, text expr_, text excpt_) + : success( "passed: got exception " + excpt_, where_, expr_) {} +}; + +struct expected : message +{ + expected( location where_, text expr_, text excpt_ = "" ) + : message{ "failed: didn't get exception", where_, expr_, excpt_ } {} +}; + +struct unexpected : message +{ + unexpected( location where_, text expr_, text note_ = "" ) + : message{ "failed: got unexpected exception", where_, expr_, note_ } {} +}; + +struct guard +{ + int & id; + int const & section; + + guard( int & id_, int const & section_, int & count ) + : id( id_), section( section_) + { + if ( section == 0 ) + id = count++ - 1; + } + operator bool() { return id == section; } +}; + +class approx +{ +public: + explicit approx ( double magnitude ) + : epsilon_ { std::numeric_limits::epsilon() * 100 } + , scale_ { 1.0 } + , magnitude_{ magnitude } {} + + approx( approx const & other ) = default; + + static approx custom() { return approx( 0 ); } + + approx operator()( double new_magnitude ) + { + approx appr( new_magnitude ); + appr.epsilon( epsilon_ ); + appr.scale ( scale_ ); + return appr; + } + + double magnitude() const { return magnitude_; } + + approx & epsilon( double epsilon ) { epsilon_ = epsilon; return *this; } + approx & scale ( double scale ) { scale_ = scale; return *this; } + + friend bool operator == ( double lhs, approx const & rhs ) + { + // Thanks to Richard Harris for his help refining this formula. + return std::abs( lhs - rhs.magnitude_ ) < rhs.epsilon_ * ( rhs.scale_ + (std::min)( std::abs( lhs ), std::abs( rhs.magnitude_ ) ) ); + } + + friend bool operator == ( approx const & lhs, double rhs ) { return operator==( rhs, lhs ); } + friend bool operator != ( double lhs, approx const & rhs ) { return !operator==( lhs, rhs ); } + friend bool operator != ( approx const & lhs, double rhs ) { return !operator==( rhs, lhs ); } + + friend bool operator <= ( double lhs, approx const & rhs ) { return lhs < rhs.magnitude_ || lhs == rhs; } + friend bool operator <= ( approx const & lhs, double rhs ) { return lhs.magnitude_ < rhs || lhs == rhs; } + friend bool operator >= ( double lhs, approx const & rhs ) { return lhs > rhs.magnitude_ || lhs == rhs; } + friend bool operator >= ( approx const & lhs, double rhs ) { return lhs.magnitude_ > rhs || lhs == rhs; } + +private: + double epsilon_; + double scale_; + double magnitude_; +}; + +inline bool is_false( ) { return false; } +inline bool is_true ( bool flag ) { return flag; } + +inline text not_expr( text message ) +{ + return "! ( " + message + " )"; +} + +inline text with_message( text message ) +{ + return "with message \"" + message + "\""; +} + +inline text of_type( text type ) +{ + return "of type " + type; +} + +inline void inform( location where, text expr ) +{ + try + { + throw; + } + catch( message const & ) + { + throw; + } + catch( std::exception const & e ) + { + throw unexpected{ where, expr, with_message( e.what() ) }; \ + } + catch(...) + { + throw unexpected{ where, expr, "of unknown type" }; \ + } +} + +// Expression decomposition: + +template< typename T > +auto make_value_string( T const & value ) -> std::string; + +template< typename T > +auto make_memory_string( T const & item ) -> std::string; + +#if lest_FEATURE_LITERAL_SUFFIX +inline char const * sfx( char const * txt ) { return txt; } +#else +inline char const * sfx( char const * ) { return ""; } +#endif + +inline std::string transformed( char chr ) +{ + struct Tr { char chr; char const * str; } table[] = + { + {'\\', "\\\\" }, + {'\r', "\\r" }, {'\f', "\\f" }, + {'\n', "\\n" }, {'\t', "\\t" }, + }; + + for ( auto tr : table ) + { + if ( chr == tr.chr ) + return tr.str; + } + + // The cast below helps suppress warnings ("-Wtype-limits" on GCC) on architectures where `char` is unsigned. + auto unprintable = [](char c){ return 0 <= static_cast(c) && c < ' '; }; + + auto to_hex_string = [](char c) + { + std::ostringstream os; + os << "\\x" << std::hex << std::setw(2) << std::setfill('0') << static_cast( static_cast(c) ); + return os.str(); + }; + + return unprintable( chr ) ? to_hex_string( chr ) : std::string( 1, chr ); +} + +inline std::string make_tran_string( std::string const & txt ) { std::ostringstream os; for(auto c:txt) os << transformed(c); return os.str(); } +inline std::string make_strg_string( std::string const & txt ) { return "\"" + make_tran_string( txt ) + "\"" ; } +inline std::string make_char_string( char chr ) { return "\'" + make_tran_string( std::string( 1, chr ) ) + "\'" ; } + +inline std::string to_string( std::nullptr_t ) { return "nullptr"; } +inline std::string to_string( std::string const & txt ) { return make_strg_string( txt ); } +#if lest_FEATURE_WSTRING +inline std::string to_string( std::wstring const & txt ) ; +#endif + +inline std::string to_string( char const * const txt ) { return txt ? make_strg_string( txt ) : "{null string}"; } +inline std::string to_string( char * const txt ) { return txt ? make_strg_string( txt ) : "{null string}"; } +#if lest_FEATURE_WSTRING +inline std::string to_string( wchar_t const * const txt ) { return txt ? to_string( std::wstring( txt ) ) : "{null string}"; } +inline std::string to_string( wchar_t * const txt ) { return txt ? to_string( std::wstring( txt ) ) : "{null string}"; } +#endif + +inline std::string to_string( bool flag ) { return flag ? "true" : "false"; } + +inline std::string to_string( signed short value ) { return make_value_string( value ) ; } +inline std::string to_string( unsigned short value ) { return make_value_string( value ) + sfx("u" ); } +inline std::string to_string( signed int value ) { return make_value_string( value ) ; } +inline std::string to_string( unsigned int value ) { return make_value_string( value ) + sfx("u" ); } +inline std::string to_string( signed long value ) { return make_value_string( value ) + sfx("l" ); } +inline std::string to_string( unsigned long value ) { return make_value_string( value ) + sfx("ul" ); } +inline std::string to_string( signed long long value ) { return make_value_string( value ) + sfx("ll" ); } +inline std::string to_string( unsigned long long value ) { return make_value_string( value ) + sfx("ull"); } +inline std::string to_string( double value ) { return make_value_string( value ) ; } +inline std::string to_string( float value ) { return make_value_string( value ) + sfx("f" ); } + +inline std::string to_string( signed char chr ) { return make_char_string( static_cast( chr ) ); } +inline std::string to_string( unsigned char chr ) { return make_char_string( static_cast( chr ) ); } +inline std::string to_string( char chr ) { return make_char_string( chr ); } + +template< typename T > +struct is_streamable +{ + template< typename U > + static auto test( int ) -> decltype( std::declval() << std::declval(), std::true_type() ); + + template< typename > + static auto test( ... ) -> std::false_type; + +#ifdef _MSC_VER + enum { value = std::is_same< decltype( test(0) ), std::true_type >::value }; +#else + static constexpr bool value = std::is_same< decltype( test(0) ), std::true_type >::value; +#endif +}; + +template< typename T > +struct is_container +{ + template< typename U > + static auto test( int ) -> decltype( std::declval().begin() == std::declval().end(), std::true_type() ); + + template< typename > + static auto test( ... ) -> std::false_type; + +#ifdef _MSC_VER + enum { value = std::is_same< decltype( test(0) ), std::true_type >::value }; +#else + static constexpr bool value = std::is_same< decltype( test(0) ), std::true_type >::value; +#endif +}; + +template< typename T, typename R > +using ForEnum = typename std::enable_if< std::is_enum::value, R>::type; + +template< typename T, typename R > +using ForNonEnum = typename std::enable_if< ! std::is_enum::value, R>::type; + +template< typename T, typename R > +using ForStreamable = typename std::enable_if< is_streamable::value, R>::type; + +template< typename T, typename R > +using ForNonStreamable = typename std::enable_if< ! is_streamable::value, R>::type; + +template< typename T, typename R > +using ForContainer = typename std::enable_if< is_container::value, R>::type; + +template< typename T, typename R > +using ForNonContainerNonPointer = typename std::enable_if< ! (is_container::value || std::is_pointer::value), R>::type; + +template< typename T > +auto make_enum_string( T const & item ) -> ForNonEnum +{ +#if lest__cpp_rtti + return text("[type: ") + typeid(T).name() + "]: " + make_memory_string( item ); +#else + return text("[type: (no RTTI)]: ") + make_memory_string( item ); +#endif +} + +template< typename T > +auto make_enum_string( T const & item ) -> ForEnum +{ + return to_string( static_cast::type>( item ) ); +} + +template< typename T > +auto make_string( T const & item ) -> ForNonStreamable +{ + return make_enum_string( item ); +} + +template< typename T > +auto make_string( T const & item ) -> ForStreamable +{ + std::ostringstream os; os << item; return os.str(); +} + +template +auto make_string( std::pair const & pair ) -> std::string +{ + std::ostringstream oss; + oss << "{ " << to_string( pair.first ) << ", " << to_string( pair.second ) << " }"; + return oss.str(); +} + +template< typename TU, std::size_t N > +struct make_tuple_string +{ + static std::string make( TU const & tuple ) + { + std::ostringstream os; + os << to_string( std::get( tuple ) ) << ( N < std::tuple_size::value ? ", ": " "); + return make_tuple_string::make( tuple ) + os.str(); + } +}; + +template< typename TU > +struct make_tuple_string +{ + static std::string make( TU const & ) { return ""; } +}; + +template< typename ...TS > +auto make_string( std::tuple const & tuple ) -> std::string +{ + return "{ " + make_tuple_string, sizeof...(TS)>::make( tuple ) + "}"; +} + +template< typename T > +inline std::string make_string( T const * ptr ) +{ + // Note showbase affects the behavior of /integer/ output; + std::ostringstream os; + os << std::internal << std::hex << std::showbase << std::setw( 2 + 2 * sizeof(T*) ) << std::setfill('0') << reinterpret_cast( ptr ); + return os.str(); +} + +template< typename C, typename R > +inline std::string make_string( R C::* ptr ) +{ + std::ostringstream os; + os << std::internal << std::hex << std::showbase << std::setw( 2 + 2 * sizeof(R C::* ) ) << std::setfill('0') << ptr; + return os.str(); +} + +template< typename T > +auto to_string( T const * ptr ) -> std::string +{ + return ! ptr ? "nullptr" : make_string( ptr ); +} + +template +auto to_string( R C::* ptr ) -> std::string +{ + return ! ptr ? "nullptr" : make_string( ptr ); +} + +template< typename T > +auto to_string( T const & item ) -> ForNonContainerNonPointer +{ + return make_string( item ); +} + +template< typename C > +auto to_string( C const & cont ) -> ForContainer +{ + std::ostringstream os; + os << "{ "; + for ( auto & x : cont ) + { + os << to_string( x ) << ", "; + } + os << "}"; + return os.str(); +} + +#if lest_FEATURE_WSTRING +inline +auto to_string( std::wstring const & txt ) -> std::string +{ + std::string result; result.reserve( txt.size() ); + + for( auto & chr : txt ) + { + result += chr <= 0xff ? static_cast( chr ) : '?'; + } + return to_string( result ); +} +#endif + +template< typename T > +auto make_value_string( T const & value ) -> std::string +{ + std::ostringstream os; os << value; return os.str(); +} + +inline +auto make_memory_string( void const * item, std::size_t size ) -> std::string +{ + // reverse order for little endian architectures: + + auto is_little_endian = [] + { + union U { int i = 1; char c[ sizeof(int) ]; }; + + return 1 != U{}.c[ sizeof(int) - 1 ]; + }; + + int i = 0, end = static_cast( size ), inc = 1; + + if ( is_little_endian() ) { i = end - 1; end = inc = -1; } + + unsigned char const * bytes = static_cast( item ); + + std::ostringstream os; + os << "0x" << std::setfill( '0' ) << std::hex; + for ( ; i != end; i += inc ) + { + os << std::setw(2) << static_cast( bytes[i] ) << " "; + } + return os.str(); +} + +template< typename T > +auto make_memory_string( T const & item ) -> std::string +{ + return make_memory_string( &item, sizeof item ); +} + +inline +auto to_string( approx const & appr ) -> std::string +{ + return to_string( appr.magnitude() ); +} + +template< typename L, typename R > +auto to_string( L const & lhs, std::string op, R const & rhs ) -> std::string +{ + std::ostringstream os; os << to_string( lhs ) << " " << op << " " << to_string( rhs ); return os.str(); +} + +template< typename L > +struct expression_lhs +{ + const L lhs; + + expression_lhs( L lhs_) : lhs( lhs_) {} + + operator result() { return result{ !!lhs, to_string( lhs ) }; } + + template< typename R > result operator==( R const & rhs ) { return result{ lhs == rhs, to_string( lhs, "==", rhs ) }; } + template< typename R > result operator!=( R const & rhs ) { return result{ lhs != rhs, to_string( lhs, "!=", rhs ) }; } + template< typename R > result operator< ( R const & rhs ) { return result{ lhs < rhs, to_string( lhs, "<" , rhs ) }; } + template< typename R > result operator<=( R const & rhs ) { return result{ lhs <= rhs, to_string( lhs, "<=", rhs ) }; } + template< typename R > result operator> ( R const & rhs ) { return result{ lhs > rhs, to_string( lhs, ">" , rhs ) }; } + template< typename R > result operator>=( R const & rhs ) { return result{ lhs >= rhs, to_string( lhs, ">=", rhs ) }; } +}; + +struct expression_decomposer +{ + template + expression_lhs operator<< ( L const & operand ) + { + return expression_lhs( operand ); + } +}; + +// Reporter: + +#if lest_FEATURE_COLOURISE + +inline text red ( text words ) { return "\033[1;31m" + words + "\033[0m"; } +inline text green( text words ) { return "\033[1;32m" + words + "\033[0m"; } +inline text gray ( text words ) { return "\033[1;30m" + words + "\033[0m"; } + +inline bool starts_with( text words, text with ) +{ + return 0 == words.find( with ); +} + +inline text replace( text words, text from, text to ) +{ + size_t pos = words.find( from ); + return pos == std::string::npos ? words : words.replace( pos, from.length(), to ); +} + +inline text colour( text words ) +{ + if ( starts_with( words, "failed" ) ) return replace( words, "failed", red ( "failed" ) ); + else if ( starts_with( words, "passed" ) ) return replace( words, "passed", green( "passed" ) ); + + return replace( words, "for", gray( "for" ) ); +} + +inline bool is_cout( std::ostream & os ) { return &os == &std::cout; } + +struct colourise +{ + const text words; + + colourise( text words ) + : words( words ) {} + + // only colourise for std::cout, not for a stringstream as used in tests: + + std::ostream & operator()( std::ostream & os ) const + { + return is_cout( os ) ? os << colour( words ) : os << words; + } +}; + +inline std::ostream & operator<<( std::ostream & os, colourise words ) { return words( os ); } +#else +inline text colourise( text words ) { return words; } +#endif + +inline text pluralise( text word, int n ) +{ + return n == 1 ? word : word + "s"; +} + +inline std::ostream & operator<<( std::ostream & os, comment note ) +{ + return os << (note ? " " + note.info : "" ); +} + +inline std::ostream & operator<<( std::ostream & os, location where ) +{ +#ifdef __GNUG__ + return os << where.file << ":" << where.line; +#else + return os << where.file << "(" << where.line << ")"; +#endif +} + +inline void report( std::ostream & os, message const & e, text test ) +{ + os << e.where << ": " << colourise( e.kind ) << e.note << ": " << test << ": " << colourise( e.what() ) << std::endl; +} + +// Test runner: + +#if lest_FEATURE_REGEX_SEARCH + inline bool search( text re, text line ) + { + return std::regex_search( line, std::regex( re ) ); + } +#else + inline bool search( text part, text line ) + { + auto case_insensitive_equal = []( char a, char b ) + { + return tolower( a ) == tolower( b ); + }; + + return std::search( + line.begin(), line.end(), + part.begin(), part.end(), case_insensitive_equal ) != line.end(); + } +#endif + +inline bool match( texts whats, text line ) +{ + for ( auto & what : whats ) + { + if ( search( what, line ) ) + return true; + } + return false; +} + +inline bool select( text name, texts include ) +{ + auto none = []( texts args ) { return args.size() == 0; }; + +#if lest_FEATURE_REGEX_SEARCH + auto hidden = []( text arg ){ return match( { "\\[\\..*", "\\[hide\\]" }, arg ); }; +#else + auto hidden = []( text arg ){ return match( { "[.", "[hide]" }, arg ); }; +#endif + + if ( none( include ) ) + { + return ! hidden( name ); + } + + bool any = false; + for ( auto pos = include.rbegin(); pos != include.rend(); ++pos ) + { + auto & part = *pos; + + if ( part == "@" || part == "*" ) + return true; + + if ( search( part, name ) ) + return true; + + if ( '!' == part[0] ) + { + any = true; + if ( search( part.substr(1), name ) ) + return false; + } + else + { + any = false; + } + } + return any && ! hidden( name ); +} + +inline int indefinite( int repeat ) { return repeat == -1; } + +using seed_t = std::mt19937::result_type; + +struct options +{ + bool help = false; + bool abort = false; + bool count = false; + bool list = false; + bool tags = false; + bool time = false; + bool pass = false; + bool zen = false; + bool lexical = false; + bool random = false; + bool verbose = false; + bool version = false; + int repeat = 1; + seed_t seed = 0; +}; + +struct env +{ + std::ostream & os; + options opt; + text testing; + std::vector< text > ctx; + + env( std::ostream & out, options option ) + : os( out ), opt( option ), testing(), ctx() {} + + env & operator()( text test ) + { + clear(); testing = test; return *this; + } + + bool abort() { return opt.abort; } + bool pass() { return opt.pass; } + bool zen() { return opt.zen; } + + void clear() { ctx.clear(); } + void pop() { ctx.pop_back(); } + void push( text proposition ) { ctx.emplace_back( proposition ); } + + text context() { return testing + sections(); } + + text sections() + { + if ( ! opt.verbose ) + return ""; + + text msg; + for( auto section : ctx ) + { + msg += "\n " + section; + } + return msg; + } +}; + +struct ctx +{ + env & environment; + bool once; + + ctx( env & environment_, text proposition_ ) + : environment( environment_), once( true ) + { + environment.push( proposition_); + } + + ~ctx() + { +#if lest_CPP17_OR_GREATER + if ( std::uncaught_exceptions() == 0 ) +#else + if ( ! std::uncaught_exception() ) +#endif + { + environment.pop(); + } + } + + explicit operator bool() { bool result = once; once = false; return result; } +}; + +struct action +{ + std::ostream & os; + + action( std::ostream & out ) : os( out ) {} + + action( action const & ) = delete; + void operator=( action const & ) = delete; + + operator int() { return 0; } + bool abort() { return false; } + action & operator()( test ) { return *this; } +}; + +struct print : action +{ + print( std::ostream & out ) : action( out ) {} + + print & operator()( test testing ) + { + os << testing.name << "\n"; return *this; + } +}; + +inline texts tags( text name, texts result = {} ) +{ + auto none = std::string::npos; + auto lb = name.find_first_of( "[" ); + auto rb = name.find_first_of( "]" ); + + if ( lb == none || rb == none ) + return result; + + result.emplace_back( name.substr( lb, rb - lb + 1 ) ); + + return tags( name.substr( rb + 1 ), result ); +} + +struct ptags : action +{ + std::set result; + + ptags( std::ostream & out ) : action( out ), result() {} + + ptags & operator()( test testing ) + { + for ( auto & tag : tags( testing.name ) ) + result.insert( tag ); + + return *this; + } + + ~ptags() + { + std::copy( result.begin(), result.end(), std::ostream_iterator( os, "\n" ) ); + } +}; + +struct count : action +{ + int n = 0; + + count( std::ostream & out ) : action( out ) {} + + count & operator()( test ) { ++n; return *this; } + + ~count() + { + os << n << " selected " << pluralise("test", n) << "\n"; + } +}; + +struct timer +{ + using time = std::chrono::high_resolution_clock; + + time::time_point start = time::now(); + + double elapsed_seconds() const + { + return 1e-6 * static_cast( std::chrono::duration_cast< std::chrono::microseconds >( time::now() - start ).count() ); + } +}; + +struct times : action +{ + env output; + int selected = 0; + int failures = 0; + + timer total; + + times( std::ostream & out, options option ) + : action( out ), output( out, option ), total() + { + os << std::setfill(' ') << std::fixed << std::setprecision( lest_FEATURE_TIME_PRECISION ); + } + + operator int() { return failures; } + + bool abort() { return output.abort() && failures > 0; } + + times & operator()( test testing ) + { + timer t; + + try + { + testing.behaviour( output( testing.name ) ); + } + catch( message const & ) + { + ++failures; + } + + os << std::setw(3) << ( 1000 * t.elapsed_seconds() ) << " ms: " << testing.name << "\n"; + + return *this; + } + + ~times() + { + os << "Elapsed time: " << std::setprecision(1) << total.elapsed_seconds() << " s\n"; + } +}; + +struct confirm : action +{ + env output; + int selected = 0; + int failures = 0; + + confirm( std::ostream & out, options option ) + : action( out ), output( out, option ) {} + + operator int() { return failures; } + + bool abort() { return output.abort() && failures > 0; } + + confirm & operator()( test testing ) + { + try + { + ++selected; testing.behaviour( output( testing.name ) ); + } + catch( message const & e ) + { + ++failures; report( os, e, output.context() ); + } + return *this; + } + + ~confirm() + { + if ( failures > 0 ) + { + os << failures << " out of " << selected << " selected " << pluralise("test", selected) << " " << colourise( "failed.\n" ); + } + else if ( output.pass() ) + { + os << "All " << selected << " selected " << pluralise("test", selected) << " " << colourise( "passed.\n" ); + } + } +}; + +template< typename Action > +bool abort( Action & perform ) +{ + return perform.abort(); +} + +template< typename Action > +Action && for_test( tests specification, texts in, Action && perform, int n = 1 ) +{ + for ( int i = 0; indefinite( n ) || i < n; ++i ) + { + for ( auto & testing : specification ) + { + if ( select( testing.name, in ) ) + if ( abort( perform( testing ) ) ) + return std::move( perform ); + } + } + return std::move( perform ); +} + +inline void sort( tests & specification ) +{ + auto test_less = []( test const & a, test const & b ) { return a.name < b.name; }; + std::sort( specification.begin(), specification.end(), test_less ); +} + +inline void shuffle( tests & specification, options option ) +{ + std::shuffle( specification.begin(), specification.end(), std::mt19937( option.seed ) ); +} + +// workaround MinGW bug, http://stackoverflow.com/a/16132279: + +inline int stoi( text num ) +{ + return static_cast( std::strtol( num.c_str(), nullptr, 10 ) ); +} + +inline bool is_number( text arg ) +{ + return std::all_of( arg.begin(), arg.end(), ::isdigit ); +} + +inline seed_t seed( text opt, text arg ) +{ + if ( is_number( arg ) ) + return static_cast( lest::stoi( arg ) ); + + if ( arg == "time" ) + return static_cast( std::chrono::high_resolution_clock::now().time_since_epoch().count() ); + + throw std::runtime_error( "expecting 'time' or positive number with option '" + opt + "', got '" + arg + "' (try option --help)" ); +} + +inline int repeat( text opt, text arg ) +{ + const int num = lest::stoi( arg ); + + if ( indefinite( num ) || num >= 0 ) + return num; + + throw std::runtime_error( "expecting '-1' or positive number with option '" + opt + "', got '" + arg + "' (try option --help)" ); +} + +inline auto split_option( text arg ) -> std::tuple +{ + auto pos = arg.rfind( '=' ); + + return pos == text::npos + ? std::make_tuple( arg, "" ) + : std::make_tuple( arg.substr( 0, pos ), arg.substr( pos + 1 ) ); +} + +inline auto split_arguments( texts args ) -> std::tuple +{ + options option; texts in; + + bool in_options = true; + + for ( auto & arg : args ) + { + if ( in_options ) + { + text opt, val; + std::tie( opt, val ) = split_option( arg ); + + if ( opt[0] != '-' ) { in_options = false; } + else if ( opt == "--" ) { in_options = false; continue; } + else if ( opt == "-h" || "--help" == opt ) { option.help = true; continue; } + else if ( opt == "-a" || "--abort" == opt ) { option.abort = true; continue; } + else if ( opt == "-c" || "--count" == opt ) { option.count = true; continue; } + else if ( opt == "-g" || "--list-tags" == opt ) { option.tags = true; continue; } + else if ( opt == "-l" || "--list-tests" == opt ) { option.list = true; continue; } + else if ( opt == "-t" || "--time" == opt ) { option.time = true; continue; } + else if ( opt == "-p" || "--pass" == opt ) { option.pass = true; continue; } + else if ( opt == "-z" || "--pass-zen" == opt ) { option.zen = true; continue; } + else if ( opt == "-v" || "--verbose" == opt ) { option.verbose = true; continue; } + else if ( "--version" == opt ) { option.version = true; continue; } + else if ( opt == "--order" && "declared" == val ) { /* by definition */ ; continue; } + else if ( opt == "--order" && "lexical" == val ) { option.lexical = true; continue; } + else if ( opt == "--order" && "random" == val ) { option.random = true; continue; } + else if ( opt == "--random-seed" ) { option.seed = seed ( "--random-seed", val ); continue; } + else if ( opt == "--repeat" ) { option.repeat = repeat( "--repeat" , val ); continue; } + else throw std::runtime_error( "unrecognised option '" + arg + "' (try option --help)" ); + } + in.push_back( arg ); + } + option.pass = option.pass || option.zen; + + return std::make_tuple( option, in ); +} + +inline int usage( std::ostream & os ) +{ + os << + "\nUsage: test [options] [test-spec ...]\n" + "\n" + "Options:\n" + " -h, --help this help message\n" + " -a, --abort abort at first failure\n" + " -c, --count count selected tests\n" + " -g, --list-tags list tags of selected tests\n" + " -l, --list-tests list selected tests\n" + " -p, --pass also report passing tests\n" + " -z, --pass-zen ... without expansion\n" + " -t, --time list duration of selected tests\n" + " -v, --verbose also report passing or failing sections\n" + " --order=declared use source code test order (default)\n" + " --order=lexical use lexical sort test order\n" + " --order=random use random test order\n" + " --random-seed=n use n for random generator seed\n" + " --random-seed=time use time for random generator seed\n" + " --repeat=n repeat selected tests n times (-1: indefinite)\n" + " --version report lest version and compiler used\n" + " -- end options\n" + "\n" + "Test specification:\n" + " \"@\", \"*\" all tests, unless excluded\n" + " empty all tests, unless tagged [hide] or [.optional-name]\n" +#if lest_FEATURE_REGEX_SEARCH + " \"re\" select tests that match regular expression\n" + " \"!re\" omit tests that match regular expression\n" +#else + " \"text\" select tests that contain text (case insensitive)\n" + " \"!text\" omit tests that contain text (case insensitive)\n" +#endif + ; + return 0; +} + +inline text compiler() +{ + std::ostringstream os; +#if defined (__clang__ ) + os << "clang " << __clang_version__; +#elif defined (__GNUC__ ) + os << "gcc " << __GNUC__ << "." << __GNUC_MINOR__ << "." << __GNUC_PATCHLEVEL__; +#elif defined ( _MSC_VER ) + os << "MSVC " << (_MSC_VER / 100 - 5 - (_MSC_VER < 1900)) << " (" << _MSC_VER << ")"; +#else + os << "[compiler]"; +#endif + return os.str(); +} + +inline int version( std::ostream & os ) +{ + os << "lest version " << lest_VERSION << "\n" + << "Compiled with " << compiler() << " on " << __DATE__ << " at " << __TIME__ << ".\n" + << "For more information, see https://github.com/martinmoene/lest.\n"; + return 0; +} + +inline int run( tests specification, texts arguments, std::ostream & os = std::cout ) +{ + try + { + options option; texts in; + std::tie( option, in ) = split_arguments( arguments ); + + if ( option.lexical ) { sort( specification ); } + if ( option.random ) { shuffle( specification, option ); } + + if ( option.help ) { return usage ( os ); } + if ( option.version ) { return version ( os ); } + if ( option.count ) { return for_test( specification, in, count( os ) ); } + if ( option.list ) { return for_test( specification, in, print( os ) ); } + if ( option.tags ) { return for_test( specification, in, ptags( os ) ); } + if ( option.time ) { return for_test( specification, in, times( os, option ) ); } + + return for_test( specification, in, confirm( os, option ), option.repeat ); + } + catch ( std::exception const & e ) + { + os << "Error: " << e.what() << "\n"; + return 1; + } +} + +inline int run( tests specification, int argc, char * argv[], std::ostream & os = std::cout ) +{ + return run( specification, texts( argv + 1, argv + argc ), os ); +} + +template< std::size_t N > +int run( test const (&specification)[N], texts arguments, std::ostream & os = std::cout ) +{ + std::cout.sync_with_stdio( false ); + return (std::min)( run( tests( specification, specification + N ), arguments, os ), exit_max_value ); +} + +template< std::size_t N > +int run( test const (&specification)[N], std::ostream & os = std::cout ) +{ + return run( tests( specification, specification + N ), {}, os ); +} + +template< std::size_t N > +int run( test const (&specification)[N], int argc, char * argv[], std::ostream & os = std::cout ) +{ + return run( tests( specification, specification + N ), texts( argv + 1, argv + argc ), os ); +} + +} // namespace lest + +#if defined (__clang__) +# pragma clang diagnostic pop +#elif defined (__GNUC__) +# pragma GCC diagnostic pop +#endif + +#endif // LEST_LEST_HPP_INCLUDED diff --git a/mINI/tests/run.bat b/mINI/tests/run.bat new file mode 100644 index 0000000..fe7a064 --- /dev/null +++ b/mINI/tests/run.bat @@ -0,0 +1,7 @@ +@echo off +IF %1.==. GOTO ERR +%1.exe -p +GOTO END +:ERR +echo Use: %0 [test name] +:END \ No newline at end of file diff --git a/mINI/tests/run.sh b/mINI/tests/run.sh new file mode 100644 index 0000000..0a227e8 --- /dev/null +++ b/mINI/tests/run.sh @@ -0,0 +1,6 @@ +#!/bin/bash +if [[ $# -eq 0 ]] ; then + echo Use: $0 [test name] + exit 1 +fi +./$1.test -p \ No newline at end of file diff --git a/mINI/tests/testcasesens.cpp b/mINI/tests/testcasesens.cpp new file mode 100644 index 0000000..39e89e5 --- /dev/null +++ b/mINI/tests/testcasesens.cpp @@ -0,0 +1,100 @@ +#include +#include +#include +#include +#include +#include "lest.hpp" +#define MINI_CASE_SENSITIVE +#include "ini.h" + +using T_LineData = std::vector; +using T_INIFileData = std::pair; + +// +// helper functions +// +bool writeTestFile(T_INIFileData const& testData) +{ + std::string const& filename = testData.first; + T_LineData const& lines = testData.second; + std::ofstream fileWriteStream(filename); + if (fileWriteStream.is_open()) + { + if (lines.size()) + { + auto it = lines.begin(); + for (;;) + { + fileWriteStream << *it; + if (++it == lines.end()) + { + break; + } + fileWriteStream << std::endl; + } + } + return true; + } + return false; +} + +void outputData(mINI::INIStructure const& ini) +{ + for (auto const& it : ini) + { + auto const& section = std::get<0>(it); + auto const& collection = std::get<1>(it); + std::cout << "[" << section << "]" << std::endl; + for (auto const& it2 : collection) + { + auto const& key = std::get<0>(it2); + auto const& value = std::get<1>(it2); + std::cout << key << "=" << value << std::endl; + } + std::cout << std::endl; + } +} + +// +// test data +// +const T_INIFileData testDataBasic = { + // filename + "data01.ini", + // test data + { + "[Fruit]", + "Bananas=1", + "APPLES=2", + } +}; + +const lest::test mINI_tests[] = { + CASE("Test: Read case sensitive") + { + // read a basic INI file and check if values are read correctly + auto const& filename = testDataBasic.first; + mINI::INIFile file(filename); + mINI::INIStructure ini; + EXPECT(file.read(ini) == true); + std::cout << filename << std::endl; + outputData(ini); + EXPECT(ini["Fruit"]["Bananas"] == "1"); + EXPECT(ini["Fruit"]["APPLES"] == "2"); + EXPECT(ini["fruit"]["bananas"] == ""); + EXPECT(ini["fruit"]["apples"] == ""); + }, +}; + +int main(int argc, char** argv) +{ + // write test files + writeTestFile(testDataBasic); + + // run tests + if (int failures = lest::run(mINI_tests, argc, argv)) + { + return failures; + } + return std::cout << std::endl << "All tests passed!" << std::endl, EXIT_SUCCESS; +} \ No newline at end of file diff --git a/mINI/tests/testcopy.cpp b/mINI/tests/testcopy.cpp new file mode 100644 index 0000000..9c7a7a0 --- /dev/null +++ b/mINI/tests/testcopy.cpp @@ -0,0 +1,77 @@ +#include +#include "lest.hpp" +#include "ini.h" + +bool compareData(mINI::INIStructure a, mINI::INIStructure b) +{ + for (auto const& it : a) + { + auto const& section = std::get<0>(it); + auto const& collection = std::get<1>(it); + if (collection.size() != b[section].size()) { + return false; + } + for (auto const& it2 : collection) + { + auto const& key = std::get<0>(it2); + auto const& value = std::get<1>(it2); + if (value != b[section][key]) { + return false; + } + } + std::cout << std::endl; + } + return a.size() == b.size(); +} + +void outputData(mINI::INIStructure const& ini) +{ + for (auto const& it : ini) + { + auto const& section = std::get<0>(it); + auto const& collection = std::get<1>(it); + std::cout << "[" << section << "]" << std::endl; + for (auto const& it2 : collection) + { + auto const& key = std::get<0>(it2); + auto const& value = std::get<1>(it2); + std::cout << key << "=" << value << std::endl; + } + std::cout << std::endl; + } +} + +const lest::test mINI_tests[] = { + CASE("TEST: Copy semantics") + { + mINI::INIStructure iniA; + + iniA["a"].set({ + { "x", "1", "//comment1" }, + { "y", "2", "//comment2" }, + { "z", "3", "//comment3" } + }); + + iniA["b"].set({ + { "q", "100", "//comment1" }, + { "w", "100", "//comment2" }, + { "e", "100", "//comment3" } + }); + + mINI::INIStructure iniB(iniA); + EXPECT(compareData(iniA, iniB)); + + mINI::INIStructure iniC = iniA; + EXPECT(compareData(iniA, iniC)); + } +}; + +int main(int argc, char** argv) +{ + // run tests + if (int failures = lest::run(mINI_tests, argc, argv)) + { + return failures; + } + return std::cout << std::endl << "All tests passed!" << std::endl, EXIT_SUCCESS; +} \ No newline at end of file diff --git a/mINI/tests/testgenerate.cpp b/mINI/tests/testgenerate.cpp new file mode 100644 index 0000000..77a4b64 --- /dev/null +++ b/mINI/tests/testgenerate.cpp @@ -0,0 +1,287 @@ +#include +#include +#include +#include +#include +#include "lest.hpp" +#include "ini.h" + +using T_LineData = std::vector; +using T_INIFileData = std::pair; + +// +// helper functions +// +bool verifyData(T_INIFileData const& testData) +{ + // compares file contents to expected data + std::string line; + std::string const& filename = testData.first; + T_LineData const& linesExpected = testData.second; + size_t lineCount = 0; + size_t lineCountExpected = linesExpected.size(); + std::ifstream fileReadStream(filename); + if (fileReadStream.is_open()) + { + while (std::getline(fileReadStream, line)) + { + if (fileReadStream.bad()) + { + return false; + } + if (lineCount >= lineCountExpected) + { + std::cout << "Line count exceeds expected!" << std::endl; + return false; + } + std::string const& lineExpected = linesExpected[lineCount++]; + if (line != lineExpected) + { + std::cout << "Line " << lineCount << " does not match expected!" << std::endl; + std::cout << "Expected: " << lineExpected << std::endl; + std::cout << "Is: " << line << std::endl; + return false; + } + } + if (lineCount < lineCountExpected) + { + std::cout << "Line count falls behind expected!" << std::endl; + } + return lineCount == lineCountExpected; + } + return false; +} + +// +// test data +// +const T_INIFileData testDataBasic = { + // filename + "data01.ini", + // expected result + { + "[section]", + "key1=value1", + "key2=value2" + } +}; + +const T_INIFileData testDataManySections = { + // filename + "data02.ini", + // expected result + { + "[section1]", + "key1=value1//comment1", + "key2=value2;comment2", + "key3=value3#comment3", + "[section2]", + "key1=value1//comment1", + "key2=value2;comment2", + "[section3]", + "key1=value1" + } +}; + +const T_INIFileData testDataEmptySection = { + // filename + "data03.ini", + // expected result + { + "[empty]" + } +}; + +const T_INIFileData testDataManyEmptySections = { + // filename + "data04.ini", + // expected result + { + "[empty1]", + "[empty2]", + "[empty3]" + } +}; + +const T_INIFileData testDataEmpty = { + // filename + "data05.ini", + // expected result + {} +}; + +const T_INIFileData testDataPrettyPrint = { + // filename + "data06.ini", + // expected result + { + "[section1]", + "key1 = value1#comment1", + "key2 = value2//comment2", + "", + "[section2]", + "key1 = value1" + } +}; + +const T_INIFileData testDataEmptyNames = { + // filename + "data07.ini", + // expected result + { + "[]", + "key=value", + "[section]", + "=value", + "[section2]", + //"=", + } +}; + +const T_INIFileData testDataMalformed1 = { + // filename + "data08.ini", + // test data + { + "[[name1]", + "key=value", + "[name2]]", + "key=value", + "[[name3]]", + "key=value" + } +}; + +const T_INIFileData testDataMalformed2 = { + // filename + "data09.ini", + // test data + { + "[name]", + "\\===", // key: "=" value: "=" + "a\\= \\===b", // key: "a= =" value: "=b" + "c\\= \\===d" // key: "c= =" value: "=d" + } +}; + +// +// test cases +// +const lest::test mINI_tests[] = { + CASE("Test: Basic generate") + { + // create a very basic INI file and verify resulting file has correct data + std::string const& filename = testDataBasic.first; + mINI::INIFile file(filename); + mINI::INIStructure ini; + ini["section"]["key1"] = "value1"; + ini["section"]["key2"] = "value2"; + EXPECT(file.generate(ini) == true); + EXPECT(verifyData(testDataBasic) == true); + }, + CASE("Test: Generate many sections") + { + std::string const& filename = testDataManySections.first; + mINI::INIFile file(filename); + mINI::INIStructure ini; + ini["section1"].set({ + {"key1", "value1", "//comment1" }, + {"key2", "value2", ";comment2" }, + {"key3", "value3", "#comment3" } + }); + ini["section2"].set({ + {"key1", "value1", "//comment1" }, + {"key2", "value2", ";comment2" } + }); + ini["section3"]["key1"] = "value1"; + EXPECT(file.generate(ini) == true); + EXPECT(verifyData(testDataManySections)); + }, + CASE("Test: Generate empty section") + { + std::string const& filename = testDataEmptySection.first; + mINI::INIFile file(filename); + mINI::INIStructure ini; + ini["empty"]; + EXPECT(file.generate(ini) == true); + EXPECT(verifyData(testDataEmptySection)); + }, + CASE("Test: Generate many empty sections") + { + std::string const& filename = testDataManyEmptySections.first; + mINI::INIFile file(filename); + mINI::INIStructure ini; + ini["empty1"]; + ini["empty2"]; + ini["empty3"]; + EXPECT(file.generate(ini) == true); + EXPECT(verifyData(testDataManyEmptySections)); + }, + CASE("Test: Generate empty file") + { + std::string const& filename = testDataEmpty.first; + mINI::INIFile file(filename); + mINI::INIStructure ini; + EXPECT(file.generate(ini) == true); + EXPECT(verifyData(testDataEmpty)); + }, + CASE("Test: Generate with pretty-print") + { + std::string const& filename = testDataPrettyPrint.first; + mINI::INIFile file(filename); + mINI::INIStructure ini; + ini["section1"].set({ + {"key1", "value1", "#comment1"}, + {"key2", "value2", "//comment2"}, + }); + ini["section2"]["key1"] = "value1"; + EXPECT(file.generate(ini, true) == true); + EXPECT(verifyData(testDataPrettyPrint)); + }, + CASE("Test: Generate empty section and key names") + { + std::string const& filename = testDataEmptyNames.first; + mINI::INIFile file(filename); + mINI::INIStructure ini; + ini[""]["key"] = "value"; + ini["section"][""] = "value"; + ini["section2"][""] = ""; + EXPECT(file.generate(ini) == true); + EXPECT(verifyData(testDataEmptyNames)); + }, + CASE("Test: Generate malformed section names") + { + std::string const& filename = testDataMalformed1.first; + mINI::INIFile file(filename); + mINI::INIStructure ini; + ini["[name1"]["key"] = "value"; + ini["name2]"]["key"] = "value"; + ini["[name3]"]["key"] = "value"; + EXPECT(file.generate(ini) == true); + EXPECT(verifyData(testDataMalformed1)); + }, + CASE("Test: Generate malformed key names") + { + std::string const& filename = testDataMalformed2.first; + mINI::INIFile file(filename); + mINI::INIStructure ini; + ini["name"].set({ + {"=", "=", "" }, + {"a= =", "=b", "" }, + {" c= = ", " =d ", "" } + }); + EXPECT(file.generate(ini) == true); + EXPECT(verifyData(testDataMalformed2)); + } +}; + +int main(int argc, char** argv) +{ + // run tests + if (int failures = lest::run(mINI_tests, argc, argv)) + { + return failures; + } + return std::cout << std::endl << "All tests passed!" << std::endl, EXIT_SUCCESS; +} + diff --git a/mINI/tests/testhuge.cpp b/mINI/tests/testhuge.cpp new file mode 100644 index 0000000..aab9253 --- /dev/null +++ b/mINI/tests/testhuge.cpp @@ -0,0 +1,59 @@ +/* use testhuge -t to time tests */ + +#include +#include "lest.hpp" +#include "ini.h" + +const std::string filename = "data_huge.ini"; + +const size_t N_sections = 20; +const size_t N_items_per_section = 500; + +const bool generate_pretty = false; + +const lest::test mINI_tests[] = { + CASE("TEST: Generate a huge file") + { + std::cout << "Writing file..." << std::endl; + mINI::INIFile file(filename); + mINI::INIStructure ini; + // generate data + for (unsigned int i = 1; i <= N_sections; ++i) + { + std::string section = "section" + std::to_string(i); + for (unsigned int j = 1; j <= N_items_per_section; ++j) + { + std::string j_str = std::to_string(j); + std::string key = "key" + j_str; + std::string value = "value" + j_str; + ini[section][key] = value; + } + } + // generate file + EXPECT(file.generate(ini) == true); + }, + CASE("TEST: Read a huge file") + { + // this testcase relies on the previous test passing + std::cout << "Reading file..." << std::endl; + mINI::INIFile file(filename); + mINI::INIStructure ini; + // read from file + EXPECT(file.read(ini) == true); + EXPECT(ini.size() == N_sections); + for (auto& it : ini) + { + EXPECT(std::get<1>(it).size() == N_items_per_section); + } + } +}; + +int main(int argc, char** argv) +{ + // run tests + if (int failures = lest::run(mINI_tests, argc, argv)) + { + return failures; + } + return std::cout << std::endl << "All tests passed!" << std::endl, EXIT_SUCCESS; +} diff --git a/mINI/tests/testread.cpp b/mINI/tests/testread.cpp new file mode 100644 index 0000000..77a1051 --- /dev/null +++ b/mINI/tests/testread.cpp @@ -0,0 +1,457 @@ +#include +#include +#include +#include +#include +#include "lest.hpp" +#include "ini.h" + +using T_LineData = std::vector; +using T_INIFileData = std::pair; + +// +// helper functions +// +bool writeTestFile(T_INIFileData const& testData) +{ + std::string const& filename = testData.first; + T_LineData const& lines = testData.second; + std::ofstream fileWriteStream(filename); + if (fileWriteStream.is_open()) + { + if (lines.size()) + { + auto it = lines.begin(); + for (;;) + { + fileWriteStream << *it; + if (++it == lines.end()) + { + break; + } + fileWriteStream << std::endl; + } + } + return true; + } + return false; +} + +void outputData(mINI::INIStructure const& ini) +{ + for (auto const& it : ini) + { + auto const& section = std::get<0>(it); + auto const& collection = std::get<1>(it); + std::cout << "[" << section << "]" << std::endl; + for (auto const& it2 : collection) + { + auto const& key = std::get<0>(it2); + auto const& value = std::get<1>(it2); + std::cout << key << "=" << value << std::endl; + } + std::cout << std::endl; + } +} + +// +// test data +// +const T_INIFileData testDataBasic = { + // filename + "data01.ini", + // test data + { + "[fruit]", + "bananas=1", + "apples=2", + "grapes=3", + "[veggies]", + "lettuce=scarce", + "onions=sufficient", + "potatoes=plentiful", + "[section with spaces]", + "key with spaces = value with spaces" + } +}; + +const T_INIFileData testDataWellFormed = { + // filename + "data02.ini", + // test data + { + "; this is a comment", + "[first section]", + "someKey = 1", + "anotherKey = 2", + "", + "; this is another comment", + "[second section]", + "humans = 16", + "orcs = 8", + "barbarians = 20", + "", + "; this is yet another comment", + "[third section]", + "spiders=25", + "bugs=0", + "ants=100", + "flies=5" + } +}; + +const T_INIFileData testDataNotWellFormed = { + // filename + "data03.ini", + // test data + { + "GARBAGE", + "; this is a comment", + " ; abcd ", + "[first section] ;test comment", + "someKey= 1", + "GARBAGE", + "anotherKey =2", + "", + "; this is another comment", + "GARBAGE", + "GARBAGE", + " [second section]", + "GARBAGE", + "hUmAnS=16", + "GARBAGE", + " orcs = 8 ", + " barbarians = 20 ", + "", + " GARBAGE", + "; this is yet another comment", + "[ third section ] ;;; test comment[]]] ", + "spiders = 25", + "bugs =0 ", + "ants= 100", + "GARBAGE ", + "GARBAGE ", + "FLIES = 5", + "GARBAGE " + } +}; + +const T_INIFileData testDataEmpty = { + // filename + "data04.ini", + // test data + {} +}; + +const T_INIFileData testDataEdgeCase1 = { + // filename + "data05.ini", + // test data + { + "ignored1=value1", + "ignored2=value2" + } +}; + +const T_INIFileData testDataEdgeCase2 = { + // filename + "data06.ini", + // test data + { + "ignored1=value1", + "ignored2=value2", + "[data]", + "proper1=a", + "proper2=b" + } +}; + +const T_INIFileData testDataEdgeCase3 = { + // filename + "data07.ini", + // test data + { + "[empty]" + } +}; + +const T_INIFileData testDataEdgeCase4 = { + // filename + "data08.ini", + // test data + { + "[empty1]", + "[empty2]", + "[empty3]", + "[empty4]", + "[empty5]" + } +}; + +const T_INIFileData testDataEdgeCase5 = { + // filename + "data09.ini", + // test data + { + "[data]", + "valueA=1", // expected: ignored + "valueA=2" // expected: not ignored + } +}; + +const T_INIFileData testDataEdgeCase6 = { + // filename + "data10.ini", + // test data + { + "[data]", // expected: ignored + "valueA=10", // expected: ignored + "valueB=20", // expected: not ignored + "[data]", + "valueA=30" // expected: not ignored + } +}; + +const T_INIFileData testDataEdgeCase7 = { + // filename + "data11.ini", + // test data + { + "[]", + "key1=value1", + "[a]", + "key2=value2" + } +}; + +const T_INIFileData testDataEdgeCase8 = { + // filename + "data12.ini", + // test data + { + "[a]", + "=1" + } +}; + +const T_INIFileData testDataMalformed1 = { + // filename + "data13.ini", + // test data + { + "[[name1]", + "key=value", + "[name2]]", + "key=value", + "[[name3]]", + "key=value" + } +}; + +const T_INIFileData testDataMalformed2 = { + // filename + "data14.ini", + // test data + { + "[name]", + "key\\==value", + "\\===", // expected key: "=" expected value: "=" + "a\\= \\===b", // expected key: "a= =" expected value: "=b" + " c\\= \\= = =d " // expected key: "c= =" expected value: "=d" + } +}; + +// +// test cases +// +const lest::test mINI_tests[] = { + CASE("Test: Basic read") + { + // read a basic INI file and check if values are read correctly + auto const& filename = testDataBasic.first; + mINI::INIFile file(filename); + mINI::INIStructure ini; + EXPECT(file.read(ini) == true); + std::cout << filename << std::endl; + outputData(ini); + EXPECT(ini["fruit"]["bananas"] == "1"); + EXPECT(ini["fruit"]["apples"] == "2"); + EXPECT(ini["fruit"]["grapes"] == "3"); + EXPECT(ini["veggies"]["lettuce"] == "scarce"); + EXPECT(ini["veggies"]["onions"] == "sufficient"); + EXPECT(ini["veggies"]["potatoes"] == "plentiful"); + EXPECT(ini["section with spaces"]["key with spaces"] == "value with spaces"); + }, + CASE("Test: Read and compare") + { + // read two INI files with differing form and check if all read values match + auto const& filename1 = testDataWellFormed.first; + auto const& filename2 = testDataNotWellFormed.first; + mINI::INIFile file1(filename1); + mINI::INIFile file2(filename2); + mINI::INIStructure ini1, ini2; + EXPECT(file1.read(ini1) == true); + EXPECT(file2.read(ini2) == true); + std::cout << filename1 << std::endl; + outputData(ini1); + std::cout << filename2 << std::endl; + outputData(ini2); + // compare sizes + EXPECT(ini1.size() == ini2.size()); + EXPECT(ini1.get("first section").size() == ini2.get("first section").size()); + EXPECT(ini1.get("second section").size() == ini2.get("second section").size()); + EXPECT(ini1.get("third section").size() == ini2.get("third section").size()); + // compare data + EXPECT(ini1.get("first section").get("somekey") == ini2.get("first section").get("somekey")); + EXPECT(ini1["first section"]["anotherkey"] == ini2["first section"]["anotherkey"]); + EXPECT(ini1["second section"]["humans"] == ini2["second section"]["humans"]); + EXPECT(ini1["second section"]["orcs"] == ini2["second section"]["orcs"]); + EXPECT(ini1["second section"]["barbarians"] == ini2["second section"]["barbarians"]); + EXPECT(ini1["third section"]["spiders"] == ini2["third section"]["spiders"]); + EXPECT(ini1["third section"]["bugs"] == ini2["third section"]["bugs"]); + EXPECT(ini1["third section"]["ants"] == ini2["third section"]["ants"]); + EXPECT(ini1["third section"]["flies"] == ini2["third section"]["flies"]); + }, + CASE("Test: Read empty") + { + auto const& filename = testDataEmpty.first; + mINI::INIFile file(filename); + mINI::INIStructure ini; + EXPECT(file.read(ini) == true); + EXPECT(ini.size() == 0u); + }, + CASE("Test: Edge case 1") + { + auto const& filename = testDataEdgeCase1.first; + mINI::INIFile file(filename); + mINI::INIStructure ini; + EXPECT(file.read(ini) == true); + EXPECT(ini.size() == 0u); + }, + CASE("Test: Edge case 2") + { + auto const& filename = testDataEdgeCase2.first; + mINI::INIFile file(filename); + mINI::INIStructure ini; + EXPECT(file.read(ini) == true); + EXPECT(ini.size() == 1u); + EXPECT(ini.get("data").size() == 2u); + EXPECT(ini["data"]["proper1"] == "a"); + EXPECT(ini["data"]["proper2"] == "b"); + }, + CASE("Test: Edge case 3") + { + auto const& filename = testDataEdgeCase3.first; + mINI::INIFile file(filename); + mINI::INIStructure ini; + EXPECT(file.read(ini) == true); + EXPECT(ini.size() == 1u); + EXPECT(ini.get("empty").size() == 0u); + }, + CASE("Test: Edge case 4") + { + auto const& filename = testDataEdgeCase4.first; + mINI::INIFile file(filename); + mINI::INIStructure ini; + EXPECT(file.read(ini) == true); + EXPECT(ini.size() == 5u); + EXPECT(ini.get("empty1").size() == 0u); + EXPECT(ini.get("empty2").size() == 0u); + EXPECT(ini.get("empty3").size() == 0u); + EXPECT(ini.get("empty4").size() == 0u); + EXPECT(ini.get("empty5").size() == 0u); + }, + CASE("Test: Edge case 5") + { + auto const& filename = testDataEdgeCase5.first; + mINI::INIFile file(filename); + mINI::INIStructure ini; + EXPECT(file.read(ini) == true); + EXPECT(ini.size() == 1u); + EXPECT(ini.get("data").size() == 2u); + EXPECT(ini["data"]["valueA"] == "2"); + }, + CASE("Test: Edge case 6") + { + auto const& filename = testDataEdgeCase6.first; + mINI::INIFile file(filename); + mINI::INIStructure ini; + EXPECT(file.read(ini) == true); + EXPECT(ini.size() == 1u); + EXPECT(ini.get("data").size() == 3u); + EXPECT(ini["data"]["valueA"] == "30"); + EXPECT(ini["data"]["valueB"] == "20"); + }, + CASE("Test: Edge case 7") + { + auto const& filename = testDataEdgeCase7.first; + mINI::INIFile file(filename); + mINI::INIStructure ini; + EXPECT(file.read(ini) == true); + EXPECT(ini.size() == 2u); + EXPECT(ini.get("").size() == 1u); + EXPECT(ini.get("").get("key1") == "value1"); + EXPECT(ini.get("a").size() == 1u); + EXPECT(ini["a"]["key2"] == "value2"); + }, + CASE("Test: Edge case 8") + { + auto const& filename = testDataEdgeCase8.first; + mINI::INIFile file(filename); + mINI::INIStructure ini; + EXPECT(file.read(ini) == true); + EXPECT(ini.size() == 1u); + EXPECT(ini.get("a").size() == 1u); + EXPECT(ini["a"][""] == "1"); + }, + CASE("Test: Malformed case 1") + { + // read INI with malformed section names + auto const& filename = testDataMalformed1.first; + mINI::INIFile file(filename); + mINI::INIStructure ini; + EXPECT(file.read(ini) == true); + EXPECT(ini.size() == 3u); + EXPECT(ini.get("[name1").size() == 1u); + EXPECT(ini.get("name2]").size() == 1u); + EXPECT(ini.get("[name3]").size() == 1u); + }, + CASE("Test: Malformed case 2") + { + // read INI with malformed key names + auto const& filename = testDataMalformed2.first; + mINI::INIFile file(filename); + mINI::INIStructure ini; + EXPECT(file.read(ini) == true); + EXPECT(ini.get("name").get("key=") == "value"); + EXPECT(ini.get("name").get("=") == "="); + EXPECT(ini.get("name").get("a= =") == "=b"); + EXPECT(ini.get("name").get("c= =") == "=d"); + } +}; + +int main(int argc, char** argv) +{ + // write test files + writeTestFile(testDataBasic); + writeTestFile(testDataWellFormed); + writeTestFile(testDataNotWellFormed); + writeTestFile(testDataEmpty); + writeTestFile(testDataEdgeCase1); + writeTestFile(testDataEdgeCase2); + writeTestFile(testDataEdgeCase3); + writeTestFile(testDataEdgeCase4); + writeTestFile(testDataEdgeCase5); + writeTestFile(testDataEdgeCase6); + writeTestFile(testDataEdgeCase7); + writeTestFile(testDataEdgeCase8); + writeTestFile(testDataMalformed1); + writeTestFile(testDataMalformed2); + + // run tests + if (int failures = lest::run(mINI_tests, argc, argv)) + { + return failures; + } + return std::cout << std::endl << "All tests passed!" << std::endl, EXIT_SUCCESS; +} diff --git a/mINI/tests/testutf8.cpp b/mINI/tests/testutf8.cpp new file mode 100644 index 0000000..99d5ad8 --- /dev/null +++ b/mINI/tests/testutf8.cpp @@ -0,0 +1,141 @@ +#include +#include +#include +#include +#include +#include "lest.hpp" +#include "ini.h" + +using T_LineData = std::vector; +using T_INIFileData = std::pair; + +// +// helper functions +// +void outputData(mINI::INIStructure const& ini) +{ + for (auto const& it : ini) + { + auto const& section = std::get<0>(it); + auto const& collection = std::get<1>(it); + std::cout << "[" << section << "]" << std::endl; + for (auto const& it2 : collection) + { + auto const& key = std::get<0>(it2); + auto const& value = std::get<1>(it2); + std::cout << key << "=" << value << std::endl; + } + std::cout << std::endl; + } +} + +bool writeTestFile(T_INIFileData const& testData) +{ + std::string const& filename = testData.first; + T_LineData const& lines = testData.second; + std::ofstream fileWriteStream(filename); + if (fileWriteStream.is_open()) + { + if (lines.size()) + { + auto it = lines.begin(); + for (;;) + { + fileWriteStream << *it; + if (++it == lines.end()) + { + break; + } + fileWriteStream << std::endl; + } + } + return true; + } + return false; +} + +// +// test data +// +const T_INIFileData testDataUTF8BOM = { + // filename + "utf8bom.ini", + // test data + { + "[section]", + "key=value", + "key2=value2", + "[section2]", + "key=value" + } +}; + +// +// test cases +// +const lest::test mINI_tests[] = { + CASE("Test: Write and read back utf-8 values") + { + mINI::INIFile file("data01.ini"); + mINI::INIStructure ini; + ini["section"]["key"] = "€"; + ini["section"]["€"] = "value"; + ini["€"]["key"] = "value"; + ini["section"]["key2"] = "𐍈"; + ini["section"]["𐍈"] = "value"; + ini["𐍈"]["key"] = "value"; + ini["section"]["key3"] = "你好"; + ini["section"]["你好"] = "value"; + ini["你好"]["key"] = "value"; + EXPECT(file.write(ini) == true); + ini.clear(); + EXPECT(file.read(ini) == true); + outputData(ini); + EXPECT(ini["section"]["key"] == "€"); + EXPECT(ini["section"]["key2"] == "𐍈"); + EXPECT(ini["section"]["€"] == "value"); + EXPECT(ini["€"]["key"] == "value"); + EXPECT(ini["section"]["𐍈"] == "value"); + EXPECT(ini["𐍈"]["key"] == "value"); + EXPECT(ini["section"]["key3"] == "你好"); + EXPECT(ini["section"]["你好"] == "value"); + EXPECT(ini["你好"]["key"] == "value"); + }, + CASE("Test: UTF-8 BOM encoded file") + { + mINI::INIFile file("utf8bom.ini"); + mINI::INIStructure ini; + file.read(ini); + EXPECT(ini["section"]["key"] == "value"); + EXPECT(ini["section"]["key2"] == "value2"); + EXPECT(ini["section2"]["key"] == "value"); + }, + CASE("Test: Write to UTF-8 BOM encoded file") + { + mINI::INIFile file("utf8bom.ini"); + mINI::INIStructure ini; + EXPECT(file.read(ini) == true); + // update + ini["section"]["key"] = "something else"; + // write + EXPECT(file.write(ini) == true); + // expect BOM encoding + mINI::INIReader testReader("utf8bom.ini"); + mINI::INIStructure testStructure; + testReader >> testStructure; + EXPECT(testReader.isBOM == true); + } +}; + +int main(int argc, char** argv) +{ + // write test files + writeTestFile(testDataUTF8BOM); + // run tests + if (int failures = lest::run(mINI_tests, argc, argv)) + { + return failures; + } + return std::cout << std::endl << "All tests passed!" << std::endl, EXIT_SUCCESS; +} + diff --git a/mINI/tests/testwrite.cpp b/mINI/tests/testwrite.cpp new file mode 100644 index 0000000..835f503 --- /dev/null +++ b/mINI/tests/testwrite.cpp @@ -0,0 +1,747 @@ +#include +#include +#include +#include +#include +#include "lest.hpp" +#include "ini.h" + +using T_LineData = std::vector; +using T_INIFileData = std::tuple; + +// +// helper functions +// +bool writeTestFile(T_INIFileData const& testData) +{ + std::string const& filename = std::get<0>(testData); + T_LineData const& lines = std::get<1>(testData); + std::ofstream fileWriteStream(filename); + if (fileWriteStream.is_open()) + { + if (lines.size()) + { + auto it = lines.begin(); + for (;;) + { + fileWriteStream << *it; + if (++it == lines.end()) + { + break; + } + fileWriteStream << std::endl; + } + } + return true; + } + return false; +} + +bool verifyData(T_INIFileData const& testData) +{ + // compares file contents to expected data + std::string line; + std::string const& filename = std::get<0>(testData); + T_LineData const& linesExpected = std::get<2>(testData); + size_t lineCount = 0; + size_t lineCountExpected = linesExpected.size(); + std::ifstream fileReadStream(filename); + if (fileReadStream.is_open()) + { + while (std::getline(fileReadStream, line)) + { + if (fileReadStream.bad()) + { + return false; + } + if (lineCount >= lineCountExpected) + { + std::cout << "Line count exceeds expected!" << std::endl; + return false; + } + std::string const& lineExpected = linesExpected[lineCount++]; + if (line != lineExpected) + { + std::cout << "Line " << lineCount << " does not match expected!" << std::endl; + std::cout << "Expected: " << lineExpected << std::endl; + std::cout << "Is: " << line << std::endl; + return false; + } + } + if (lineCount < lineCountExpected) + { + std::cout << "Line count falls behind expected!" << std::endl; + } + return lineCount == lineCountExpected; + } + return false; +} + +void outputData(mINI::INIStructure const& ini) +{ + for (auto const& it : ini) + { + auto const& section = std::get<0>(it); + auto const& collection = std::get<1>(it); + std::cout << "[" << section << "]" << std::endl; + for (auto const& it2 : collection) + { + auto const& key = std::get<0>(it2); + auto const& value = std::get<1>(it2); + std::cout << key << "=" << value << std::endl; + } + std::cout << std::endl; + } +} + +// +// test data +// +const T_INIFileData testDataBasic { + // filename + "data01.ini", + // original data + { + ";some comment", + "[some section]", + "some key=1", + "other key=2" + }, + // expected result + { + ";some comment", + "[some section]", + "some key=2", + "other key=2", + "yet another key=3" + } +}; + +const T_INIFileData testDataWithGarbage { + // filename + "data02.ini", + // original data + { + "", + " GARBAGE ; ALSO GARBAGE ", + ";;;;;;;;;;;;;;;comment comment", + ";;;;", + ";;;; ", + " ;", + " ;; ;;xxxx ", + "ignored key = ignored value", + "ignored=ignored", + "GARBAGE", + "", + "ignored key2=ignored key2", + "GARBAGE ;;;;;;;;;;;;;;;;;;;;;", + "[section] ; trailing comment", + "", + "GARBAGE", + ";;", + "a=1", + "b = 2", + "c =3", + "d= 4", + "e = 5", + "f =6", + "", + "@#%$@(*(!@*@GARBAGE#!@GARBAGE%$@#GARBAGE%@&*%@$", + "GARBAGE", + "[other section] ;also a comment", + "GARBAGE", + "dinosaurs= 16", + "GARBAGE", + "birds= 123456", + "giraffes= 22", + "GARBAGE", + "[extra section];also a comment", + " aaa = 1", + " bbb=2", + " ccc = 3", + "GARBAGE", + "", + "" + }, + // expected result + { + "", + ";;;;;;;;;;;;;;;comment comment", + ";;;;", + ";;;; ", + " ;", + " ;; ;;xxxx ", + "", + "[section] ; trailing comment", + "", + ";;", + "a=2 // comment 1", + "b = 3", + "c =4", + "d= 5", + "e = 6", + "f =7", + "g=8", + "", + "[other section] ;also a comment", + "birds= 123456", + "giraffes= 22", + "[extra section];also a comment", + " aaa = 2", + " bbb=3", + " ccc = 4", + "ddd=5", + "", + "", + "[new section]", + "test=something" + } +}; + +const T_INIFileData testDataRemEntry { + // filename + "data04.ini", + // original data + { + "[section]", + "data1=A", + "data2=B" + }, + // expected result + { + "[section]", + "data2=B" + } +}; + +const T_INIFileData testDataRemSection { + // filename + "data05.ini", + // original data + { + "[section]", + "data1=A", + "data2=B" + }, + // expected result + { + } +}; + +const T_INIFileData testDataDuplicateKeys { + // filename + "data06.ini", + // original data + { + "[section]", + "data=A", + "data=B", + "[section]", + "data=C" + }, + // expected result + { + "[section]", + "data=A", + "data=B", + "[section]", + "data=C" + } +}; + +const T_INIFileData testDataDuplicateSections { + // filename + "data07.ini", + // original data + { + "[section]", + "[section]", + "[section]" + }, + // expected result + { + "[section]", + "data=A", + "[section]", + "data=A", + "[section]", + "data=A" + } +}; + +const T_INIFileData testDataPrettyPrint { + // filename + "data08.ini", + // oiriginal data + { + "[section1]", + "value1=A", + "value2=B", + "[section2]", + "value1=A" + }, + // expected result + { + "[section1]", + "value1=A", + "value2=B", + "value3 = C", + "[section2]", + "value1=A", + "value2 = B", + "", + "[section3]", + "value1 = A", + "value2 = B" + } +}; + +const T_INIFileData testDataEmptyFile { + // filename + "data09.ini", + // original data + {}, + // expected results + { + "[section]", + "key=value" + } +}; + +const T_INIFileData testDataEmptySection { + // filename + "data10.ini", + // original data + { + "[section]" + }, + // expected result + { + "[section]", + "key=value" + } +}; + +const T_INIFileData testDataManyEmptySections { + // filename + "data11.ini", + // original data + { + "[section1]", + "[section2]", + "[section3]", + "[section4]", + "[section5]" + }, + // expected result + { + "[section1]", + "[section2]", + "[section3]", + "key=value", + "[section4]", + "[section5]" + } +}; + +const T_INIFileData testDataEmptyNames { + // filename + "data12.ini", + // original data + { + "[]", + "key=value", + "key2=value2", + "[section]", + "=value" + }, + // expected result + { + "[]", + "key=", + "=value3", + "[section]", + "=value2", + "[section2]", + "=" + } +}; + +const T_INIFileData testDataMalformed1 { + // filename + "data13.ini", + // original data + { + "[[name1]", + "key=value", + "[name2]]", + "key=value", + "[[name3]]", + "key=value" + }, + // expected result + { + "[[name1]", + "key=value1", + "[name2]]", + "key=value2", + "[[name3]]", + "key=value3" + } +}; + +const T_INIFileData testDataMalformed2 { + // filename + "data14.ini", + // original data + { + "[name]", + "\\===", // key: "=" value: "=" + "a\\= \\===b", // key: "a= =" value: "=b" + "c\\= \\===d" // key: "c= =" value: "=d" + }, + // expected result + { + "[name]", + "\\====", // key: "=" value: "==" + "a\\= \\===bb", // key: "a= =" value: "=bb" + "e\\===f=", // key: "e=" value: "=f=", + "[other]", + "\\===" + } +}; + +const T_INIFileData testDataConsecutiveWrites { + // filename + "data15.ini", + // original data + { + "[ Food ]", + "Cheese = 32", + "Ice Cream = 64", + "Bananas = 128", + "", + "[ Things ]", + "Scissors = AAA", + "Wooden Box = BBB", + "Speakers = CCC" + }, + // expected result + { + "[ Food ]", + "Cheese = AAA", + "Ice Cream = BBB", + "Bananas = CCC", + "soup=DDD", + "", + "[ Things ]", + "Scissors = 32", + "Wooden Box = 64", + "Speakers = 128", + "book=256" + } +}; + +const T_INIFileData testDataEmptyValues { + // filename + "data16.ini", + // original data + { + "[section]", + "key=value" + }, + // expected result + { + "[section]", + "key=" + } +}; + +// +// test cases +// +const lest::test mINI_tests[] = { + CASE("TEST: Basic write") + { + // do some basic modifications to an INI file + // then compare resulting file to expected data + std::string const& filename = std::get<0>(testDataBasic); + mINI::INIFile file(filename); + mINI::INIStructure ini; + EXPECT(file.read(ini) == true); + ini["some section"]["some key"] = "2"; + ini["some section"]["yet another key"] = "3"; + EXPECT(file.write(ini) == true); + EXPECT(verifyData(testDataBasic)); + }, + CASE("TEST: Garbage data") + { + auto const& filename = std::get<0>(testDataWithGarbage); + // read from file + mINI::INIFile file(filename); + mINI::INIStructure ini; + EXPECT(file.read(ini) == true); + // update data + ini["section"].set({ + {"a", "2", " // comment 1"}, + {"b", "3", ""}, + {"c", "4", ""}, + {"d", "5", ""}, + {"e", "6", ""}, + {"f", "7", ""}, + {"g", "8", ""} + }); + ini["other section"].remove("dinosaurs"); // sorry, dinosaurs + ini["extra section"].set({ + {"aaa", "2", ""}, + {"bbb", "3", ""}, + {"ccc", "4", ""}, + {"ddd", "5", ""} + }); + ini["new section"]["test"] = "something"; + // write to file + EXPECT(file.write(ini) == true); + // verify data + EXPECT(verifyData(testDataWithGarbage)); + }, + CASE("Test: Remove entry") + { + auto const& filename = std::get<0>(testDataRemEntry); + // read from file + mINI::INIFile file(filename); + mINI::INIStructure ini; + EXPECT(file.read(ini) == true); + // update data + ini["section"].remove("data1"); + // write to file + EXPECT(file.write(ini) == true); + // verify data + EXPECT(verifyData(testDataRemEntry)); + }, + CASE("Test: Remove section") + { + auto const& filename = std::get<0>(testDataRemSection); + // read from file + mINI::INIFile file(filename); + mINI::INIStructure ini; + EXPECT(file.read(ini) == true); + // update data + ini.remove("section"); + // write to file + EXPECT(file.write(ini) == true); + // verify data + EXPECT(verifyData(testDataRemSection)); + }, + CASE("Test: Duplicate keys") + { + auto const& filename = std::get<0>(testDataDuplicateKeys); + // read from file + mINI::INIFile file(filename); + mINI::INIStructure ini; + EXPECT(file.read(ini) == true); + // update data + ini["section"]["data"] = "D"; + // write to file + EXPECT(file.write(ini) == true); + // verify data + EXPECT(verifyData(testDataDuplicateKeys)); + }, + CASE("Test: Duplicate sections") + { + auto const& filename = std::get<0>(testDataDuplicateSections); + // read from file + mINI::INIFile file(filename); + mINI::INIStructure ini; + EXPECT(file.read(ini) == true); + // update data + ini["section"]["data"] = "A"; + // write to file + EXPECT(file.write(ini) == true); + // verify data + EXPECT(verifyData(testDataDuplicateSections)); + }, + CASE("Test: Pretty print") + { + auto const& filename = std::get<0>(testDataPrettyPrint); + // read from file + mINI::INIFile file(filename); + mINI::INIStructure ini; + EXPECT(file.read(ini) == true); + // update data + ini["section1"]["value3"] = "C"; + ini["section2"]["value2"] = "B"; + ini["section3"].set({ + {"value1", "A", ""}, + {"value2", "B", ""} + }); + // write to file + EXPECT(file.write(ini, true) == true); + // verify data + EXPECT(verifyData(testDataPrettyPrint)); + }, + CASE("Test: Write to empty file") + { + auto const& filename = std::get<0>(testDataEmptyFile); + // read from file + mINI::INIFile file(filename); + mINI::INIStructure ini; + EXPECT(file.read(ini) == true); + // update data + ini["section"]["key"] = "value"; + // write to file + EXPECT(file.write(ini) == true); + // verify data + EXPECT(verifyData(testDataEmptyFile)); + }, + CASE("Test: Write to empty section") + { + auto const& filename = std::get<0>(testDataEmptySection); + // read from file + mINI::INIFile file(filename); + mINI::INIStructure ini; + EXPECT(file.read(ini) == true); + // update data + ini["section"]["key"] = "value"; + // write to file + EXPECT(file.write(ini) == true); + // verify data + EXPECT(verifyData(testDataEmptySection)); + }, + CASE("Test: Write to a single empty section among many") + { + auto const& filename = std::get<0>(testDataManyEmptySections); + // read from file + mINI::INIFile file(filename); + mINI::INIStructure ini; + EXPECT(file.read(ini) == true); + // update data + ini["section3"]["key"] = "value"; + // write to file + EXPECT(file.write(ini) == true); + // verify data + EXPECT(verifyData(testDataManyEmptySections)); + }, + CASE("Test: Write with empty section and key names") + { + auto const& filename = std::get<0>(testDataEmptyNames); + // read from file + mINI::INIFile file(filename); + mINI::INIStructure ini; + EXPECT(file.read(ini) == true); + // update data + ini[""]["key"] = ""; + EXPECT(ini[""].remove("key2") == true); + ini[""][""] = "value3"; + ini["section"][""] = "value2"; + ini["section2"][""] = ""; + // write to file + EXPECT(file.write(ini) == true); + // verify data + EXPECT(verifyData(testDataEmptyNames)); + }, + CASE("Test: Write malformed section names") + { + auto const& filename = std::get<0>(testDataMalformed1); + // read from file + mINI::INIFile file(filename); + mINI::INIStructure ini; + EXPECT(file.read(ini) == true); + // update data + ini["[name1"]["key"] = "value1"; + ini["name2]"]["key"] = "value2"; + ini["[name3]"]["key"] = "value3"; + // write to file + EXPECT(file.write(ini) == true); + // verify data + EXPECT(verifyData(testDataMalformed1)); + }, + CASE("Test: Write malformed key names") + { + auto const& filename = std::get<0>(testDataMalformed2); + // read from file + mINI::INIFile file(filename); + mINI::INIStructure ini; + EXPECT(file.read(ini) == true); + // update data + ini["name"].set({ + {"=", " == ", ""}, + {"a= =", "=bb", ""}, + {"e=", " =f= ", ""} + }); + ini["name"].remove("c= ="); + ini["other"]["="] = "="; + // write to file + EXPECT(file.write(ini) == true); + // verify data + EXPECT(verifyData(testDataMalformed2)); + }, + CASE("Test: Consecutive writes") + { + auto const& filename = std::get<0>(testDataConsecutiveWrites); + // read from file + mINI::INIFile file(filename); + mINI::INIStructure ini; + EXPECT(file.read(ini) == true); + // update data + ini["food"].set({ + {"cheese", "AAA", ""}, + {"ice cream", "BBB", ""}, + {"bananas", "CCC", ""}, + {"soup", "DDD", ""} + }); + ini["things"].set({ + {"scissors", "32", ""}, + {"wooden box", "64", ""}, + {" speakers ", " 128 ", ""}, + {" book ", " 256 ", ""} + }); + // write to file multiple times + for (unsigned int i = 0; i < 10; ++i) + { + EXPECT(file.write(ini) == true); + } + // verify data + EXPECT(verifyData(testDataConsecutiveWrites)); + }, + CASE("Test: Empty values") + { + auto const& filename = std::get<0>(testDataEmptyValues); + // read from file + mINI::INIFile file(filename); + mINI::INIStructure ini; + EXPECT(file.read(ini) == true); + // update data + ini["section"]["key"].clear(); + // write to file + EXPECT(file.write(ini) == true); + // verify data + EXPECT(verifyData(testDataEmptyValues)); + } +}; + +int main(int argc, char** argv) +{ + // write test files + writeTestFile(testDataBasic); + writeTestFile(testDataWithGarbage); + writeTestFile(testDataRemEntry); + writeTestFile(testDataRemSection); + writeTestFile(testDataDuplicateKeys); + writeTestFile(testDataDuplicateSections); + writeTestFile(testDataPrettyPrint); + writeTestFile(testDataEmptyFile); + writeTestFile(testDataEmptySection); + writeTestFile(testDataManyEmptySections); + writeTestFile(testDataEmptyNames); + writeTestFile(testDataMalformed1); + writeTestFile(testDataMalformed2); + writeTestFile(testDataConsecutiveWrites); + writeTestFile(testDataEmptyValues); + + // run tests + if (int failures = lest::run(mINI_tests, argc, argv)) + { + return failures; + } + return std::cout << std::endl << "All tests passed!" << std::endl, EXIT_SUCCESS; +} diff --git a/premake5.bat b/premake5.bat new file mode 100644 index 0000000..3b476e7 --- /dev/null +++ b/premake5.bat @@ -0,0 +1 @@ +premake5 vs2022 \ No newline at end of file diff --git a/premake5.exe b/premake5.exe new file mode 100644 index 0000000000000000000000000000000000000000..1a637aa93c942a9268937d8732abf463ebe8bddc GIT binary patch literal 1568256 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 z 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≈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 literal 0 HcmV?d00001 diff --git a/premake5.lua b/premake5.lua new file mode 100644 index 0000000..baf9b04 --- /dev/null +++ b/premake5.lua @@ -0,0 +1,43 @@ +workspace "IniReader" + configurations { "Release", "Debug" } + platforms { "Win32", "Win64" } + location "build" + objdir ("build/obj") + buildlog ("build/log/%{prj.name}.log") + buildoptions {"-std:c++latest"} + + kind "ConsoleApp" + language "C++" + characterset ("Unicode") + staticruntime "On" + targetdir ("tests") + + includedirs { "mINI/src/mini/" } + includedirs { "mINI/tests/lest" } + includedirs { "source" } + + filter "configurations:Debug" + defines "DEBUG" + symbols "On" + + filter "configurations:Release" + defines "NDEBUG" + optimize "On" + +project "IniReader" + files { "IniReader.h" } + files { "IniReader.cpp" } +project "testcasesens" + files { "mINI/tests/testcasesens.cpp" } +project "testcopy" + files { "mINI/tests/testcopy.cpp" } +project "testgenerate" + files { "mINI/tests/testgenerate.cpp" } +project "testhuge" + files { "mINI/tests/testhuge.cpp" } +project "testread" + files { "mINI/tests/testread.cpp" } +project "testutf8" + files { "mINI/tests/testutf8.cpp" } +project "testwrite" + files { "mINI/tests/testwrite.cpp" } \ No newline at end of file diff --git a/tests/SplinterCell.in b/tests/SplinterCell.in new file mode 100644 index 0000000..4fd3c13 --- /dev/null +++ b/tests/SplinterCell.in @@ -0,0 +1,290 @@ +[URL] +Protocol=unreal +ProtocolDescription=Unreal Protocol +Name=Player +Map=Index.scl +LocalMap=menu\menu.scl +MapExt=scl +EXEName=SplinterCell.exe +SaveExt=sav +Port=7777 +Class=EchelonCharacter.ESam + +[FirstRun] +FirstRun=829 + +[Init] +LogFlags=LNONE +;LogFlags=LPLAYERCONTROLLER | LLEVEL2 +UseDIMouse=False + +[Engine.Engine] +RenderDevice=D3DDrv.D3DRenderDevice +GameRenderDevice=D3DDrv.D3DRenderDevice +AudioDevice=DareAudio.DareAudioSubsystem +Console=Engine.Console +DefaultPlayerMenu=None +EchelonPCConsole=EchelonMenus.EPCConsole +Language=int +GameEngine=Engine.GameEngine +EditorEngine=Editor.EditorEngine +WindowedRenderDevice=D3DDrv.D3DRenderDevice +DefaultGame=Echelon.EchelonGameInfo +DefaultServerGame=Engine.GameInfo +ViewportManager=WinDrv.WindowsClient +Render=Render.Render +Input=Engine.Input +Canvas=Echelon.ECanvas +Editor3DRenderDevice=D3DDrv.D3DRenderDevice + +[Core.System] +PurgeCacheDays=30 +SavePath=..\Save +CachePath=..\Cache +CacheExt=.uxx +Paths=..\System\*.u +Paths=..\Maps\*.scl +Paths=..\Maps\prog\*.scl +Paths=..\Textures\*.utx +Paths=..\Textures\prog\*.utx +Paths=..\Sounds\*.uax +Paths=..\Sounds\prog\*.uax +Paths=..\Music\*.umx +Paths=..\StaticMeshes\*.usx +Paths=..\StaticMeshes\prog\*.usx +Paths=..\Animations\*.ukx +Suppress=DevLoad +Suppress=DevSave +Suppress=DevNetTraffic +Suppress=DevGarbage +Suppress=DevKill +Suppress=DevReplace +Suppress=DevCompile +Suppress=DevBind +Suppress=DevBsp + +[Engine.GameEngine] +CacheSizeMegs=4 +UseSound=true + +[WinDrv.WindowsClient] +TextureDetail=High +SkinDetail=High +Brightness=0.500000 +Contrast=0.500000 +Gamma=1.000000 +MipFactor=1.000000 +UseJoystick=True +CaptureMouse=True +StartupFullscreen=True +ScreenFlashes=True +NoLighting=False +DeadZoneXYZ=True +DeadZoneRUV=False +InvertVertical=False +ScaleXYZ=1.000000 +ScaleRUV=1.000000 +MinDesiredFrameRate=10.000000 +Decals=True +NoDynamicLights=False +SkinDetail=High +TextureDetail=High +NoFractalAnim=False +Decals=False + +[D3DDrv.D3DRenderDevice] +ForceShadowMode=1 +FullScreenVideo=True +Translucency=True +VolumetricLighting=False +ShinySurfaces=True +HighDetailActors=True +UsePrecaching=True +UseMipmapping=True +UseTrilinear=True +UseMultitexture=True +UsePageFlipping=True +UseFullscreen=False +UseGammaCorrection=True +DetailTextures=False +UseTripleBuffering=True +UsePrecache=True +Use32BitTextures=False +HardwareSkinning=False +AdapterNumber=-1 +ReduceMouseLag=False +UseTripleBuffering=False +; ForceShadowMode flag : 0==projector, 1==buffer, unspecified==auto-detect +;ForceShadowMode=0 +ForceShadowMode=1 +FullScreenVideo=True +EmulateGF2Mode=0 +FullScreenVideo=True + +[Editor.EditorEngine] +UseSound=true +CacheSizeMegs=6 +GridEnabled=True +SnapVertices=False +SnapDistance=10.000000 +GridSize=(X=16.000000,Y=16.000000,Z=16.000000) +RotGridEnabled=True +RotGridSize=(Pitch=1024,Yaw=1024,Roll=1024) +GameCommandLine=-log +FovAngleDegrees=90.000000 +GodMode=True +AutoSave=True +AutoSaveTimeMinutes=5 +AutoSaveIndex=4 +UseAxisIndicator=True +MatineeCurveDetail=0.100000 +UseSizingBox=True +UseTagDisplay=True +AlwaysShowTerrain=False +UseActorRotationGizmo=False +AudioDevice=None +Console=Class'Engine.Console' +DefaultMenu=None +DefaultPlayerMenu=None +NetworkDevice=None +Language=None +C_WorldBox=(B=107,G=0,R=0,A=255) +C_GroundPlane=(B=63,G=0,R=0,A=255) +C_GroundHighlight=(B=127,G=0,R=0,A=255) +C_BrushWire=(B=63,G=63,R=255,A=255) +C_Pivot=(B=0,G=255,R=0,A=255) +C_Select=(B=127,G=0,R=0,A=255) +C_Current=(B=0,G=0,R=0,A=255) +C_AddWire=(B=255,G=127,R=127,A=255) +C_SubtractWire=(B=63,G=192,R=255,A=255) +C_GreyWire=(B=163,G=163,R=163,A=255) +C_BrushVertex=(B=0,G=0,R=0,A=255) +C_BrushSnap=(B=0,G=0,R=0,A=255) +C_Invalid=(B=163,G=163,R=163,A=255) +C_ActorWire=(B=0,G=63,R=127,A=255) +C_ActorHiWire=(B=0,G=127,R=255,A=255) +C_Black=(B=0,G=0,R=0,A=255) +C_White=(B=255,G=255,R=255,A=255) +C_Mask=(B=0,G=0,R=0,A=255) +C_SemiSolidWire=(B=0,G=255,R=127,A=255) +C_NonSolidWire=(B=32,G=192,R=63,A=255) +C_WireBackground=(B=0,G=0,R=0,A=255) +C_WireGridAxis=(B=119,G=119,R=119,A=255) +C_ActorArrow=(B=0,G=0,R=163,A=255) +C_ScaleBox=(B=11,G=67,R=151,A=255) +C_ScaleBoxHi=(B=157,G=149,R=223,A=255) +C_ZoneWire=(B=0,G=0,R=0,A=255) +C_Mover=(B=128,G=0,R=128,A=255) +C_OrthoBackground=(B=163,G=163,R=163,A=255) +C_StaticMesh=(B=127,G=127,R=0,A=255) +C_ConstraintLine=(B=0,G=255,R=0,A=255) +C_AnimMesh=(B=28,G=221,R=221,A=255) +ShowNavMarkers=True +C_Volume=(B=225,G=196,R=255,A=255) +C_BlockingVolume=(B=150,G=70,R=150,A=255) +EditPackages=Core +EditPackages=Engine +EditPackages=Editor +EditPackages=EchelonEffect +EditPackages=Echelon +EditPackages=EchelonGameObject +EditPackages=EchelonIngredient +EditPackages=EchelonCharacter +EditPackages=EchelonHUD +EditPackages=EchelonPattern +EditPackages=UWindow +EditPackages=UDebugMenu +EditPackages=EchelonMenus + +[UMenu.UnrealConsole] +RootWindow=UMenu.UMenuRootWindow +UWindowKey=IK_Esc +ShowDesktop=True + +[UMenu.UMenuMenuBar] +ShowHelp=True +GameUMenuDefault=UTMenu.UTGameMenu +MultiplayerUMenuDefault=UTMenu.UTMultiplayerMenu +OptionsUMenuDefault=UTMenu.UTOptionsMenu + +[Engine.GameInfo] +VisFullyThreshold=120.000000 +VisMostlyThreshold=78.000000 +VisPartiallyThreshold=42.000000 +VisBarelyThreshold=15.000000 +VisSpeedGain=10.000000 +VisCrouchMul=0.90000 +VisBackToWallMul=0.90000 +UseRumble=False + +[Engine.Console] +ConsoleKey=113 + +[WindowPositions] +Material Properties=(X=-341,Y=-139,XL=692,YL=606) +VFToolbar=(X=3,Y=3,XL=418,YL=24) +PictureButton=(X=692,Y=8,XL=22,YL=20) +Surface Properties=(X=-5,Y=-43,XL=437,YL=267) +WPropertyPage=(X=0,Y=0,XL=336,YL=348) +Terrain Editing=(X=-5,Y=-43,XL=577,YL=426) +SubTools=(X=15,Y=200,XL=542,YL=211) +Matinee=(X=-5,Y=-43,XL=394,YL=426) +Build Options=(X=-5,Y=-43,XL=368,YL=412) +BottomBar=(X=0,Y=0,XL=1212,YL=36) +BottomBarStandard=(X=74,Y=963,XL=719,YL=35) +TopBar=(X=0,Y=0,XL=1280,YL=32) +ThinScrollBar=(X=64,Y=0,XL=4,YL=924) +EditorToolbar=(X=0,Y=0,XL=68,YL=924) +Sound Browser=(X=4,Y=32,XL=843,YL=608) +Music Browser=(X=4,Y=32,XL=843,YL=608) +Group Browser=(X=4,Y=32,XL=843,YL=608) +New Material=(X=-296,Y=-92,XL=594,YL=449) +Master Browser=(X=-5,Y=-43,XL=861,YL=692) +Texture Browser=(X=9,Y=75,XL=843,YL=608) +Static Mesh Browser=(X=9,Y=75,XL=843,YL=608) +Actor Browser=(X=9,Y=75,XL=843,YL=608) +Prefab Browser=(X=9,Y=75,XL=843,YL=608) +InAnimWindowProperties=(X=632,Y=100,XL=204,YL=520) +Animation Browser=(X=9,Y=75,XL=843,YL=608) +Mesh Browser=(X=9,Y=75,XL=843,YL=608) +Load Errors=(X=389,Y=275,XL=491,YL=358) +Check Map=(X=389,Y=280,XL=491,YL=348) +Scale Lights=(X=489,Y=403,XL=291,YL=102) +Progress=(X=454,Y=411,XL=362,YL=85) +Search for Actors=(X=382,Y=314,XL=506,YL=280) +Replace Textures=(X=373,Y=293,XL=524,YL=322) +Find/Replace=(X=361,Y=248,XL=458,YL=193) +CodeFrame=(X=40,Y=66,XL=811,YL=738) +EditorLog=(X=95,Y=57,XL=450,YL=450) +MdiFrameBottom=(X=73,Y=963,XL=1212,YL=36) +MdiFrameLeft=(X=5,Y=75,XL=68,YL=924) +MdiFrameTop=(X=5,Y=43,XL=1280,YL=32) +Brush Builder=(X=23,Y=35,XL=345,YL=280) +ActorProperties=(X=671,Y=41,XL=546,YL=929) +Viewport Config=(X=632,Y=472,XL=335,YL=126) +GameLog=(X=165,Y=304,XL=969,YL=659) +Import Texture=(X=-462,Y=-245,XL=366,YL=249) +Import Static Mesh=(X=-160,Y=42,XL=366,YL=153) +ActorProperties.Split=196 +Patrol Tool=(X=-5,Y=-43,XL=319,YL=534) +CrashBox=(X=369,Y=375,XL=542,YL=274) +LevelProperties=(X=266,Y=101,XL=526,YL=484) +New Notify=(X=-4,Y=-32,XL=522,YL=191) +New Mesh/Animation=(X=-4,Y=-32,XL=366,YL=288) +EditActor=(X=956,Y=168,XL=640,YL=931) +Add Special=(X=478,Y=366,XL=324,YL=181) +PatternED=(X=77,Y=-10,XL=1097,YL=860) +Convert=(X=0,Y=0,XL=285,YL=179) + +[UDebugMenu.UDebugMapListCW] +LastGameType=Engine.GameInfo + +[EchelonMenus.EPCConsole] +RootWindow=EchelonMenus.EPCMainMenuRootWindow +;RootWindow=UDebugMenu.UDebugRootWindow +StartMenus=true +HideMenusAtStart=false + +[EchelonMenus.EPCMainMenuRootWindow] +TitleFont=0 + diff --git a/tests/SplinterCell.in2 b/tests/SplinterCell.in2 new file mode 100644 index 0000000..9abe237 --- /dev/null +++ b/tests/SplinterCell.in2 @@ -0,0 +1,11 @@ +[URL] +Protocol=unreal +Protocol=unreal +Protocol=unreal +Protocol=unreal + +[URL2] +Protocol2=unreal +Protocol2=unreal +Protocol2=unreal +Protocol2=unreal \ No newline at end of file diff --git a/tests/test.bat b/tests/test.bat new file mode 100644 index 0000000..f6d809d --- /dev/null +++ b/tests/test.bat @@ -0,0 +1,3 @@ +@echo off + +for /r "." %%a in (*.exe) do "%%~fa" \ No newline at end of file