summaryrefslogtreecommitdiffstats
path: root/xbmc/utils/test/TestLabelFormatter.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'xbmc/utils/test/TestLabelFormatter.cpp')
-rw-r--r--xbmc/utils/test/TestLabelFormatter.cpp69
1 files changed, 69 insertions, 0 deletions
diff --git a/xbmc/utils/test/TestLabelFormatter.cpp b/xbmc/utils/test/TestLabelFormatter.cpp
new file mode 100644
index 0000000..633e89a
--- /dev/null
+++ b/xbmc/utils/test/TestLabelFormatter.cpp
@@ -0,0 +1,69 @@
+/*
+ * Copyright (C) 2005-2018 Team Kodi
+ * This file is part of Kodi - https://kodi.tv
+ *
+ * SPDX-License-Identifier: GPL-2.0-or-later
+ * See LICENSES/README.md for more information.
+ */
+
+#include "FileItem.h"
+#include "ServiceBroker.h"
+#include "filesystem/File.h"
+#include "settings/Settings.h"
+#include "settings/SettingsComponent.h"
+#include "test/TestUtils.h"
+#include "utils/LabelFormatter.h"
+
+#include <gtest/gtest.h>
+
+/* Set default settings used by CLabelFormatter. */
+class TestLabelFormatter : public testing::Test
+{
+protected:
+ TestLabelFormatter() = default;
+
+ ~TestLabelFormatter() override
+ {
+ CServiceBroker::GetSettingsComponent()->GetSettings()->Unload();
+ }
+};
+
+TEST_F(TestLabelFormatter, FormatLabel)
+{
+ XFILE::CFile *tmpfile;
+ std::string tmpfilepath;
+ LABEL_MASKS labelMasks;
+ CLabelFormatter formatter("", labelMasks.m_strLabel2File);
+
+ ASSERT_NE(nullptr, (tmpfile = XBMC_CREATETEMPFILE("")));
+ tmpfilepath = XBMC_TEMPFILEPATH(tmpfile);
+
+ CFileItemPtr item(new CFileItem(tmpfilepath));
+ item->SetPath(tmpfilepath);
+ item->m_bIsFolder = false;
+ item->Select(true);
+
+ formatter.FormatLabel(item.get());
+
+ EXPECT_TRUE(XBMC_DELETETEMPFILE(tmpfile));
+}
+
+TEST_F(TestLabelFormatter, FormatLabel2)
+{
+ XFILE::CFile *tmpfile;
+ std::string tmpfilepath;
+ LABEL_MASKS labelMasks;
+ CLabelFormatter formatter("", labelMasks.m_strLabel2File);
+
+ ASSERT_NE(nullptr, (tmpfile = XBMC_CREATETEMPFILE("")));
+ tmpfilepath = XBMC_TEMPFILEPATH(tmpfile);
+
+ CFileItemPtr item(new CFileItem(tmpfilepath));
+ item->SetPath(tmpfilepath);
+ item->m_bIsFolder = false;
+ item->Select(true);
+
+ formatter.FormatLabel2(item.get());
+
+ EXPECT_TRUE(XBMC_DELETETEMPFILE(tmpfile));
+}