You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@flink.apache.org by tz...@apache.org on 2020/05/28 11:41:52 UTC
[flink-statefun] 09/10: [FLINK-17875] [core] Parameterize
JsonModuleTest to cover all module format versions
This is an automated email from the ASF dual-hosted git repository.
tzulitai pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/flink-statefun.git
commit 44400f97cbc30f040994af2fcda460b88576aaea
Author: Tzu-Li (Gordon) Tai <tz...@apache.org>
AuthorDate: Wed May 27 13:39:08 2020 +0800
[FLINK-17875] [core] Parameterize JsonModuleTest to cover all module format versions
This closes #119.
This closes #120.
---
.../flink/core/jsonmodule/JsonModuleTest.java | 28 ++++++++++++++++++----
.../{bar-module => module-v1_0}/module.yaml | 0
.../{bar-module => module-v2_0}/module.yaml | 7 +++---
3 files changed, 27 insertions(+), 8 deletions(-)
diff --git a/statefun-flink/statefun-flink-core/src/test/java/org/apache/flink/statefun/flink/core/jsonmodule/JsonModuleTest.java b/statefun-flink/statefun-flink-core/src/test/java/org/apache/flink/statefun/flink/core/jsonmodule/JsonModuleTest.java
index 28ee1fb..44b5bbe 100644
--- a/statefun-flink/statefun-flink-core/src/test/java/org/apache/flink/statefun/flink/core/jsonmodule/JsonModuleTest.java
+++ b/statefun-flink/statefun-flink-core/src/test/java/org/apache/flink/statefun/flink/core/jsonmodule/JsonModuleTest.java
@@ -23,6 +23,8 @@ import static org.junit.Assert.assertThat;
import com.google.protobuf.Any;
import com.google.protobuf.Message;
import java.net.URL;
+import java.util.Arrays;
+import java.util.Collection;
import java.util.Collections;
import org.apache.flink.shaded.jackson2.com.fasterxml.jackson.databind.ObjectMapper;
import org.apache.flink.statefun.flink.core.StatefulFunctionsUniverse;
@@ -32,19 +34,35 @@ import org.apache.flink.statefun.sdk.io.EgressIdentifier;
import org.apache.flink.statefun.sdk.io.IngressIdentifier;
import org.apache.flink.statefun.sdk.spi.StatefulFunctionModule;
import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.junit.runners.Parameterized;
+@RunWith(Parameterized.class)
public class JsonModuleTest {
+ @Parameterized.Parameters(name = "Format version = {0}, module path = \"{1}\"")
+ public static Collection<?> modules() {
+ return Arrays.asList(
+ new Object[] {FormatVersion.v1_0, "module-v1_0/module.yaml"},
+ new Object[] {FormatVersion.v2_0, "module-v2_0/module.yaml"});
+ }
+
+ private final String modulePath;
+
+ public JsonModuleTest(FormatVersion ignored, String modulePath) {
+ this.modulePath = modulePath;
+ }
+
@Test
public void exampleUsage() {
- StatefulFunctionModule module = fromPath("bar-module/module.yaml");
+ StatefulFunctionModule module = fromPath(modulePath);
assertThat(module, notNullValue());
}
@Test
public void testFunctions() {
- StatefulFunctionModule module = fromPath("bar-module/module.yaml");
+ StatefulFunctionModule module = fromPath(modulePath);
StatefulFunctionsUniverse universe = emptyUniverse();
module.configure(Collections.emptyMap(), universe);
@@ -59,7 +77,7 @@ public class JsonModuleTest {
@Test
public void testRouters() {
- StatefulFunctionModule module = fromPath("bar-module/module.yaml");
+ StatefulFunctionModule module = fromPath(modulePath);
StatefulFunctionsUniverse universe = emptyUniverse();
module.configure(Collections.emptyMap(), universe);
@@ -71,7 +89,7 @@ public class JsonModuleTest {
@Test
public void testIngresses() {
- StatefulFunctionModule module = fromPath("bar-module/module.yaml");
+ StatefulFunctionModule module = fromPath(modulePath);
StatefulFunctionsUniverse universe = emptyUniverse();
module.configure(Collections.emptyMap(), universe);
@@ -83,7 +101,7 @@ public class JsonModuleTest {
@Test
public void testEgresses() {
- StatefulFunctionModule module = fromPath("bar-module/module.yaml");
+ StatefulFunctionModule module = fromPath(modulePath);
StatefulFunctionsUniverse universe = emptyUniverse();
module.configure(Collections.emptyMap(), universe);
diff --git a/statefun-flink/statefun-flink-core/src/test/resources/bar-module/module.yaml b/statefun-flink/statefun-flink-core/src/test/resources/module-v1_0/module.yaml
similarity index 100%
copy from statefun-flink/statefun-flink-core/src/test/resources/bar-module/module.yaml
copy to statefun-flink/statefun-flink-core/src/test/resources/module-v1_0/module.yaml
diff --git a/statefun-flink/statefun-flink-core/src/test/resources/bar-module/module.yaml b/statefun-flink/statefun-flink-core/src/test/resources/module-v2_0/module.yaml
similarity index 95%
rename from statefun-flink/statefun-flink-core/src/test/resources/bar-module/module.yaml
rename to statefun-flink/statefun-flink-core/src/test/resources/module-v2_0/module.yaml
index 0afafc6..46ce6c1 100644
--- a/statefun-flink/statefun-flink-core/src/test/resources/bar-module/module.yaml
+++ b/statefun-flink/statefun-flink-core/src/test/resources/module-v2_0/module.yaml
@@ -13,7 +13,7 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-version: "1.0"
+version: "2.0"
module:
meta:
@@ -34,7 +34,8 @@ module:
spec:
endpoint: http://localhost:5959/statefun
states:
- - seen_count
+ - name: seen_count
+ expireAfter: 60000millisecond
maxNumBatchRequests: 10000
- function:
meta:
@@ -43,7 +44,7 @@ module:
spec:
endpoint: http+unix:///hello/world.sock/statefun
states:
- - seen_count
+ - name: seen_count
maxNumBatchRequests: 10000
routers:
- router: