Merge pull request #591 from tbeu/fix-cpp-code-smells

Fix C++ code smells
This commit is contained in:
Emily Bache 2025-02-13 05:42:25 +00:00 committed by GitHub
commit afd4627ee1
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
7 changed files with 22 additions and 23 deletions

View File

@ -1,5 +1,7 @@
#include "GildedRose.h"
using namespace std;
GildedRose::GildedRose(vector<Item> & items) : items(items)
{}

View File

@ -1,24 +1,23 @@
#pragma once
#include <string>
#include <vector>
using namespace std;
class Item
{
public:
string name;
std::string name;
int sellIn;
int quality;
Item(string name, int sellIn, int quality) : name(name), sellIn(sellIn), quality(quality)
Item(std::string name, int sellIn, int quality) : name(name), sellIn(sellIn), quality(quality)
{}
};
class GildedRose
{
public:
vector<Item> & items;
GildedRose(vector<Item> & items);
std::vector<Item> & items;
GildedRose(std::vector<Item> & items);
void updateQuality();
};

View File

@ -12,12 +12,12 @@ std::ostream& operator<<(std::ostream& os, const Item& obj)
TEST_CASE("GildedRoseApprovalTests", "VerifyCombinations")
{
std::vector<string> names { "Foo" };
std::vector<std::string> names { "Foo" };
std::vector<int> sellIns { 1 };
std::vector<int> qualities { 1 };
auto f = [](string name, int sellIn, int quality) {
vector<Item> items = {Item(name, sellIn, quality)};
auto f = [](std::string name, int sellIn, int quality) {
std::vector<Item> items = {Item(name, sellIn, quality)};
GildedRose app(items);
app.updateQuality();
return items[0];

View File

@ -3,7 +3,7 @@
TEST_CASE("GildedRoseUnitTest", "Foo")
{
vector<Item> items;
std::vector<Item> items;
items.push_back(Item("Foo", 0, 0));
GildedRose app(items);
app.updateQuality();

View File

@ -12,12 +12,12 @@ std::ostream& operator<<(std::ostream& os, const Item& obj)
TEST(GildedRoseApprovalTests, VerifyCombinations) {
std::vector<string> names { "Foo" };
std::vector<std::string> names { "Foo" };
std::vector<int> sellIns { 1 };
std::vector<int> qualities { 1 };
auto f = [](string name, int sellIn, int quality) {
vector<Item> items = {Item(name, sellIn, quality)};
auto f = [](std::string name, int sellIn, int quality) {
std::vector<Item> items = {Item(name, sellIn, quality)};
GildedRose app(items);
app.updateQuality();
return items[0];

View File

@ -2,7 +2,7 @@
#include "GildedRose.h"
TEST(GildedRoseTest, Foo) {
vector<Item> items;
std::vector<Item> items;
items.push_back(Item("Foo", 0, 0));
GildedRose app(items);
app.updateQuality();

View File

@ -3,12 +3,12 @@
void print_item(Item& item)
{
std::cout << item.name << ", " << item.sellIn << ", " << item.quality << std::endl;
std::cout << item.name << ", " << item.sellIn << ", " << item.quality << '\n';
}
int main()
{
vector<Item> items;
std::vector<Item> items;
items.push_back({"+5 Dexterity Vest", 10, 20});
items.push_back({"Aged Brie", 2, 0});
@ -22,22 +22,20 @@ int main()
// this Conjured item doesn't yet work properly
items.push_back({"Conjured Mana Cake", 3, 6});
std::cout << "OMGHAI!" << std::endl;
std::cout << "OMGHAI!" << '\n';
GildedRose app(items);
for (int day = 0; day <= 30; day++)
{
std::cout << "-------- day " << day << " --------" << std::endl;
std::cout << "name, sellIn, quality" << std::endl;
std::cout << "-------- day " << day << " --------" << '\n';
std::cout << "name, sellIn, quality" << '\n';
for (auto& item : items)
{
print_item(item);
}
std::cout << std::endl;
std::cout << '\n';
app.updateQuality();
}
return 0;
}