Fix failing test TestFileItem.GetLocalArt
authorSam Spilsbury <smspillaz@gmail.com>
Sun, 16 Jun 2013 10:25:42 +0000 (18:25 +0800)
committerSam Spilsbury <smspillaz@gmail.com>
Mon, 17 Jun 2013 00:57:48 +0000 (08:57 +0800)
Ensure that CAdvancedSettings is cleared entirely before the test
runs as we should not preserve state between tests.

xbmc/settings/AdvancedSettings.cpp
xbmc/test/TestFileItem.cpp

index 3189ad9..410fe62 100644 (file)
@@ -202,15 +202,19 @@ void CAdvancedSettings::Initialize()
 
   m_videoCleanDateTimeRegExp = "(.*[^ _\\,\\.\\(\\)\\[\\]\\-])[ _\\.\\(\\)\\[\\]\\-]+(19[0-9][0-9]|20[0-1][0-9])([ _\\,\\.\\(\\)\\[\\]\\-]|[^0-9]$)";
 
+  m_videoCleanStringRegExps.clear();
   m_videoCleanStringRegExps.push_back("[ _\\,\\.\\(\\)\\[\\]\\-](ac3|dts|custom|dc|remastered|divx|divx5|dsr|dsrip|dutch|dvd|dvd5|dvd9|dvdrip|dvdscr|dvdscreener|screener|dvdivx|cam|fragment|fs|hdtv|hdrip|hdtvrip|internal|limited|multisubs|ntsc|ogg|ogm|pal|pdtv|proper|repack|rerip|retail|r3|r5|bd5|se|svcd|swedish|german|read.nfo|nfofix|unrated|extended|ws|telesync|ts|telecine|tc|brrip|bdrip|480p|480i|576p|576i|720p|720i|1080p|1080i|3d|hrhd|hrhdtv|hddvd|bluray|x264|h264|xvid|xvidvd|xxx|www.www|cd[1-9]|\\[.*\\])([ _\\,\\.\\(\\)\\[\\]\\-]|$)");
   m_videoCleanStringRegExps.push_back("(\\[.*\\])");
 
+  m_moviesExcludeFromScanRegExps.clear();
   m_moviesExcludeFromScanRegExps.push_back("-trailer");
   m_moviesExcludeFromScanRegExps.push_back("[!-._ \\\\/]sample[-._ \\\\/]");
   m_tvshowExcludeFromScanRegExps.push_back("[!-._ \\\\/]sample[-._ \\\\/]");
 
+  m_folderStackRegExps.clear();
   m_folderStackRegExps.push_back("((cd|dvd|dis[ck])[0-9]+)$");
 
+  m_videoStackRegExps.clear();
   m_videoStackRegExps.push_back("(.*?)([ _.-]*(?:cd|dvd|p(?:(?:ar)?t)|dis[ck]|d)[ _.-]*[0-9]+)(.*?)(\\.[^.]+)$");
   m_videoStackRegExps.push_back("(.*?)([ _.-]*(?:cd|dvd|p(?:(?:ar)?t)|dis[ck]|d)[ _.-]*[a-d])(.*?)(\\.[^.]+)$");
   m_videoStackRegExps.push_back("(.*?)([ ._-]*[a-d])(.*?)(\\.[^.]+)$");
@@ -218,6 +222,7 @@ void CAdvancedSettings::Initialize()
   // in a flat dir structure, but is perfectly safe in a dir-per-vid one.
   //m_videoStackRegExps.push_back("(.*?)([ ._-]*[0-9])(.*?)(\\.[^.]+)$");
 
+  m_tvshowEnumRegExps.clear();
   // foo.s01.e01, foo.s01_e01, S01E02 foo, S01 - E02
   m_tvshowEnumRegExps.push_back(TVShowRegexp(false,"[Ss]([0-9]+)[][ ._-]*[Ee]([0-9]+(?:(?:[a-i]|\\.[1-9])(?![0-9]))?)([^\\\\/]*)$"));
   // foo.ep01, foo.EP_01
index cd29e37..f2e8c58 100644 (file)
@@ -57,6 +57,8 @@ TEST(TestFileItem, GetLocalArt)
                                   { "/home/user/TV Shows/Dexter/S1/1x01.avi", false, "/home/user/TV Shows/Dexter/S1/1x01.tbn" },
                                   { "rar://g%3a%5cmultimedia%5cmovies%5cSphere%2erar/Sphere.avi", false, "g:\\multimedia\\movies\\Sphere.tbn" }};
 
+  // Force all settings to be reset to defaults
+  g_advancedSettings.OnSettingsUnloaded();
   g_advancedSettings.Initialize();
 
   for (unsigned int i = 0; i < sizeof(test_files) / sizeof(testfiles); i++)
@@ -65,7 +67,7 @@ TEST(TestFileItem, GetLocalArt)
     item.SetPath(test_files[i].file);
     std::string path = CURL(item.GetLocalArt("art.jpg", test_files[i].use_folder)).Get();
     std::string compare = CURL(test_files[i].base).Get();
-    EXPECT_EQ(path, compare);
+    EXPECT_EQ(compare, path);
   }
 
   for (unsigned int i = 0; i < sizeof(test_file2) / sizeof(testfiles); i++)
@@ -74,7 +76,7 @@ TEST(TestFileItem, GetLocalArt)
     item.SetPath(test_file2[i].file);
     std::string path = CURL(item.GetLocalArt("", test_file2[i].use_folder)).Get();
     std::string compare = CURL(test_file2[i].base).Get();
-    EXPECT_EQ(path, compare);
+    EXPECT_EQ(compare, path);
   }
 }