You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ignite.apache.org by pt...@apache.org on 2019/06/10 18:45:19 UTC

[ignite] branch ignite-dotnet-hanging-test created (now 6aaaf41)

This is an automated email from the ASF dual-hosted git repository.

ptupitsyn pushed a change to branch ignite-dotnet-hanging-test
in repository https://gitbox.apache.org/repos/asf/ignite.git.


      at 6aaaf41  Split tests by use cases

This branch includes the following new commits:

     new cf219ef  Add reproducer within problematic plugin test
     new 6aaaf41  Split tests by use cases

The 2 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.



[ignite] 01/02: Add reproducer within problematic plugin test

Posted by pt...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

ptupitsyn pushed a commit to branch ignite-dotnet-hanging-test
in repository https://gitbox.apache.org/repos/asf/ignite.git

commit cf219eff7c2160bca2317aefd382b92330effa64
Author: Pavel Tupitsyn <pt...@apache.org>
AuthorDate: Mon Jun 10 21:11:46 2019 +0300

    Add reproducer within problematic plugin test
---
 .../platforms/dotnet/Apache.Ignite.Core.Tests/Plugin/PluginTest.cs    | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Plugin/PluginTest.cs b/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Plugin/PluginTest.cs
index f36d60d..ffe2464 100644
--- a/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Plugin/PluginTest.cs
+++ b/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Plugin/PluginTest.cs
@@ -225,6 +225,10 @@ namespace Apache.Ignite.Core.Tests.Plugin
                     "normalPlugin.Start", "errPlugin.Start",
                     "errPlugin.Stop", "normalPlugin.Stop"
                 }, PluginLog);
+
+            // Verify ignite start-stop.
+            Ignition.Start(TestUtils.GetTestConfiguration());
+            Ignition.StopAll(true);
         }
 
         private class NoAttributeConfig : IPluginConfiguration


[ignite] 02/02: Split tests by use cases

Posted by pt...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

ptupitsyn pushed a commit to branch ignite-dotnet-hanging-test
in repository https://gitbox.apache.org/repos/asf/ignite.git

commit 6aaaf41711d6f4353d79bc3a2665131ade8a2d74
Author: Pavel Tupitsyn <pt...@apache.org>
AuthorDate: Mon Jun 10 21:42:46 2019 +0300

    Split tests by use cases
---
 .../Apache.Ignite.Core.Tests/Plugin/PluginTest.cs  | 64 +++++++++++++++-------
 1 file changed, 45 insertions(+), 19 deletions(-)

diff --git a/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Plugin/PluginTest.cs b/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Plugin/PluginTest.cs
index ffe2464..432c419 100644
--- a/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Plugin/PluginTest.cs
+++ b/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Plugin/PluginTest.cs
@@ -38,6 +38,14 @@ namespace Apache.Ignite.Core.Tests.Plugin
         /** Plugin log. */
         private static readonly List<string> PluginLog = new List<string>();
 
+        [TearDown]
+        public void TearDown()
+        {
+            // Verify ignite start-stop.
+            Ignition.Start(TestUtils.GetTestConfiguration());
+            Ignition.StopAll(true);
+        }
+
         /// <summary>
         /// Tests the plugin life cycle.
         /// </summary>
@@ -175,29 +183,28 @@ namespace Apache.Ignite.Core.Tests.Plugin
                 "at org.apache.ignite.platform.plugin.PlatformTestPluginTarget.processInLongOutLong"));
         }
 
-        /// <summary>
-        /// Tests invalid plugins.
-        /// </summary>
         [Test]
-        public void TestInvalidPlugins()
+        public void IgnitionStart_MissingPluginConfigurationAtribute_ThrowsException()
         {
-            Action<ICollection<IPluginConfiguration>> check = x => Ignition.Start(
-                new IgniteConfiguration(TestUtils.GetTestConfiguration()) {PluginConfigurations = x});
-
-            // Missing attribute.
-            var ex = Assert.Throws<IgniteException>(() => check(new[] { new NoAttributeConfig(),  }));
+            var ex = Assert.Throws<IgniteException>(() => TryStart(new[] { new NoAttributeConfig() }));
             Assert.IsNotNull(ex.InnerException);
             Assert.AreEqual(string.Format("{0} of type {1} has no {2}", typeof(IPluginConfiguration),
                 typeof(NoAttributeConfig), typeof(PluginProviderTypeAttribute)), ex.InnerException.Message);
+        }
 
-            // Empty plugin name.
-            ex = Assert.Throws<IgniteException>(() => check(new[] {new EmptyNameConfig()}));
+        [Test]
+        public void IgnitionStart_EmptyPluginName_ThrowsException()
+        {
+            var ex = Assert.Throws<IgniteException>(() => TryStart(new[] {new EmptyNameConfig()}));
             Assert.IsNotNull(ex.InnerException);
             Assert.AreEqual(string.Format("{0}.Name should not be null or empty: {1}", typeof(IPluginProvider<>),
                 typeof(EmptyNamePluginProvider)), ex.InnerException.Message);
+        }
 
-            // Duplicate plugin name.
-            ex = Assert.Throws<IgniteException>(() => check(new[]
+        [Test]
+        public void IgnitionStart_DuplicatePluginName_ThrowsException()
+        {
+            var ex = Assert.Throws<IgniteException>(() => TryStart(new[]
             {
                 new TestIgnitePluginConfiguration(),
                 new TestIgnitePluginConfiguration()
@@ -205,12 +212,18 @@ namespace Apache.Ignite.Core.Tests.Plugin
             Assert.IsNotNull(ex.InnerException);
             Assert.AreEqual(string.Format("Duplicate plugin name 'TestPlugin1' is used by plugin providers " +
                                           "'{0}' and '{0}'", typeof(TestIgnitePluginProvider)),
-                                          ex.InnerException.Message);
+                ex.InnerException.Message);
+        }
 
-            // Provider throws an exception.
+        /// <summary>
+        /// Tests invalid plugins.
+        /// </summary>
+        [Test]
+        public void IgnitionStart_PluginProviderThrowsException_StopsAndRethrowsException()
+        {
             PluginLog.Clear();
 
-            ex = Assert.Throws<IgniteException>(() => check(new IPluginConfiguration[]
+            var ex = Assert.Throws<IgniteException>(() => TryStart(new IPluginConfiguration[]
             {
                 new NormalConfig(), new ExceptionConfig()
             }));
@@ -225,10 +238,23 @@ namespace Apache.Ignite.Core.Tests.Plugin
                     "normalPlugin.Start", "errPlugin.Start",
                     "errPlugin.Stop", "normalPlugin.Stop"
                 }, PluginLog);
+        }
 
-            // Verify ignite start-stop.
-            Ignition.Start(TestUtils.GetTestConfiguration());
-            Ignition.StopAll(true);
+        private static void TryStart(ICollection<IPluginConfiguration> x)
+        {
+            try
+            {
+                var igniteConfiguration = new IgniteConfiguration(TestUtils.GetTestConfiguration())
+                {
+                    PluginConfigurations = x
+                };
+
+                Ignition.Start(igniteConfiguration);
+            }
+            finally
+            {
+                Ignition.StopAll(true);
+            }
         }
 
         private class NoAttributeConfig : IPluginConfiguration