Просмотр исходного кода

If a test dll fails, stop immediately rather than trying all the other test dlls
This is very useful behaviour if debugging test failures otherwise it's hard to pick out the test output
Also, some minor method shuffling in the iar module

Justin Clark-Casey (justincc) 14 лет назад
Родитель
Сommit
64fa23df7c

+ 17 - 18
.nant/local.include

@@ -37,48 +37,47 @@
   <exec program="${nunitcmd}" failonerror="false" resultproperty="testresult.opensim.framework.tests">
     <arg value="./bin/OpenSim.Framework.Tests.dll" />
   </exec>
+  <fail message="Failures reported in unit tests." unless="${int::parse(testresult.opensim.framework.tests)==0}" /> 
 
- <exec program="${nunitcmd}" failonerror="false" resultproperty="testresult.opensim.framework.communications.tests">
+  <exec program="${nunitcmd}" failonerror="false" resultproperty="testresult.opensim.framework.communications.tests">
     <arg value="./bin/OpenSim.Framework.Communications.Tests.dll" />
   </exec>
+  <fail message="Failures reported in unit tests." unless="${int::parse(testresult.opensim.framework.communications.tests)==0}" /> 
 
- <exec program="${nunitcmd}" failonerror="false" resultproperty="testresult.opensim.framework.servers.tests">
+  <exec program="${nunitcmd}" failonerror="false" resultproperty="testresult.opensim.framework.servers.tests">
     <arg value="./bin/OpenSim.Framework.Servers.Tests.dll" />
   </exec>
+  <fail message="Failures reported in unit tests." unless="${int::parse(testresult.opensim.framework.servers.tests)==0}" /> 
 
- <exec program="${nunitcmd}" failonerror="false" resultproperty="testresult.opensim.region.clientstack.lindenudp.tests">
+  <exec program="${nunitcmd}" failonerror="false" resultproperty="testresult.opensim.region.clientstack.lindenudp.tests">
     <arg value="./bin/OpenSim.Region.ClientStack.LindenUDP.Tests.dll" />
   </exec>
+  <fail message="Failures reported in unit tests." unless="${int::parse(testresult.opensim.region.clientstack.lindenudp.tests)==0}" /> 
 
- <exec program="${nunitcmd}" failonerror="false" resultproperty="testresult.opensim.region.scriptengine.tests">
+  <exec program="${nunitcmd}" failonerror="false" resultproperty="testresult.opensim.region.scriptengine.tests">
     <arg value="./bin/OpenSim.Region.ScriptEngine.Tests.dll" />
   </exec>
+  <fail message="Failures reported in unit tests." unless="${int::parse(testresult.opensim.region.scriptengine.tests)==0}" /> 
 
- <exec program="${nunitcmd}" failonerror="false" resultproperty="testresult.opensim.region.coremodules.tests">
+  <exec program="${nunitcmd}" failonerror="false" resultproperty="testresult.opensim.region.coremodules.tests">
     <arg value="./bin/OpenSim.Region.CoreModules.Tests.dll" />
   </exec>
+  <fail message="Failures reported in unit tests." unless="${int::parse(testresult.opensim.region.coremodules.tests)==0}" /> 
 
- <exec program="${nunitcmd}" failonerror="false" resultproperty="testresult.opensim.region.framework.tests">
+  <exec program="${nunitcmd}" failonerror="false" resultproperty="testresult.opensim.region.framework.tests">
     <arg value="./bin/OpenSim.Region.Framework.Tests.dll" />
   </exec>
+  <fail message="Failures reported in unit tests." unless="${int::parse(testresult.opensim.region.framework.tests)==0}" /> 
 
- <exec program="${nunitcmd}" failonerror="false" resultproperty="testresult.opensim.data.sqlite.tests">
+  <exec program="${nunitcmd}" failonerror="false" resultproperty="testresult.opensim.data.sqlite.tests">
     <arg value="./bin/OpenSim.Data.SQLite.Tests.dll" />
   </exec>
+  <fail message="Failures reported in unit tests." unless="${int::parse(testresult.opensim.data.sqlite.tests)==0}" /> 
 
- <exec program="${nunitcmd}" failonerror="false" resultproperty="testresult.opensim.data.mysql.tests">
+  <exec program="${nunitcmd}" failonerror="false" resultproperty="testresult.opensim.data.mysql.tests">
     <arg value="./bin/OpenSim.Data.MySQL.Tests.dll" />
   </exec>
-
- <fail message="Failures reported in unit tests." unless="${int::parse(testresult.opensim.framework.tests)==0}" /> 
- <fail message="Failures reported in unit tests." unless="${int::parse(testresult.opensim.framework.communications.tests)==0}" /> 
- <fail message="Failures reported in unit tests." unless="${int::parse(testresult.opensim.framework.servers.tests)==0}" /> 
- <fail message="Failures reported in unit tests." unless="${int::parse(testresult.opensim.region.clientstack.lindenudp.tests)==0}" /> 
- <fail message="Failures reported in unit tests." unless="${int::parse(testresult.opensim.region.scriptengine.tests)==0}" /> 
- <fail message="Failures reported in unit tests." unless="${int::parse(testresult.opensim.region.coremodules.tests)==0}" /> 
- <fail message="Failures reported in unit tests." unless="${int::parse(testresult.opensim.region.framework.tests)==0}" /> 
- <fail message="Failures reported in unit tests." unless="${int::parse(testresult.opensim.data.sqlite.tests)==0}" /> 
- <fail message="Failures reported in unit tests." unless="${int::parse(testresult.opensim.data.mysql.tests)==0}" /> 
+  <fail message="Failures reported in unit tests." unless="${int::parse(testresult.opensim.data.mysql.tests)==0}" /> 
 
 </target>
 

+ 4 - 1
OpenSim/Region/CoreModules/Avatar/Inventory/Archiver/InventoryArchiveWriteRequest.cs

@@ -199,6 +199,7 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Archiver
             InventoryFolderImpl inventoryFolder = null;
             InventoryItemBase inventoryItem = null;
 
+            /*
             if (!m_userInfo.HasReceivedInventory)
             {
                 // If the region server has access to the user admin service (by which users are created),
@@ -220,13 +221,15 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Archiver
                     m_userInfo.FetchInventory();
                 }
             }
+            */
 
             bool foundStar = false;
 
             // Eliminate double slashes and any leading / on the path.  This might be better done within InventoryFolderImpl
             // itself (possibly at a small loss in efficiency).
             string[] components
-                = m_invPath.Split(new string[] { InventoryFolderImpl.PATH_DELIMITER }, StringSplitOptions.RemoveEmptyEntries);
+                = m_invPath.Split(
+                    new string[] { InventoryFolderImpl.PATH_DELIMITER }, StringSplitOptions.RemoveEmptyEntries);
 
             int maxComponentIndex = components.Length - 1;
 

+ 26 - 25
OpenSim/Region/CoreModules/Avatar/Inventory/Archiver/InventoryArchiverModule.cs

@@ -64,6 +64,7 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Archiver
         /// </value>
         private Dictionary<UUID, Scene> m_scenes = new Dictionary<UUID, Scene>();
         private Scene m_aScene;
+        
         /// <value>
         /// The comms manager we will use for all comms requests
         /// </value>
@@ -110,8 +111,30 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Archiver
             InventoryArchiveSaved handlerInventoryArchiveSaved = OnInventoryArchiveSaved;
             if (handlerInventoryArchiveSaved != null)
                 handlerInventoryArchiveSaved(succeeded, userInfo, invPath, saveStream, reportedException);
+        }       
+
+        public void ArchiveInventory(string firstName, string lastName, string invPath, Stream saveStream)
+        {
+            if (m_scenes.Count > 0)
+            {
+                CachedUserInfo userInfo = GetUserInfo(firstName, lastName);
+
+                if (userInfo != null)
+                    new InventoryArchiveWriteRequest(this, userInfo, invPath, saveStream).Execute();
+            }              
+        }
+                        
+        public void ArchiveInventory(string firstName, string lastName, string invPath, string savePath)
+        {
+            if (m_scenes.Count > 0)
+            {
+                CachedUserInfo userInfo = GetUserInfo(firstName, lastName);
+                
+                if (userInfo != null)
+                    new InventoryArchiveWriteRequest(this, userInfo, invPath, savePath).Execute();
+            }            
         }
-               
+              
         public void DearchiveInventory(string firstName, string lastName, string invPath, Stream loadStream)
         {
             if (m_scenes.Count > 0)
@@ -125,18 +148,7 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Archiver
                     UpdateClientWithLoadedNodes(userInfo, request.Execute());
                 }
             }            
-        }        
-
-        public void ArchiveInventory(string firstName, string lastName, string invPath, Stream saveStream)
-        {
-            if (m_scenes.Count > 0)
-            {
-                CachedUserInfo userInfo = GetUserInfo(firstName, lastName);
-
-                if (userInfo != null)
-                    new InventoryArchiveWriteRequest(this, userInfo, invPath, saveStream).Execute();
-            }              
-        }
+        }         
         
         public void DearchiveInventory(string firstName, string lastName, string invPath, string loadPath)
         {
@@ -151,18 +163,7 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Archiver
                     UpdateClientWithLoadedNodes(userInfo, request.Execute());
                 }
             }                
-        }
-                
-        public void ArchiveInventory(string firstName, string lastName, string invPath, string savePath)
-        {
-            if (m_scenes.Count > 0)
-            {
-                CachedUserInfo userInfo = GetUserInfo(firstName, lastName);
-                
-                if (userInfo != null)
-                    new InventoryArchiveWriteRequest(this, userInfo, invPath, savePath).Execute();
-            }            
-        }                
+        }           
         
         /// <summary>
         /// Load inventory from an inventory file archive