Skip to content

Commit

Permalink
refactor: music module migrate (#731)
Browse files Browse the repository at this point in the history
- music module migration from class to functions within music namespace

Signed-off-by: Guru Mehar Rachaputi <gurumeharrachaputi@gmail.com>
  • Loading branch information
00thirdeye00 committed Jun 25, 2024
1 parent a941440 commit a90b973
Show file tree
Hide file tree
Showing 3 changed files with 21 additions and 24 deletions.
18 changes: 7 additions & 11 deletions include/faker-cxx/Music.h
Original file line number Diff line number Diff line change
Expand Up @@ -2,42 +2,38 @@

#include <string_view>

namespace faker
namespace faker::music
{
class Music
{
public:
/**
* @brief Returns a random artist.
*
* @returns Artist.
*
* @code
* Music::artist() // "Nirvana"
* music::artist() // "Nirvana"
* @endcode
*/
static std::string_view artist();
std::string_view artist();

/**
* @brief Returns a random music genre.
*
* @returns Music genre.
*
* @code
* Music::genre() // "Rock"
* music::genre() // "Rock"
* @endcode
*/
static std::string_view genre();
std::string_view genre();

/**
* @brief Returns a random song name.
*
* @returns Song name.
*
* @code
* Music::songName() // "Light My Fire"
* music::songName() // "Light My Fire"
* @endcode
*/
static std::string_view songName();
};
std::string_view songName();
}
14 changes: 7 additions & 7 deletions src/modules/music/Music.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -5,20 +5,20 @@
#include "faker-cxx/Helper.h"
#include "MusicData.h"

namespace faker
namespace faker::music
{
std::string_view Music::artist()
std::string_view artist()
{
return Helper::arrayElement(music::artists);
return Helper::arrayElement(artists);
}

std::string_view Music::genre()
std::string_view genre()
{
return Helper::arrayElement(music::musicGenres);
return Helper::arrayElement(musicGenres);
}

std::string_view Music::songName()
std::string_view songName()
{
return Helper::arrayElement(music::songNames);
return Helper::arrayElement(songNames);
}
}
13 changes: 7 additions & 6 deletions tests/modules/music/MusicTest.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@

using namespace ::testing;
using namespace faker;
using namespace faker::music;

class MusicTest : public Test
{
Expand All @@ -17,24 +18,24 @@ class MusicTest : public Test

TEST_F(MusicTest, shouldGenerateArtist)
{
const auto generatedArtist = Music::artist();
const auto generatedArtist = artist();

ASSERT_TRUE(std::ranges::any_of(music::artists, [generatedArtist](const std::string_view& artist)
ASSERT_TRUE(std::ranges::any_of(artists, [generatedArtist](const std::string_view& artist)
{ return generatedArtist == artist; }));
}

TEST_F(MusicTest, shouldGenerateGenre)
{
const auto generatedGenre = Music::genre();
const auto generatedGenre = genre();

ASSERT_TRUE(std::ranges::any_of(music::musicGenres, [generatedGenre](const std::string_view& genre)
ASSERT_TRUE(std::ranges::any_of(musicGenres, [generatedGenre](const std::string_view& genre)
{ return generatedGenre == genre; }));
}

TEST_F(MusicTest, shouldGenerateSongName)
{
const auto generatedSongName = Music::songName();
const auto generatedSongName = songName();

ASSERT_TRUE(std::ranges::any_of(music::songNames, [generatedSongName](const std::string_view& songName)
ASSERT_TRUE(std::ranges::any_of(songNames, [generatedSongName](const std::string_view& songName)
{ return generatedSongName == songName; }));
}

0 comments on commit a90b973

Please sign in to comment.