From 0fb8f9a136571912b5429a508d6a03f7c6ff4217 Mon Sep 17 00:00:00 2001 From: Mushfiqur Rahman Abir <28858998+Abir-Tx@users.noreply.github.com> Date: Tue, 18 May 2021 03:36:11 +0600 Subject: [PATCH] Fix for #5 Why: This was a serious bug How: By replacing cin with getline What: closes #5 Tags: getline, bugfix --- .SRCINFO | 2 +- .vscode/settings.json | 6 ++++++ appnotex.cpp | 8 ++++---- test/appnotexTest.cpp | 16 ++++++++++++++++ 4 files changed, 27 insertions(+), 5 deletions(-) diff --git a/.SRCINFO b/.SRCINFO index da36dae..08337b8 100644 --- a/.SRCINFO +++ b/.SRCINFO @@ -1,7 +1,7 @@ pkgbase = appnotex pkgdesc = Quick terminal based note keeper for Linux Apps pkgver = 0.9.0 - pkgrel = 1 + pkgrel = 1.1 url = https://github.com/Abir-Tx/AppNotEx.git arch = x86_64 license = GPL diff --git a/.vscode/settings.json b/.vscode/settings.json index f5e6255..4412dac 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -5,6 +5,12 @@ "driver": "SQLite", "database": "${workspaceFolder:AppNotEx}/data/data.db", "name": "AppNotExData" + }, + { + "previewLimit": 50, + "driver": "SQLite", + "name": "AppNotExTestData", + "database": "${workspaceFolder:AppNotEx}/data/test/data.db" } ], "sqltools.useNodeRuntime": true, diff --git a/appnotex.cpp b/appnotex.cpp index 18b6ee8..9f57ea8 100644 --- a/appnotex.cpp +++ b/appnotex.cpp @@ -70,13 +70,13 @@ int main(int argc, char const *argv[]) { std::string appnameData, distroname, link, note; std::cout << "App Name: "; - std::cin >> appnameData; + getline(std::cin, appnameData); std::cout << "Distro Name: "; - std::cin >> distroname; + getline(std::cin, distroname); std::cout << "App Link: "; - std::cin >> link; + getline(std::cin, link); std::cout << "Extra Notes: "; - std::cin >> note; + getline(std::cin, note); bool queryStatus = db->insertData(dbfilename, tbname, appnameData.c_str(), distroname.c_str(), link.c_str(), note.c_str()); diff --git a/test/appnotexTest.cpp b/test/appnotexTest.cpp index 45c5cad..6df8be5 100644 --- a/test/appnotexTest.cpp +++ b/test/appnotexTest.cpp @@ -21,6 +21,22 @@ TEST(DatabaseTest, insertQueryTest) { EXPECT_TRUE(status); } +TEST(DatabaeTest, fullLineTextTest) { + // Creating database& Table + const char *dbfilename = "../data/test/data.db"; + const char *tbname = "DataTest"; + Database *db = new Database(); + + db->createDb(dbfilename); + db->createTable(dbfilename, tbname); + + bool status = db->insertData(dbfilename, tbname, "mutt", "Arch", + "www.mutt.org", "Emailclient terminal based"); + + delete db; + EXPECT_TRUE(status); +} + TEST(DatabaseTest, createDbTest) { const char *dbfilename = "../data/test/data.db"; const char *tbname = "DataTest";