Added 2 test requests to postman to show federated creation and query

Project: http://git-wip-us.apache.org/repos/asf/metamodel-membrane/repo
Commit: 
http://git-wip-us.apache.org/repos/asf/metamodel-membrane/commit/45ea4d54
Tree: http://git-wip-us.apache.org/repos/asf/metamodel-membrane/tree/45ea4d54
Diff: http://git-wip-us.apache.org/repos/asf/metamodel-membrane/diff/45ea4d54

Branch: refs/heads/METAMODEL-1159-composite-query
Commit: 45ea4d543cdb069ded1f905ed12f72bb59ef5416
Parents: 4185f5e
Author: Kasper Sørensen <i.am.kasper.soren...@gmail.com>
Authored: Wed Nov 7 22:12:43 2018 -0800
Committer: Kasper Sørensen <i.am.kasper.soren...@gmail.com>
Committed: Wed Nov 7 22:12:43 2018 -0800

----------------------------------------------------------------------
 postman-tests/Membrane.postman_collection.json | 351 ++++++++++++++++----
 1 file changed, 281 insertions(+), 70 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/metamodel-membrane/blob/45ea4d54/postman-tests/Membrane.postman_collection.json
----------------------------------------------------------------------
diff --git a/postman-tests/Membrane.postman_collection.json 
b/postman-tests/Membrane.postman_collection.json
index e249ead..78a8f29 100644
--- a/postman-tests/Membrane.postman_collection.json
+++ b/postman-tests/Membrane.postman_collection.json
@@ -1,10 +1,8 @@
 {
-       "variables": [],
        "info": {
+               "_postman_id": "b07b47aa-5a8c-4be5-bbc3-0fd98040ee92",
                "name": "Membrane",
-               "_postman_id": "fc875392-a36c-6ff7-46fb-53eab9cd3c3e",
-               "description": "",
-               "schema": 
"https://schema.getpostman.com/json/collection/v2.0.0/collection.json";
+               "schema": 
"https://schema.getpostman.com/json/collection/v2.1.0/collection.json";
        },
        "item": [
                {
@@ -24,14 +22,21 @@
                                }
                        ],
                        "request": {
-                               "url": "{{baseUrl}}/swagger.json",
                                "method": "GET",
                                "header": [],
                                "body": {
                                        "mode": "raw",
                                        "raw": ""
                                },
-                               "description": ""
+                               "url": {
+                                       "raw": "{{baseUrl}}/swagger.json",
+                                       "host": [
+                                               "{{baseUrl}}"
+                                       ],
+                                       "path": [
+                                               "swagger.json"
+                                       ]
+                               }
                        },
                        "response": []
                },
@@ -58,20 +63,26 @@
                                }
                        ],
                        "request": {
-                               "url": "{{baseUrl}}/my-tenant",
                                "method": "PUT",
                                "header": [
                                        {
                                                "key": "Content-Type",
-                                               "value": "application/json",
-                                               "description": ""
+                                               "value": "application/json"
                                        }
                                ],
                                "body": {
                                        "mode": "raw",
                                        "raw": "{\n    \n}"
                                },
-                               "description": ""
+                               "url": {
+                                       "raw": "{{baseUrl}}/my-tenant",
+                                       "host": [
+                                               "{{baseUrl}}"
+                                       ],
+                                       "path": [
+                                               "my-tenant"
+                                       ]
+                               }
                        },
                        "response": []
                },
@@ -92,14 +103,21 @@
                                }
                        ],
                        "request": {
-                               "url": "{{baseUrl}}/{{membrane_tenant}}",
                                "method": "GET",
                                "header": [],
                                "body": {
                                        "mode": "raw",
                                        "raw": ""
                                },
-                               "description": ""
+                               "url": {
+                                       "raw": 
"{{baseUrl}}/{{membrane_tenant}}",
+                                       "host": [
+                                               "{{baseUrl}}"
+                                       ],
+                                       "path": [
+                                               "{{membrane_tenant}}"
+                                       ]
+                               }
                        },
                        "response": []
                },
@@ -124,20 +142,27 @@
                                }
                        ],
                        "request": {
-                               "url": 
"{{baseUrl}}/{{membrane_tenant}}/example-postgres",
                                "method": "PUT",
                                "header": [
                                        {
                                                "key": "Content-Type",
-                                               "value": "application/json",
-                                               "description": ""
+                                               "value": "application/json"
                                        }
                                ],
                                "body": {
                                        "mode": "raw",
                                        "raw": "{\n    \"type\":\"jdbc\",\n    
\"url\": \"jdbc:postgresql://example-postgres/membrane\",\n    \"username\": 
\"membrane\",\n    \"password\": \"secret\"\n}"
                                },
-                               "description": ""
+                               "url": {
+                                       "raw": 
"{{baseUrl}}/{{membrane_tenant}}/example-postgres",
+                                       "host": [
+                                               "{{baseUrl}}"
+                                       ],
+                                       "path": [
+                                               "{{membrane_tenant}}",
+                                               "example-postgres"
+                                       ]
+                               }
                        },
                        "response": []
                },
@@ -162,20 +187,27 @@
                                }
                        ],
                        "request": {
-                               "url": 
"{{baseUrl}}/{{membrane_tenant}}/example-couchdb",
                                "method": "PUT",
                                "header": [
                                        {
                                                "key": "Content-Type",
-                                               "value": "application/json",
-                                               "description": ""
+                                               "value": "application/json"
                                        }
                                ],
                                "body": {
                                        "mode": "raw",
                                        "raw": "{\n    \"type\":\"couchdb\",\n  
  \"hostname\": \"example-couchdb\",\n    \"username\": \"membrane\",\n    
\"password\": \"secret\"\n}"
                                },
-                               "description": ""
+                               "url": {
+                                       "raw": 
"{{baseUrl}}/{{membrane_tenant}}/example-couchdb",
+                                       "host": [
+                                               "{{baseUrl}}"
+                                       ],
+                                       "path": [
+                                               "{{membrane_tenant}}",
+                                               "example-couchdb"
+                                       ]
+                               }
                        },
                        "response": []
                },
@@ -202,20 +234,27 @@
                                }
                        ],
                        "request": {
-                               "url": 
"{{baseUrl}}/{{membrane_tenant}}/example-pojo",
                                "method": "PUT",
                                "header": [
                                        {
                                                "key": "Content-Type",
-                                               "value": "application/json",
-                                               "description": ""
+                                               "value": "application/json"
                                        }
                                ],
                                "body": {
                                        "mode": "raw",
                                        "raw": "{\n    \"type\":\"pojo\",\n    
\"table-defs\":\"hello_world (greeting VARCHAR, who VARCHAR); foo (bar INTEGER, 
baz DATE);\"\n}"
                                },
-                               "description": ""
+                               "url": {
+                                       "raw": 
"{{baseUrl}}/{{membrane_tenant}}/example-pojo",
+                                       "host": [
+                                               "{{baseUrl}}"
+                                       ],
+                                       "path": [
+                                               "{{membrane_tenant}}",
+                                               "example-pojo"
+                                       ]
+                               }
                        },
                        "response": []
                },
@@ -246,20 +285,27 @@
                                }
                        ],
                        "request": {
-                               "url": 
"{{baseUrl}}/{{membrane_tenant}}/{{membrane_data_source}}",
                                "method": "GET",
                                "header": [
                                        {
                                                "key": "Content-Type",
-                                               "value": "application/json",
-                                               "description": ""
+                                               "value": "application/json"
                                        }
                                ],
                                "body": {
                                        "mode": "raw",
-                                       "raw": "{\n    \"type\":\"pojo\",\n    
\"table-defs\":\"hello_world (greeting VARCHAR, who VARCHAR); foo (bar INTEGER, 
baz DATE);\"\n}"
+                                       "raw": ""
                                },
-                               "description": ""
+                               "url": {
+                                       "raw": 
"{{baseUrl}}/{{membrane_tenant}}/{{membrane_data_source}}",
+                                       "host": [
+                                               "{{baseUrl}}"
+                                       ],
+                                       "path": [
+                                               "{{membrane_tenant}}",
+                                               "{{membrane_data_source}}"
+                                       ]
+                               }
                        },
                        "response": []
                },
@@ -288,20 +334,29 @@
                                }
                        ],
                        "request": {
-                               "url": 
"{{baseUrl}}/{{membrane_tenant}}/{{membrane_data_source}}/s/{{membrane_schema}}",
                                "method": "GET",
                                "header": [
                                        {
                                                "key": "Content-Type",
-                                               "value": "application/json",
-                                               "description": ""
+                                               "value": "application/json"
                                        }
                                ],
                                "body": {
                                        "mode": "raw",
-                                       "raw": "{\n    \"type\":\"pojo\",\n    
\"table-defs\":\"hello_world (greeting VARCHAR, who VARCHAR); foo (bar INTEGER, 
baz DATE);\"\n}"
+                                       "raw": ""
                                },
-                               "description": ""
+                               "url": {
+                                       "raw": 
"{{baseUrl}}/{{membrane_tenant}}/{{membrane_data_source}}/s/{{membrane_schema}}",
+                                       "host": [
+                                               "{{baseUrl}}"
+                                       ],
+                                       "path": [
+                                               "{{membrane_tenant}}",
+                                               "{{membrane_data_source}}",
+                                               "s",
+                                               "{{membrane_schema}}"
+                                       ]
+                               }
                        },
                        "response": []
                },
@@ -332,20 +387,31 @@
                                }
                        ],
                        "request": {
-                               "url": 
"{{baseUrl}}/{{membrane_tenant}}/{{membrane_data_source}}/s/{{membrane_schema}}/t/{{membrane_table}}",
                                "method": "GET",
                                "header": [
                                        {
                                                "key": "Content-Type",
-                                               "value": "application/json",
-                                               "description": ""
+                                               "value": "application/json"
                                        }
                                ],
                                "body": {
                                        "mode": "raw",
-                                       "raw": "{\n    \"type\":\"pojo\",\n    
\"table-defs\":\"hello_world (greeting VARCHAR, who VARCHAR); foo (bar INTEGER, 
baz DATE);\"\n}"
+                                       "raw": ""
                                },
-                               "description": ""
+                               "url": {
+                                       "raw": 
"{{baseUrl}}/{{membrane_tenant}}/{{membrane_data_source}}/s/{{membrane_schema}}/t/{{membrane_table}}",
+                                       "host": [
+                                               "{{baseUrl}}"
+                                       ],
+                                       "path": [
+                                               "{{membrane_tenant}}",
+                                               "{{membrane_data_source}}",
+                                               "s",
+                                               "{{membrane_schema}}",
+                                               "t",
+                                               "{{membrane_table}}"
+                                       ]
+                               }
                        },
                        "response": []
                },
@@ -367,20 +433,32 @@
                                }
                        ],
                        "request": {
-                               "url": 
"{{baseUrl}}/{{membrane_tenant}}/{{membrane_data_source}}/s/{{membrane_schema}}/t/{{membrane_table}}/d",
                                "method": "POST",
                                "header": [
                                        {
                                                "key": "Content-Type",
-                                               "value": "application/json",
-                                               "description": ""
+                                               "value": "application/json"
                                        }
                                ],
                                "body": {
                                        "mode": "raw",
                                        "raw": "{\n\t\"insert\": 
[\n\t\t{\n\t\t\t\"bar\": 42,\n\t\t\t\"baz\": null\n\t\t}\n\t]\n}"
                                },
-                               "description": ""
+                               "url": {
+                                       "raw": 
"{{baseUrl}}/{{membrane_tenant}}/{{membrane_data_source}}/s/{{membrane_schema}}/t/{{membrane_table}}/d",
+                                       "host": [
+                                               "{{baseUrl}}"
+                                       ],
+                                       "path": [
+                                               "{{membrane_tenant}}",
+                                               "{{membrane_data_source}}",
+                                               "s",
+                                               "{{membrane_schema}}",
+                                               "t",
+                                               "{{membrane_table}}",
+                                               "d"
+                                       ]
+                               }
                        },
                        "response": []
                },
@@ -402,20 +480,32 @@
                                }
                        ],
                        "request": {
-                               "url": 
"{{baseUrl}}/{{membrane_tenant}}/{{membrane_data_source}}/s/{{membrane_schema}}/t/{{membrane_table}}/d",
                                "method": "GET",
                                "header": [
                                        {
                                                "key": "Content-Type",
-                                               "value": "application/json",
-                                               "description": ""
+                                               "value": "application/json"
                                        }
                                ],
                                "body": {
                                        "mode": "raw",
                                        "raw": ""
                                },
-                               "description": ""
+                               "url": {
+                                       "raw": 
"{{baseUrl}}/{{membrane_tenant}}/{{membrane_data_source}}/s/{{membrane_schema}}/t/{{membrane_table}}/d",
+                                       "host": [
+                                               "{{baseUrl}}"
+                                       ],
+                                       "path": [
+                                               "{{membrane_tenant}}",
+                                               "{{membrane_data_source}}",
+                                               "s",
+                                               "{{membrane_schema}}",
+                                               "t",
+                                               "{{membrane_table}}",
+                                               "d"
+                                       ]
+                               }
                        },
                        "response": []
                },
@@ -437,6 +527,17 @@
                                }
                        ],
                        "request": {
+                               "method": "GET",
+                               "header": [
+                                       {
+                                               "key": "Content-Type",
+                                               "value": "application/json"
+                                       }
+                               ],
+                               "body": {
+                                       "mode": "raw",
+                                       "raw": ""
+                               },
                                "url": {
                                        "raw": 
"{{baseUrl}}/{{membrane_tenant}}/{{membrane_data_source}}/q?sql=SELECT * FROM 
{{membrane_table}}",
                                        "host": [
@@ -450,61 +551,153 @@
                                        "query": [
                                                {
                                                        "key": "sql",
-                                                       "value": "SELECT * FROM 
{{membrane_table}}",
-                                                       "equals": true,
-                                                       "description": ""
+                                                       "value": "SELECT * FROM 
{{membrane_table}}"
                                                }
-                                       ],
-                                       "variable": []
-                               },
+                                       ]
+                               }
+                       },
+                       "response": []
+               },
+               {
+                       "name": "Get column info",
+                       "event": [
+                               {
+                                       "listen": "test",
+                                       "script": {
+                                               "type": "text/javascript",
+                                               "exec": [
+                                                       "tests[\"Status code is 
200\"] = responseCode.code === 200;",
+                                                       "",
+                                                       "var jsonData = 
JSON.parse(responseBody);",
+                                                       "tests[\"type is 
column\"] = jsonData.type === \"column\";",
+                                                       ""
+                                               ]
+                                       }
+                               }
+                       ],
+                       "request": {
                                "method": "GET",
                                "header": [
                                        {
                                                "key": "Content-Type",
-                                               "value": "application/json",
-                                               "description": ""
+                                               "value": "application/json"
                                        }
                                ],
                                "body": {
                                        "mode": "raw",
                                        "raw": ""
                                },
-                               "description": ""
+                               "url": {
+                                       "raw": 
"{{baseUrl}}/{{membrane_tenant}}/{{membrane_data_source}}/s/{{membrane_schema}}/t/{{membrane_table}}/c/{{membrane_column}}",
+                                       "host": [
+                                               "{{baseUrl}}"
+                                       ],
+                                       "path": [
+                                               "{{membrane_tenant}}",
+                                               "{{membrane_data_source}}",
+                                               "s",
+                                               "{{membrane_schema}}",
+                                               "t",
+                                               "{{membrane_table}}",
+                                               "c",
+                                               "{{membrane_column}}"
+                                       ]
+                               }
                        },
                        "response": []
                },
                {
-                       "name": "Get column info",
+                       "name": "Create data source - federated",
                        "event": [
                                {
                                        "listen": "test",
                                        "script": {
-                                               "type": "text/javascript",
+                                               "id": 
"9d1f41d7-12f9-44b0-8730-6e869b22e7d2",
                                                "exec": [
                                                        "tests[\"Status code is 
200\"] = responseCode.code === 200;",
                                                        "",
                                                        "var jsonData = 
JSON.parse(responseBody);",
-                                                       "tests[\"type is 
column\"] = jsonData.type === \"column\";",
+                                                       "tests[\"type is 
datasource\"] = jsonData.type === \"datasource\";",
+                                                       "tests[\"is NOT 
updateable\"] = !jsonData.updateable;",
+                                                       "",
+                                                       "tests[\"has > 3 
schemas\"] = jsonData.schemas.length > 3;"
+                                               ],
+                                               "type": "text/javascript"
+                                       }
+                               }
+                       ],
+                       "request": {
+                               "method": "PUT",
+                               "header": [
+                                       {
+                                               "key": "Content-Type",
+                                               "value": "application/json"
+                                       }
+                               ],
+                               "body": {
+                                       "mode": "raw",
+                                       "raw": "{\n    \"type\": 
\"federated\",\n    \"datasources\": [\n        \"example-pojo\",\n        
\"example-couchdb\",\n        \"example-postgres\"\n    ]\n}"
+                               },
+                               "url": {
+                                       "raw": 
"{{baseUrl}}/{{membrane_tenant}}/example-federated",
+                                       "host": [
+                                               "{{baseUrl}}"
+                                       ],
+                                       "path": [
+                                               "{{membrane_tenant}}",
+                                               "example-federated"
+                                       ]
+                               }
+                       },
+                       "response": []
+               },
+               {
+                       "name": "Query federated datasource",
+                       "event": [
+                               {
+                                       "listen": "test",
+                                       "script": {
+                                               "id": 
"689cf505-4bca-49b1-95a6-a861b026e31b",
+                                               "exec": [
+                                                       "tests[\"Status code is 
200\"] = responseCode.code === 200;",
+                                                       "",
+                                                       "var jsonData = 
JSON.parse(responseBody);",
+                                                       "tests[\"type is 
dataset\"] = jsonData.type === \"dataset\";",
                                                        ""
-                                               ]
+                                               ],
+                                               "type": "text/javascript"
                                        }
                                }
                        ],
                        "request": {
-                               "url": 
"{{baseUrl}}/{{membrane_tenant}}/{{membrane_data_source}}/s/{{membrane_schema}}/t/{{membrane_table}}/c/{{membrane_column}}",
                                "method": "GET",
                                "header": [
                                        {
                                                "key": "Content-Type",
-                                               "value": "application/json",
-                                               "description": ""
+                                               "value": "application/json"
                                        }
                                ],
                                "body": {
                                        "mode": "raw",
-                                       "raw": "{\n    \"type\":\"pojo\",\n    
\"table-defs\":\"hello_world (greeting VARCHAR, who VARCHAR); foo (bar INTEGER, 
baz DATE);\"\n}"
+                                       "raw": ""
                                },
-                               "description": ""
+                               "url": {
+                                       "raw": 
"{{baseUrl}}/{{membrane_tenant}}/example-federated/q?sql=SELECT * FROM 
{{membrane_schema}}.{{membrane_table}}",
+                                       "host": [
+                                               "{{baseUrl}}"
+                                       ],
+                                       "path": [
+                                               "{{membrane_tenant}}",
+                                               "example-federated",
+                                               "q"
+                                       ],
+                                       "query": [
+                                               {
+                                                       "key": "sql",
+                                                       "value": "SELECT * FROM 
{{membrane_schema}}.{{membrane_table}}"
+                                               }
+                                       ]
+                               }
                        },
                        "response": []
                },
@@ -527,14 +720,22 @@
                                }
                        ],
                        "request": {
-                               "url": 
"{{baseUrl}}/{{membrane_tenant}}/{{membrane_data_source}}",
                                "method": "DELETE",
                                "header": [],
                                "body": {
                                        "mode": "raw",
                                        "raw": ""
                                },
-                               "description": ""
+                               "url": {
+                                       "raw": 
"{{baseUrl}}/{{membrane_tenant}}/{{membrane_data_source}}",
+                                       "host": [
+                                               "{{baseUrl}}"
+                                       ],
+                                       "path": [
+                                               "{{membrane_tenant}}",
+                                               "{{membrane_data_source}}"
+                                       ]
+                               }
                        },
                        "response": []
                },
@@ -557,11 +758,21 @@
                                }
                        ],
                        "request": {
-                               "url": "{{baseUrl}}/{{membrane_tenant}}",
                                "method": "DELETE",
                                "header": [],
-                               "body": {},
-                               "description": ""
+                               "body": {
+                                       "mode": "raw",
+                                       "raw": ""
+                               },
+                               "url": {
+                                       "raw": 
"{{baseUrl}}/{{membrane_tenant}}",
+                                       "host": [
+                                               "{{baseUrl}}"
+                                       ],
+                                       "path": [
+                                               "{{membrane_tenant}}"
+                                       ]
+                               }
                        },
                        "response": []
                }

Reply via email to