polygene-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From nic...@apache.org
Subject zest-java git commit: Adding an extra test for ServiceActivation
Date Sat, 07 Nov 2015 12:17:39 GMT
Repository: zest-java
Updated Branches:
  refs/heads/develop 1c16db222 -> 44d9724c3


Adding an extra test for ServiceActivation


Project: http://git-wip-us.apache.org/repos/asf/zest-java/repo
Commit: http://git-wip-us.apache.org/repos/asf/zest-java/commit/44d9724c
Tree: http://git-wip-us.apache.org/repos/asf/zest-java/tree/44d9724c
Diff: http://git-wip-us.apache.org/repos/asf/zest-java/diff/44d9724c

Branch: refs/heads/develop
Commit: 44d9724c3bd3a7994ebd6538edfc0f86abbbc13e
Parents: 1c16db2
Author: Niclas Hedhman <niclas@hedhman.org>
Authored: Sat Nov 7 20:17:17 2015 +0800
Committer: Niclas Hedhman <niclas@hedhman.org>
Committed: Sat Nov 7 20:17:17 2015 +0800

----------------------------------------------------------------------
 .../zest/bootstrap/ServiceAssemblyTest.java     | 93 ++++++++++++++++++++
 1 file changed, 93 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/zest-java/blob/44d9724c/core/runtime/src/test/java/org/apache/zest/bootstrap/ServiceAssemblyTest.java
----------------------------------------------------------------------
diff --git a/core/runtime/src/test/java/org/apache/zest/bootstrap/ServiceAssemblyTest.java
b/core/runtime/src/test/java/org/apache/zest/bootstrap/ServiceAssemblyTest.java
new file mode 100644
index 0000000..cead646
--- /dev/null
+++ b/core/runtime/src/test/java/org/apache/zest/bootstrap/ServiceAssemblyTest.java
@@ -0,0 +1,93 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ */
+
+package org.apache.zest.bootstrap;
+
+import org.apache.zest.api.mixin.Mixins;
+import org.apache.zest.api.service.ServiceActivation;
+import org.apache.zest.api.service.ServiceReference;
+import org.apache.zest.test.AbstractZestTest;
+import org.junit.Test;
+
+import static org.hamcrest.core.IsEqual.equalTo;
+import static org.junit.Assert.assertThat;
+
+public class ServiceAssemblyTest extends AbstractZestTest
+{
+    @Test
+    public void givenMyServiceWithTwoDeclarationsWhenActivatingServiceExpectServiceActivatedOnce()
+        throws Exception
+    {
+        ServiceReference<MyService> ref = module.findService( MyService.class );
+        MyService underTest = ref.get();
+        assertThat(underTest.activated(), equalTo(1));
+        underTest.passivateService();
+        assertThat(underTest.passivated(), equalTo(1));
+    }
+
+    @Override
+    public void assemble( ModuleAssembly module )
+        throws AssemblyException
+    {
+        module.services( MyService.class ).instantiateOnStartup();
+        module.services( MyService.class ).setMetaInfo( "Hello" );
+    }
+
+    @Mixins( MyServiceMixin.class )
+    public static interface MyService extends ServiceActivation
+    {
+        int activated();
+        int passivated();
+    }
+
+    public static class MyServiceMixin implements MyService, ServiceActivation
+    {
+
+        private int activated;
+        private int passivated;
+
+        @Override
+        public int activated()
+        {
+            return activated;
+        }
+
+        @Override
+        public int passivated()
+        {
+            return passivated;
+        }
+
+        @Override
+        public void activateService()
+            throws Exception
+        {
+            activated++;
+        }
+
+        @Override
+        public void passivateService()
+            throws Exception
+        {
+            passivated++;
+
+        }
+    }
+}


Mime
View raw message