From 9a00014d84da61287e230352ca38451c06529ce6 Mon Sep 17 00:00:00 2001 From: Septimiu Turcu Date: Fri, 16 Aug 2024 12:46:21 +0200 Subject: [PATCH] Add dbt-external-tables shim to teradata_utils. To use the shim, both teradata_utils and dbt-external-packages need to be installed and the following dispatch needs to be set up dispatch: - macro_namespace: dbt_external_tables search_order: ['teradata_utils', 'dbt_external_tables'] --- .../teradata/create_external_schema.sql | 5 + .../teradata/create_external_table.sql | 29 ++ .../teradata/get_external_build_plan.sql | 24 ++ .../plugins/teradata/helpers/dropif.sql | 20 ++ test/dbt-external-tables/Makefile | 10 + test/dbt-external-tables/README.txt | 7 + .../integration_tests/.gitignore | 7 + .../integration_tests/dbt_project.yml | 38 +++ .../macros/common/prep_external.sql | 8 + .../models/common/control.yml | 10 + .../plugins/teradata/teradata_external.yml | 64 ++++ .../integration_tests/packages.yml | 7 + .../public_data/csv/section=a/people_a.csv | 51 +++ .../public_data/csv/section=b/people_b.csv | 51 +++ .../public_data/csv/section=c/people_c.csv | 51 +++ .../public_data/csv/section=d/people_d.csv | 51 +++ .../public_data/json/section=a/people_a.json | 300 ++++++++++++++++++ .../public_data/json/section=b/people_b.json | 300 ++++++++++++++++++ .../public_data/json/section=c/people_c.json | 300 ++++++++++++++++++ .../public_data/json/section=d/people_d.json | 300 ++++++++++++++++++ .../integration_tests/seeds/people.csv | 201 ++++++++++++ 21 files changed, 1834 insertions(+) create mode 100644 macros/dbt-external-tables/macros/plugins/teradata/create_external_schema.sql create mode 100644 macros/dbt-external-tables/macros/plugins/teradata/create_external_table.sql create mode 100644 macros/dbt-external-tables/macros/plugins/teradata/get_external_build_plan.sql create mode 100644 macros/dbt-external-tables/macros/plugins/teradata/helpers/dropif.sql create mode 100644 test/dbt-external-tables/Makefile create mode 100644 test/dbt-external-tables/README.txt create mode 100644 test/dbt-external-tables/integration_tests/.gitignore create mode 100644 test/dbt-external-tables/integration_tests/dbt_project.yml create mode 100644 test/dbt-external-tables/integration_tests/macros/common/prep_external.sql create mode 100644 test/dbt-external-tables/integration_tests/models/common/control.yml create mode 100644 test/dbt-external-tables/integration_tests/models/plugins/teradata/teradata_external.yml create mode 100644 test/dbt-external-tables/integration_tests/packages.yml create mode 100644 test/dbt-external-tables/integration_tests/public_data/csv/section=a/people_a.csv create mode 100644 test/dbt-external-tables/integration_tests/public_data/csv/section=b/people_b.csv create mode 100644 test/dbt-external-tables/integration_tests/public_data/csv/section=c/people_c.csv create mode 100644 test/dbt-external-tables/integration_tests/public_data/csv/section=d/people_d.csv create mode 100644 test/dbt-external-tables/integration_tests/public_data/json/section=a/people_a.json create mode 100644 test/dbt-external-tables/integration_tests/public_data/json/section=b/people_b.json create mode 100644 test/dbt-external-tables/integration_tests/public_data/json/section=c/people_c.json create mode 100644 test/dbt-external-tables/integration_tests/public_data/json/section=d/people_d.json create mode 100644 test/dbt-external-tables/integration_tests/seeds/people.csv diff --git a/macros/dbt-external-tables/macros/plugins/teradata/create_external_schema.sql b/macros/dbt-external-tables/macros/plugins/teradata/create_external_schema.sql new file mode 100644 index 0000000..404b621 --- /dev/null +++ b/macros/dbt-external-tables/macros/plugins/teradata/create_external_schema.sql @@ -0,0 +1,5 @@ +{%- macro teradata__create_external_schema(source_node) -%} + {{ exceptions.raise_compiler_error( + "Creating external schema is not implemented for the Teradata adapter" + ) }} +{%- endmacro -%} diff --git a/macros/dbt-external-tables/macros/plugins/teradata/create_external_table.sql b/macros/dbt-external-tables/macros/plugins/teradata/create_external_table.sql new file mode 100644 index 0000000..658e6ed --- /dev/null +++ b/macros/dbt-external-tables/macros/plugins/teradata/create_external_table.sql @@ -0,0 +1,29 @@ +{% macro teradata__create_external_table(source_node) %} + {# https://docs.teradata.com/r/Enterprise_IntelliFlex_VMware/SQL-Data-Definition-Language-Syntax-and-Examples/Table-Statements/CREATE-FOREIGN-TABLE/CREATE-FOREIGN-TABLE-Syntax #} + {%- set columns = source_node.columns.values() -%} + {%- set external = source_node.external -%} + {%- set partitions = external.partitions -%} + + CREATE FOREIGN TABLE {{source(source_node.source_name, source_node.name)}} + {{ ', ' + external.tbl_properties if external.tbl_properties }} + {% if columns -%} + ( + {% for column in columns %} + {%- set column_quoted = adapter.quote(column.name) if column.quote else column.name %} + {{column_quoted}} {{column.data_type}} {{- ',' if not loop.last -}} + {%- endfor %} + ) + {%- endif %} + USING ( + LOCATION('{{ external.location }}') + {{ external.using }} + ) + NO PRIMARY INDEX + {% if partitions -%} + PARTITION BY ( + {%- for partition in partitions -%} + {{ partition.name }} {{ partition.data_type if partition.data_type }} {{', ' if not loop.last}} + {%- endfor -%} + ) + {%- endif %} +{% endmacro %} diff --git a/macros/dbt-external-tables/macros/plugins/teradata/get_external_build_plan.sql b/macros/dbt-external-tables/macros/plugins/teradata/get_external_build_plan.sql new file mode 100644 index 0000000..72bbe31 --- /dev/null +++ b/macros/dbt-external-tables/macros/plugins/teradata/get_external_build_plan.sql @@ -0,0 +1,24 @@ +{% macro teradata__get_external_build_plan(source_node) %} + + {% set build_plan = [] %} + + {% set old_relation = adapter.get_relation( + database = source_node.database, + schema = source_node.schema, + identifier = source_node.identifier + ) %} + + {% set create_or_replace = (old_relation is none or var('ext_full_refresh', false)) %} + + {% if create_or_replace %} + {% set build_plan = build_plan + [ + dbt_external_tables.dropif(source_node), + dbt_external_tables.create_external_table(source_node) + ] %} + {% else %} + {% set build_plan = build_plan + dbt_external_tables.refresh_external_table(source_node) %} + {% endif %} + + {% do return(build_plan) %} + +{% endmacro %} diff --git a/macros/dbt-external-tables/macros/plugins/teradata/helpers/dropif.sql b/macros/dbt-external-tables/macros/plugins/teradata/helpers/dropif.sql new file mode 100644 index 0000000..c353b71 --- /dev/null +++ b/macros/dbt-external-tables/macros/plugins/teradata/helpers/dropif.sql @@ -0,0 +1,20 @@ +{% macro teradata__dropif(node) %} + + {% set old_relation = adapter.get_relation( + database = none, + schema = node.schema, + identifier = node.identifier + ) %} + + {% set drop_relation = old_relation is not none %} + + {% set ddl = '' %} + {% if drop_relation %} + {% set ddl %} + DROP TABLE {{ old_relation.include(database=False) }} + {% endset %} + {% endif %} + + {{ return(ddl) }} + +{% endmacro %} diff --git a/test/dbt-external-tables/Makefile b/test/dbt-external-tables/Makefile new file mode 100644 index 0000000..d47aa0b --- /dev/null +++ b/test/dbt-external-tables/Makefile @@ -0,0 +1,10 @@ +test-teradata: + dbt deps + dbt seed --full-refresh + dbt run-operation prep_external + dbt run-operation dbt_external_tables.stage_external_sources --vars 'ext_full_refresh: true' + dbt run-operation dbt_external_tables.stage_external_sources + dbt test + +test-all: test-teradata + echo "Completed successfully" diff --git a/test/dbt-external-tables/README.txt b/test/dbt-external-tables/README.txt new file mode 100644 index 0000000..7e38871 --- /dev/null +++ b/test/dbt-external-tables/README.txt @@ -0,0 +1,7 @@ +dbt-external-tables is based on https://github.com/dbt-labs/dbt-external-tables + +Testing instructions: +1. create a teradata dbt profile called integration_tests +2. create python venv with dbt-teradata +3. change directory to integration_tests +4. run make -f ../Makefile test-all \ No newline at end of file diff --git a/test/dbt-external-tables/integration_tests/.gitignore b/test/dbt-external-tables/integration_tests/.gitignore new file mode 100644 index 0000000..d77fe17 --- /dev/null +++ b/test/dbt-external-tables/integration_tests/.gitignore @@ -0,0 +1,7 @@ + +target/ +dbt_packages/ +logs/ +.env/ +profiles.yml +package-lock.yml \ No newline at end of file diff --git a/test/dbt-external-tables/integration_tests/dbt_project.yml b/test/dbt-external-tables/integration_tests/dbt_project.yml new file mode 100644 index 0000000..a03ff05 --- /dev/null +++ b/test/dbt-external-tables/integration_tests/dbt_project.yml @@ -0,0 +1,38 @@ + +name: 'dbt_external_tables_integration_tests' +version: '1.0' + +profile: 'integration_tests' + +config-version: 2 + +model-paths: ["models"] +analysis-paths: ["analysis"] +test-paths: ["tests"] +seed-paths: ["seeds"] +macro-paths: ["macros"] + +target-path: "target" +clean-targets: + - "target" + - "dbt_packages" + +dispatch: + - macro_namespace: dbt_external_tables + search_order: ['teradata_utils', 'dbt_external_tables', 'dbt_external_tables_integration_tests'] + - macro_namespace: dbt_utils + search_order: ['teradata_utils', 'dbt_utils'] + +seeds: + +quote_columns: false + +#models: + +sources: + dbt_external_tables_integration_tests: + plugins: + teradata: + +enabled: "{{ target.type == 'teradata' }}" + +#tests: + diff --git a/test/dbt-external-tables/integration_tests/macros/common/prep_external.sql b/test/dbt-external-tables/integration_tests/macros/common/prep_external.sql new file mode 100644 index 0000000..de754c7 --- /dev/null +++ b/test/dbt-external-tables/integration_tests/macros/common/prep_external.sql @@ -0,0 +1,8 @@ +{% macro prep_external() %} + {{ return(adapter.dispatch('prep_external', 'dbt_external_tables')()) }} +{% endmacro %} + +{% macro default__prep_external() %} + {% do log('No prep necessary, skipping', info = true) %} + {# noop #} +{% endmacro %} diff --git a/test/dbt-external-tables/integration_tests/models/common/control.yml b/test/dbt-external-tables/integration_tests/models/common/control.yml new file mode 100644 index 0000000..381f14b --- /dev/null +++ b/test/dbt-external-tables/integration_tests/models/common/control.yml @@ -0,0 +1,10 @@ +version: 2 + +sources: + - name: not_external + tables: + - name: take_no_action + columns: + - name: id + data_type: varchar(255) + description: "primary key" diff --git a/test/dbt-external-tables/integration_tests/models/plugins/teradata/teradata_external.yml b/test/dbt-external-tables/integration_tests/models/plugins/teradata/teradata_external.yml new file mode 100644 index 0000000..b0e6801 --- /dev/null +++ b/test/dbt-external-tables/integration_tests/models/plugins/teradata/teradata_external.yml @@ -0,0 +1,64 @@ +version: 2 + +sources: + - name: teradata_external + schema: "{{ target.schema }}" + loader: S3 + + tables: + - name: people_csv_unpartitioned + external: &csv-people + location: "/s3/s3.amazonaws.com/dbt-external-tables-testing/csv/" + using: | + STOREDAS('TEXTFILE') + -- PATHPATTERN ('$var1/$section/$var3') + tbl_properties: | + MAP = TD_MAP1 + -- ,EXTERNAL SECURITY MyAuthObj + columns: &cols-of-the-people + - name: id + data_type: int + - name: first_name + data_type: varchar(64) + - name: last_name + data_type: varchar(64) + - name: email + data_type: varchar(64) + data_tests: &equal-to-the-people + - dbt_utils.equality: + compare_model: ref('people') + compare_columns: + - id + - first_name + - last_name + - email + + - name: people_csv_partitioned + external: + <<: *csv-people + partitions: + - name: section + data_type: CHAR(1) + columns: *cols-of-the-people + data_tests: + - <<: *equal-to-the-people + - dbt_utils.at_least_one: + column_name: section + + + - name: people_pq_unpartitioned + external: + location: "/s3/s3.amazonaws.com/dbt-external-tables-testing/parquet/" + data_tests: *equal-to-the-people + + - name: people_pq_partitioned + external: + location: "/s3/s3.amazonaws.com/dbt-external-tables-testing/parquet/" + partitions: + - name: COLUMN + - name: section + data_type: CHAR(1) + data_tests: + - <<: *equal-to-the-people + - dbt_utils.at_least_one: + column_name: section diff --git a/test/dbt-external-tables/integration_tests/packages.yml b/test/dbt-external-tables/integration_tests/packages.yml new file mode 100644 index 0000000..8d5f99d --- /dev/null +++ b/test/dbt-external-tables/integration_tests/packages.yml @@ -0,0 +1,7 @@ + +packages: + - local: ../../../ + - package: dbt-labs/dbt_utils + version: [">0.9.0", "<2.0.0"] + - package: dbt-labs/dbt_external_tables + version: [">=0.9.0", "<1.0.0"] diff --git a/test/dbt-external-tables/integration_tests/public_data/csv/section=a/people_a.csv b/test/dbt-external-tables/integration_tests/public_data/csv/section=a/people_a.csv new file mode 100644 index 0000000..51b9b75 --- /dev/null +++ b/test/dbt-external-tables/integration_tests/public_data/csv/section=a/people_a.csv @@ -0,0 +1,51 @@ +id,first_name,last_name,email +1,Jack,Hunter,jhunter0@pbs.org +2,Kathryn,Walker,kwalker1@ezinearticles.com +3,Gerald,Ryan,gryan2@com.com +4,Bonnie,Spencer,bspencer3@ameblo.jp +5,Harold,Taylor,htaylor4@people.com.cn +6,Jacqueline,Griffin,jgriffin5@t.co +7,Wanda,Arnold,warnold6@google.nl +8,Craig,Ortiz,cortiz7@sciencedaily.com +9,Gary,Day,gday8@nih.gov +10,Rose,Wright,rwright9@yahoo.co.jp +11,Raymond,Kelley,rkelleya@fc2.com +12,Gerald,Robinson,grobinsonb@disqus.com +13,Mildred,Martinez,mmartinezc@samsung.com +14,Dennis,Arnold,darnoldd@google.com +15,Judy,Gray,jgraye@opensource.org +16,Theresa,Garza,tgarzaf@epa.gov +17,Gerald,Robertson,grobertsong@csmonitor.com +18,Philip,Hernandez,phernandezh@adobe.com +19,Julia,Gonzalez,jgonzalezi@cam.ac.uk +20,Andrew,Davis,adavisj@patch.com +21,Kimberly,Harper,kharperk@foxnews.com +22,Mark,Martin,mmartinl@marketwatch.com +23,Cynthia,Ruiz,cruizm@google.fr +24,Samuel,Carroll,scarrolln@youtu.be +25,Jennifer,Larson,jlarsono@vinaora.com +26,Ashley,Perry,aperryp@rakuten.co.jp +27,Howard,Rodriguez,hrodriguezq@shutterfly.com +28,Amy,Brooks,abrooksr@theatlantic.com +29,Louise,Warren,lwarrens@adobe.com +30,Tina,Watson,twatsont@myspace.com +31,Janice,Kelley,jkelleyu@creativecommons.org +32,Terry,Mccoy,tmccoyv@bravesites.com +33,Jeffrey,Morgan,jmorganw@surveymonkey.com +34,Louis,Harvey,lharveyx@sina.com.cn +35,Philip,Miller,pmillery@samsung.com +36,Willie,Marshall,wmarshallz@ow.ly +37,Patrick,Lopez,plopez10@redcross.org +38,Adam,Jenkins,ajenkins11@harvard.edu +39,Benjamin,Cruz,bcruz12@linkedin.com +40,Ruby,Hawkins,rhawkins13@gmpg.org +41,Carlos,Barnes,cbarnes14@a8.net +42,Ruby,Griffin,rgriffin15@bravesites.com +43,Sean,Mason,smason16@icq.com +44,Anthony,Payne,apayne17@utexas.edu +45,Steve,Cruz,scruz18@pcworld.com +46,Anthony,Garcia,agarcia19@flavors.me +47,Doris,Lopez,dlopez1a@sphinn.com +48,Susan,Nichols,snichols1b@freewebs.com +49,Wanda,Ferguson,wferguson1c@yahoo.co.jp +50,Andrea,Pierce,apierce1d@google.co.uk diff --git a/test/dbt-external-tables/integration_tests/public_data/csv/section=b/people_b.csv b/test/dbt-external-tables/integration_tests/public_data/csv/section=b/people_b.csv new file mode 100644 index 0000000..a3f59e8 --- /dev/null +++ b/test/dbt-external-tables/integration_tests/public_data/csv/section=b/people_b.csv @@ -0,0 +1,51 @@ +id,first_name,last_name,email +51,Lawrence,Phillips,lphillips1e@jugem.jp +52,Judy,Gilbert,jgilbert1f@multiply.com +53,Eric,Williams,ewilliams1g@joomla.org +54,Ralph,Romero,rromero1h@sogou.com +55,Jean,Wilson,jwilson1i@ocn.ne.jp +56,Lori,Reynolds,lreynolds1j@illinois.edu +57,Donald,Moreno,dmoreno1k@bbc.co.uk +58,Steven,Berry,sberry1l@eepurl.com +59,Theresa,Shaw,tshaw1m@people.com.cn +60,John,Stephens,jstephens1n@nationalgeographic.com +61,Richard,Jacobs,rjacobs1o@state.tx.us +62,Andrew,Lawson,alawson1p@over-blog.com +63,Peter,Morgan,pmorgan1q@rambler.ru +64,Nicole,Garrett,ngarrett1r@zimbio.com +65,Joshua,Kim,jkim1s@edublogs.org +66,Ralph,Roberts,rroberts1t@people.com.cn +67,George,Montgomery,gmontgomery1u@smugmug.com +68,Gerald,Alvarez,galvarez1v@flavors.me +69,Donald,Olson,dolson1w@whitehouse.gov +70,Carlos,Morgan,cmorgan1x@pbs.org +71,Aaron,Stanley,astanley1y@webnode.com +72,Virginia,Long,vlong1z@spiegel.de +73,Robert,Berry,rberry20@tripadvisor.com +74,Antonio,Brooks,abrooks21@unesco.org +75,Ruby,Garcia,rgarcia22@ovh.net +76,Jack,Hanson,jhanson23@blogtalkradio.com +77,Kathryn,Nelson,knelson24@walmart.com +78,Jason,Reed,jreed25@printfriendly.com +79,George,Coleman,gcoleman26@people.com.cn +80,Rose,King,rking27@ucoz.com +81,Johnny,Holmes,jholmes28@boston.com +82,Katherine,Gilbert,kgilbert29@altervista.org +83,Joshua,Thomas,jthomas2a@ustream.tv +84,Julie,Perry,jperry2b@opensource.org +85,Richard,Perry,rperry2c@oracle.com +86,Kenneth,Ruiz,kruiz2d@wikimedia.org +87,Jose,Morgan,jmorgan2e@webnode.com +88,Donald,Campbell,dcampbell2f@goo.ne.jp +89,Debra,Collins,dcollins2g@uol.com.br +90,Jesse,Johnson,jjohnson2h@stumbleupon.com +91,Elizabeth,Stone,estone2i@histats.com +92,Angela,Rogers,arogers2j@goodreads.com +93,Emily,Dixon,edixon2k@mlb.com +94,Albert,Scott,ascott2l@tinypic.com +95,Barbara,Peterson,bpeterson2m@ow.ly +96,Adam,Greene,agreene2n@fastcompany.com +97,Earl,Sanders,esanders2o@hc360.com +98,Angela,Brooks,abrooks2p@mtv.com +99,Harold,Foster,hfoster2q@privacy.gov.au +100,Carl,Meyer,cmeyer2r@disqus.com diff --git a/test/dbt-external-tables/integration_tests/public_data/csv/section=c/people_c.csv b/test/dbt-external-tables/integration_tests/public_data/csv/section=c/people_c.csv new file mode 100644 index 0000000..6cf58c9 --- /dev/null +++ b/test/dbt-external-tables/integration_tests/public_data/csv/section=c/people_c.csv @@ -0,0 +1,51 @@ +id,first_name,last_name,email +101,Michael,Perez,mperez0@chronoengine.com +102,Shawn,Mccoy,smccoy1@reddit.com +103,Kathleen,Payne,kpayne2@cargocollective.com +104,Jimmy,Cooper,jcooper3@cargocollective.com +105,Katherine,Rice,krice4@typepad.com +106,Sarah,Ryan,sryan5@gnu.org +107,Martin,Mcdonald,mmcdonald6@opera.com +108,Frank,Robinson,frobinson7@wunderground.com +109,Jennifer,Franklin,jfranklin8@mail.ru +110,Henry,Welch,hwelch9@list-manage.com +111,Fred,Snyder,fsnydera@reddit.com +112,Amy,Dunn,adunnb@nba.com +113,Kathleen,Meyer,kmeyerc@cdc.gov +114,Steve,Ferguson,sfergusond@reverbnation.com +115,Teresa,Hill,thille@dion.ne.jp +116,Amanda,Harper,aharperf@mail.ru +117,Kimberly,Ray,krayg@xing.com +118,Johnny,Knight,jknighth@jalbum.net +119,Virginia,Freeman,vfreemani@tiny.cc +120,Anna,Austin,aaustinj@diigo.com +121,Willie,Hill,whillk@mail.ru +122,Sean,Harris,sharrisl@zdnet.com +123,Mildred,Adams,madamsm@usatoday.com +124,David,Graham,dgrahamn@zimbio.com +125,Victor,Hunter,vhuntero@ehow.com +126,Aaron,Ruiz,aruizp@weebly.com +127,Benjamin,Brooks,bbrooksq@jalbum.net +128,Lisa,Wilson,lwilsonr@japanpost.jp +129,Benjamin,King,bkings@comsenz.com +130,Christina,Williamson,cwilliamsont@boston.com +131,Jane,Gonzalez,jgonzalezu@networksolutions.com +132,Thomas,Owens,towensv@psu.edu +133,Katherine,Moore,kmoorew@naver.com +134,Jennifer,Stewart,jstewartx@yahoo.com +135,Sara,Tucker,stuckery@topsy.com +136,Harold,Ortiz,hortizz@vkontakte.ru +137,Shirley,James,sjames10@yelp.com +138,Dennis,Johnson,djohnson11@slate.com +139,Louise,Weaver,lweaver12@china.com.cn +140,Maria,Armstrong,marmstrong13@prweb.com +141,Gloria,Cruz,gcruz14@odnoklassniki.ru +142,Diana,Spencer,dspencer15@ifeng.com +143,Kelly,Nguyen,knguyen16@altervista.org +144,Jane,Rodriguez,jrodriguez17@biblegateway.com +145,Scott,Brown,sbrown18@geocities.jp +146,Norma,Cruz,ncruz19@si.edu +147,Marie,Peters,mpeters1a@mlb.com +148,Lillian,Carr,lcarr1b@typepad.com +149,Judy,Nichols,jnichols1c@t-online.de +150,Billy,Long,blong1d@yahoo.com diff --git a/test/dbt-external-tables/integration_tests/public_data/csv/section=d/people_d.csv b/test/dbt-external-tables/integration_tests/public_data/csv/section=d/people_d.csv new file mode 100644 index 0000000..5518582 --- /dev/null +++ b/test/dbt-external-tables/integration_tests/public_data/csv/section=d/people_d.csv @@ -0,0 +1,51 @@ +id,first_name,last_name,email +151,Howard,Reid,hreid1e@exblog.jp +152,Laura,Ferguson,lferguson1f@tuttocitta.it +153,Anne,Bailey,abailey1g@geocities.com +154,Rose,Morgan,rmorgan1h@ehow.com +155,Nicholas,Reyes,nreyes1i@google.ru +156,Joshua,Kennedy,jkennedy1j@house.gov +157,Paul,Watkins,pwatkins1k@upenn.edu +158,Kathryn,Kelly,kkelly1l@businessweek.com +159,Adam,Armstrong,aarmstrong1m@techcrunch.com +160,Norma,Wallace,nwallace1n@phoca.cz +161,Timothy,Reyes,treyes1o@google.cn +162,Elizabeth,Patterson,epatterson1p@sun.com +163,Edward,Gomez,egomez1q@google.fr +164,David,Cox,dcox1r@friendfeed.com +165,Brenda,Wood,bwood1s@over-blog.com +166,Adam,Walker,awalker1t@blogs.com +167,Michael,Hart,mhart1u@wix.com +168,Jesse,Ellis,jellis1v@google.co.uk +169,Janet,Powell,jpowell1w@un.org +170,Helen,Ford,hford1x@creativecommons.org +171,Gerald,Carpenter,gcarpenter1y@about.me +172,Kathryn,Oliver,koliver1z@army.mil +173,Alan,Berry,aberry20@gov.uk +174,Harry,Andrews,handrews21@ameblo.jp +175,Andrea,Hall,ahall22@hp.com +176,Barbara,Wells,bwells23@behance.net +177,Anne,Wells,awells24@apache.org +178,Harry,Harper,hharper25@rediff.com +179,Jack,Ray,jray26@wufoo.com +180,Phillip,Hamilton,phamilton27@joomla.org +181,Shirley,Hunter,shunter28@newsvine.com +182,Arthur,Daniels,adaniels29@reuters.com +183,Virginia,Rodriguez,vrodriguez2a@walmart.com +184,Christina,Ryan,cryan2b@hibu.com +185,Theresa,Mendoza,tmendoza2c@vinaora.com +186,Jason,Cole,jcole2d@ycombinator.com +187,Phillip,Bryant,pbryant2e@rediff.com +188,Adam,Torres,atorres2f@sun.com +189,Margaret,Johnston,mjohnston2g@ucsd.edu +190,Paul,Payne,ppayne2h@hhs.gov +191,Todd,Willis,twillis2i@businessweek.com +192,Willie,Oliver,woliver2j@noaa.gov +193,Frances,Robertson,frobertson2k@go.com +194,Gregory,Hawkins,ghawkins2l@joomla.org +195,Lisa,Perkins,lperkins2m@si.edu +196,Jacqueline,Anderson,janderson2n@cargocollective.com +197,Shirley,Diaz,sdiaz2o@ucla.edu +198,Nicole,Meyer,nmeyer2p@flickr.com +199,Mary,Gray,mgray2q@constantcontact.com +200,Jean,Mcdonald,jmcdonald2r@baidu.com diff --git a/test/dbt-external-tables/integration_tests/public_data/json/section=a/people_a.json b/test/dbt-external-tables/integration_tests/public_data/json/section=a/people_a.json new file mode 100644 index 0000000..ad4aa90 --- /dev/null +++ b/test/dbt-external-tables/integration_tests/public_data/json/section=a/people_a.json @@ -0,0 +1,300 @@ +{ + "id": 1, + "first_name": "Jack", + "last_name": "Hunter", + "email": "jhunter0@pbs.org" +} +{ + "id": 2, + "first_name": "Kathryn", + "last_name": "Walker", + "email": "kwalker1@ezinearticles.com" +} +{ + "id": 3, + "first_name": "Gerald", + "last_name": "Ryan", + "email": "gryan2@com.com" +} +{ + "id": 4, + "first_name": "Bonnie", + "last_name": "Spencer", + "email": "bspencer3@ameblo.jp" +} +{ + "id": 5, + "first_name": "Harold", + "last_name": "Taylor", + "email": "htaylor4@people.com.cn" +} +{ + "id": 6, + "first_name": "Jacqueline", + "last_name": "Griffin", + "email": "jgriffin5@t.co" +} +{ + "id": 7, + "first_name": "Wanda", + "last_name": "Arnold", + "email": "warnold6@google.nl" +} +{ + "id": 8, + "first_name": "Craig", + "last_name": "Ortiz", + "email": "cortiz7@sciencedaily.com" +} +{ + "id": 9, + "first_name": "Gary", + "last_name": "Day", + "email": "gday8@nih.gov" +} +{ + "id": 10, + "first_name": "Rose", + "last_name": "Wright", + "email": "rwright9@yahoo.co.jp" +} +{ + "id": 11, + "first_name": "Raymond", + "last_name": "Kelley", + "email": "rkelleya@fc2.com" +} +{ + "id": 12, + "first_name": "Gerald", + "last_name": "Robinson", + "email": "grobinsonb@disqus.com" +} +{ + "id": 13, + "first_name": "Mildred", + "last_name": "Martinez", + "email": "mmartinezc@samsung.com" +} +{ + "id": 14, + "first_name": "Dennis", + "last_name": "Arnold", + "email": "darnoldd@google.com" +} +{ + "id": 15, + "first_name": "Judy", + "last_name": "Gray", + "email": "jgraye@opensource.org" +} +{ + "id": 16, + "first_name": "Theresa", + "last_name": "Garza", + "email": "tgarzaf@epa.gov" +} +{ + "id": 17, + "first_name": "Gerald", + "last_name": "Robertson", + "email": "grobertsong@csmonitor.com" +} +{ + "id": 18, + "first_name": "Philip", + "last_name": "Hernandez", + "email": "phernandezh@adobe.com" +} +{ + "id": 19, + "first_name": "Julia", + "last_name": "Gonzalez", + "email": "jgonzalezi@cam.ac.uk" +} +{ + "id": 20, + "first_name": "Andrew", + "last_name": "Davis", + "email": "adavisj@patch.com" +} +{ + "id": 21, + "first_name": "Kimberly", + "last_name": "Harper", + "email": "kharperk@foxnews.com" +} +{ + "id": 22, + "first_name": "Mark", + "last_name": "Martin", + "email": "mmartinl@marketwatch.com" +} +{ + "id": 23, + "first_name": "Cynthia", + "last_name": "Ruiz", + "email": "cruizm@google.fr" +} +{ + "id": 24, + "first_name": "Samuel", + "last_name": "Carroll", + "email": "scarrolln@youtu.be" +} +{ + "id": 25, + "first_name": "Jennifer", + "last_name": "Larson", + "email": "jlarsono@vinaora.com" +} +{ + "id": 26, + "first_name": "Ashley", + "last_name": "Perry", + "email": "aperryp@rakuten.co.jp" +} +{ + "id": 27, + "first_name": "Howard", + "last_name": "Rodriguez", + "email": "hrodriguezq@shutterfly.com" +} +{ + "id": 28, + "first_name": "Amy", + "last_name": "Brooks", + "email": "abrooksr@theatlantic.com" +} +{ + "id": 29, + "first_name": "Louise", + "last_name": "Warren", + "email": "lwarrens@adobe.com" +} +{ + "id": 30, + "first_name": "Tina", + "last_name": "Watson", + "email": "twatsont@myspace.com" +} +{ + "id": 31, + "first_name": "Janice", + "last_name": "Kelley", + "email": "jkelleyu@creativecommons.org" +} +{ + "id": 32, + "first_name": "Terry", + "last_name": "Mccoy", + "email": "tmccoyv@bravesites.com" +} +{ + "id": 33, + "first_name": "Jeffrey", + "last_name": "Morgan", + "email": "jmorganw@surveymonkey.com" +} +{ + "id": 34, + "first_name": "Louis", + "last_name": "Harvey", + "email": "lharveyx@sina.com.cn" +} +{ + "id": 35, + "first_name": "Philip", + "last_name": "Miller", + "email": "pmillery@samsung.com" +} +{ + "id": 36, + "first_name": "Willie", + "last_name": "Marshall", + "email": "wmarshallz@ow.ly" +} +{ + "id": 37, + "first_name": "Patrick", + "last_name": "Lopez", + "email": "plopez10@redcross.org" +} +{ + "id": 38, + "first_name": "Adam", + "last_name": "Jenkins", + "email": "ajenkins11@harvard.edu" +} +{ + "id": 39, + "first_name": "Benjamin", + "last_name": "Cruz", + "email": "bcruz12@linkedin.com" +} +{ + "id": 40, + "first_name": "Ruby", + "last_name": "Hawkins", + "email": "rhawkins13@gmpg.org" +} +{ + "id": 41, + "first_name": "Carlos", + "last_name": "Barnes", + "email": "cbarnes14@a8.net" +} +{ + "id": 42, + "first_name": "Ruby", + "last_name": "Griffin", + "email": "rgriffin15@bravesites.com" +} +{ + "id": 43, + "first_name": "Sean", + "last_name": "Mason", + "email": "smason16@icq.com" +} +{ + "id": 44, + "first_name": "Anthony", + "last_name": "Payne", + "email": "apayne17@utexas.edu" +} +{ + "id": 45, + "first_name": "Steve", + "last_name": "Cruz", + "email": "scruz18@pcworld.com" +} +{ + "id": 46, + "first_name": "Anthony", + "last_name": "Garcia", + "email": "agarcia19@flavors.me" +} +{ + "id": 47, + "first_name": "Doris", + "last_name": "Lopez", + "email": "dlopez1a@sphinn.com" +} +{ + "id": 48, + "first_name": "Susan", + "last_name": "Nichols", + "email": "snichols1b@freewebs.com" +} +{ + "id": 49, + "first_name": "Wanda", + "last_name": "Ferguson", + "email": "wferguson1c@yahoo.co.jp" +} +{ + "id": 50, + "first_name": "Andrea", + "last_name": "Pierce", + "email": "apierce1d@google.co.uk" +} \ No newline at end of file diff --git a/test/dbt-external-tables/integration_tests/public_data/json/section=b/people_b.json b/test/dbt-external-tables/integration_tests/public_data/json/section=b/people_b.json new file mode 100644 index 0000000..9fa6ed8 --- /dev/null +++ b/test/dbt-external-tables/integration_tests/public_data/json/section=b/people_b.json @@ -0,0 +1,300 @@ +{ + "id": 51, + "first_name": "Lawrence", + "last_name": "Phillips", + "email": "lphillips1e@jugem.jp" +} +{ + "id": 52, + "first_name": "Judy", + "last_name": "Gilbert", + "email": "jgilbert1f@multiply.com" +} +{ + "id": 53, + "first_name": "Eric", + "last_name": "Williams", + "email": "ewilliams1g@joomla.org" +} +{ + "id": 54, + "first_name": "Ralph", + "last_name": "Romero", + "email": "rromero1h@sogou.com" +} +{ + "id": 55, + "first_name": "Jean", + "last_name": "Wilson", + "email": "jwilson1i@ocn.ne.jp" +} +{ + "id": 56, + "first_name": "Lori", + "last_name": "Reynolds", + "email": "lreynolds1j@illinois.edu" +} +{ + "id": 57, + "first_name": "Donald", + "last_name": "Moreno", + "email": "dmoreno1k@bbc.co.uk" +} +{ + "id": 58, + "first_name": "Steven", + "last_name": "Berry", + "email": "sberry1l@eepurl.com" +} +{ + "id": 59, + "first_name": "Theresa", + "last_name": "Shaw", + "email": "tshaw1m@people.com.cn" +} +{ + "id": 60, + "first_name": "John", + "last_name": "Stephens", + "email": "jstephens1n@nationalgeographic.com" +} +{ + "id": 61, + "first_name": "Richard", + "last_name": "Jacobs", + "email": "rjacobs1o@state.tx.us" +} +{ + "id": 62, + "first_name": "Andrew", + "last_name": "Lawson", + "email": "alawson1p@over-blog.com" +} +{ + "id": 63, + "first_name": "Peter", + "last_name": "Morgan", + "email": "pmorgan1q@rambler.ru" +} +{ + "id": 64, + "first_name": "Nicole", + "last_name": "Garrett", + "email": "ngarrett1r@zimbio.com" +} +{ + "id": 65, + "first_name": "Joshua", + "last_name": "Kim", + "email": "jkim1s@edublogs.org" +} +{ + "id": 66, + "first_name": "Ralph", + "last_name": "Roberts", + "email": "rroberts1t@people.com.cn" +} +{ + "id": 67, + "first_name": "George", + "last_name": "Montgomery", + "email": "gmontgomery1u@smugmug.com" +} +{ + "id": 68, + "first_name": "Gerald", + "last_name": "Alvarez", + "email": "galvarez1v@flavors.me" +} +{ + "id": 69, + "first_name": "Donald", + "last_name": "Olson", + "email": "dolson1w@whitehouse.gov" +} +{ + "id": 70, + "first_name": "Carlos", + "last_name": "Morgan", + "email": "cmorgan1x@pbs.org" +} +{ + "id": 71, + "first_name": "Aaron", + "last_name": "Stanley", + "email": "astanley1y@webnode.com" +} +{ + "id": 72, + "first_name": "Virginia", + "last_name": "Long", + "email": "vlong1z@spiegel.de" +} +{ + "id": 73, + "first_name": "Robert", + "last_name": "Berry", + "email": "rberry20@tripadvisor.com" +} +{ + "id": 74, + "first_name": "Antonio", + "last_name": "Brooks", + "email": "abrooks21@unesco.org" +} +{ + "id": 75, + "first_name": "Ruby", + "last_name": "Garcia", + "email": "rgarcia22@ovh.net" +} +{ + "id": 76, + "first_name": "Jack", + "last_name": "Hanson", + "email": "jhanson23@blogtalkradio.com" +} +{ + "id": 77, + "first_name": "Kathryn", + "last_name": "Nelson", + "email": "knelson24@walmart.com" +} +{ + "id": 78, + "first_name": "Jason", + "last_name": "Reed", + "email": "jreed25@printfriendly.com" +} +{ + "id": 79, + "first_name": "George", + "last_name": "Coleman", + "email": "gcoleman26@people.com.cn" +} +{ + "id": 80, + "first_name": "Rose", + "last_name": "King", + "email": "rking27@ucoz.com" +} +{ + "id": 81, + "first_name": "Johnny", + "last_name": "Holmes", + "email": "jholmes28@boston.com" +} +{ + "id": 82, + "first_name": "Katherine", + "last_name": "Gilbert", + "email": "kgilbert29@altervista.org" +} +{ + "id": 83, + "first_name": "Joshua", + "last_name": "Thomas", + "email": "jthomas2a@ustream.tv" +} +{ + "id": 84, + "first_name": "Julie", + "last_name": "Perry", + "email": "jperry2b@opensource.org" +} +{ + "id": 85, + "first_name": "Richard", + "last_name": "Perry", + "email": "rperry2c@oracle.com" +} +{ + "id": 86, + "first_name": "Kenneth", + "last_name": "Ruiz", + "email": "kruiz2d@wikimedia.org" +} +{ + "id": 87, + "first_name": "Jose", + "last_name": "Morgan", + "email": "jmorgan2e@webnode.com" +} +{ + "id": 88, + "first_name": "Donald", + "last_name": "Campbell", + "email": "dcampbell2f@goo.ne.jp" +} +{ + "id": 89, + "first_name": "Debra", + "last_name": "Collins", + "email": "dcollins2g@uol.com.br" +} +{ + "id": 90, + "first_name": "Jesse", + "last_name": "Johnson", + "email": "jjohnson2h@stumbleupon.com" +} +{ + "id": 91, + "first_name": "Elizabeth", + "last_name": "Stone", + "email": "estone2i@histats.com" +} +{ + "id": 92, + "first_name": "Angela", + "last_name": "Rogers", + "email": "arogers2j@goodreads.com" +} +{ + "id": 93, + "first_name": "Emily", + "last_name": "Dixon", + "email": "edixon2k@mlb.com" +} +{ + "id": 94, + "first_name": "Albert", + "last_name": "Scott", + "email": "ascott2l@tinypic.com" +} +{ + "id": 95, + "first_name": "Barbara", + "last_name": "Peterson", + "email": "bpeterson2m@ow.ly" +} +{ + "id": 96, + "first_name": "Adam", + "last_name": "Greene", + "email": "agreene2n@fastcompany.com" +} +{ + "id": 97, + "first_name": "Earl", + "last_name": "Sanders", + "email": "esanders2o@hc360.com" +} +{ + "id": 98, + "first_name": "Angela", + "last_name": "Brooks", + "email": "abrooks2p@mtv.com" +} +{ + "id": 99, + "first_name": "Harold", + "last_name": "Foster", + "email": "hfoster2q@privacy.gov.au" +} +{ + "id": 100, + "first_name": "Carl", + "last_name": "Meyer", + "email": "cmeyer2r@disqus.com" +} \ No newline at end of file diff --git a/test/dbt-external-tables/integration_tests/public_data/json/section=c/people_c.json b/test/dbt-external-tables/integration_tests/public_data/json/section=c/people_c.json new file mode 100644 index 0000000..46bc400 --- /dev/null +++ b/test/dbt-external-tables/integration_tests/public_data/json/section=c/people_c.json @@ -0,0 +1,300 @@ +{ + "id": 101, + "first_name": "Michael", + "last_name": "Perez", + "email": "mperez0@chronoengine.com" +} +{ + "id": 102, + "first_name": "Shawn", + "last_name": "Mccoy", + "email": "smccoy1@reddit.com" +} +{ + "id": 103, + "first_name": "Kathleen", + "last_name": "Payne", + "email": "kpayne2@cargocollective.com" +} +{ + "id": 104, + "first_name": "Jimmy", + "last_name": "Cooper", + "email": "jcooper3@cargocollective.com" +} +{ + "id": 105, + "first_name": "Katherine", + "last_name": "Rice", + "email": "krice4@typepad.com" +} +{ + "id": 106, + "first_name": "Sarah", + "last_name": "Ryan", + "email": "sryan5@gnu.org" +} +{ + "id": 107, + "first_name": "Martin", + "last_name": "Mcdonald", + "email": "mmcdonald6@opera.com" +} +{ + "id": 108, + "first_name": "Frank", + "last_name": "Robinson", + "email": "frobinson7@wunderground.com" +} +{ + "id": 109, + "first_name": "Jennifer", + "last_name": "Franklin", + "email": "jfranklin8@mail.ru" +} +{ + "id": 110, + "first_name": "Henry", + "last_name": "Welch", + "email": "hwelch9@list-manage.com" +} +{ + "id": 111, + "first_name": "Fred", + "last_name": "Snyder", + "email": "fsnydera@reddit.com" +} +{ + "id": 112, + "first_name": "Amy", + "last_name": "Dunn", + "email": "adunnb@nba.com" +} +{ + "id": 113, + "first_name": "Kathleen", + "last_name": "Meyer", + "email": "kmeyerc@cdc.gov" +} +{ + "id": 114, + "first_name": "Steve", + "last_name": "Ferguson", + "email": "sfergusond@reverbnation.com" +} +{ + "id": 115, + "first_name": "Teresa", + "last_name": "Hill", + "email": "thille@dion.ne.jp" +} +{ + "id": 116, + "first_name": "Amanda", + "last_name": "Harper", + "email": "aharperf@mail.ru" +} +{ + "id": 117, + "first_name": "Kimberly", + "last_name": "Ray", + "email": "krayg@xing.com" +} +{ + "id": 118, + "first_name": "Johnny", + "last_name": "Knight", + "email": "jknighth@jalbum.net" +} +{ + "id": 119, + "first_name": "Virginia", + "last_name": "Freeman", + "email": "vfreemani@tiny.cc" +} +{ + "id": 120, + "first_name": "Anna", + "last_name": "Austin", + "email": "aaustinj@diigo.com" +} +{ + "id": 121, + "first_name": "Willie", + "last_name": "Hill", + "email": "whillk@mail.ru" +} +{ + "id": 122, + "first_name": "Sean", + "last_name": "Harris", + "email": "sharrisl@zdnet.com" +} +{ + "id": 123, + "first_name": "Mildred", + "last_name": "Adams", + "email": "madamsm@usatoday.com" +} +{ + "id": 124, + "first_name": "David", + "last_name": "Graham", + "email": "dgrahamn@zimbio.com" +} +{ + "id": 125, + "first_name": "Victor", + "last_name": "Hunter", + "email": "vhuntero@ehow.com" +} +{ + "id": 126, + "first_name": "Aaron", + "last_name": "Ruiz", + "email": "aruizp@weebly.com" +} +{ + "id": 127, + "first_name": "Benjamin", + "last_name": "Brooks", + "email": "bbrooksq@jalbum.net" +} +{ + "id": 128, + "first_name": "Lisa", + "last_name": "Wilson", + "email": "lwilsonr@japanpost.jp" +} +{ + "id": 129, + "first_name": "Benjamin", + "last_name": "King", + "email": "bkings@comsenz.com" +} +{ + "id": 130, + "first_name": "Christina", + "last_name": "Williamson", + "email": "cwilliamsont@boston.com" +} +{ + "id": 131, + "first_name": "Jane", + "last_name": "Gonzalez", + "email": "jgonzalezu@networksolutions.com" +} +{ + "id": 132, + "first_name": "Thomas", + "last_name": "Owens", + "email": "towensv@psu.edu" +} +{ + "id": 133, + "first_name": "Katherine", + "last_name": "Moore", + "email": "kmoorew@naver.com" +} +{ + "id": 134, + "first_name": "Jennifer", + "last_name": "Stewart", + "email": "jstewartx@yahoo.com" +} +{ + "id": 135, + "first_name": "Sara", + "last_name": "Tucker", + "email": "stuckery@topsy.com" +} +{ + "id": 136, + "first_name": "Harold", + "last_name": "Ortiz", + "email": "hortizz@vkontakte.ru" +} +{ + "id": 137, + "first_name": "Shirley", + "last_name": "James", + "email": "sjames10@yelp.com" +} +{ + "id": 138, + "first_name": "Dennis", + "last_name": "Johnson", + "email": "djohnson11@slate.com" +} +{ + "id": 139, + "first_name": "Louise", + "last_name": "Weaver", + "email": "lweaver12@china.com.cn" +} +{ + "id": 140, + "first_name": "Maria", + "last_name": "Armstrong", + "email": "marmstrong13@prweb.com" +} +{ + "id": 141, + "first_name": "Gloria", + "last_name": "Cruz", + "email": "gcruz14@odnoklassniki.ru" +} +{ + "id": 142, + "first_name": "Diana", + "last_name": "Spencer", + "email": "dspencer15@ifeng.com" +} +{ + "id": 143, + "first_name": "Kelly", + "last_name": "Nguyen", + "email": "knguyen16@altervista.org" +} +{ + "id": 144, + "first_name": "Jane", + "last_name": "Rodriguez", + "email": "jrodriguez17@biblegateway.com" +} +{ + "id": 145, + "first_name": "Scott", + "last_name": "Brown", + "email": "sbrown18@geocities.jp" +} +{ + "id": 146, + "first_name": "Norma", + "last_name": "Cruz", + "email": "ncruz19@si.edu" +} +{ + "id": 147, + "first_name": "Marie", + "last_name": "Peters", + "email": "mpeters1a@mlb.com" +} +{ + "id": 148, + "first_name": "Lillian", + "last_name": "Carr", + "email": "lcarr1b@typepad.com" +} +{ + "id": 149, + "first_name": "Judy", + "last_name": "Nichols", + "email": "jnichols1c@t-online.de" +} +{ + "id": 150, + "first_name": "Billy", + "last_name": "Long", + "email": "blong1d@yahoo.com" +} \ No newline at end of file diff --git a/test/dbt-external-tables/integration_tests/public_data/json/section=d/people_d.json b/test/dbt-external-tables/integration_tests/public_data/json/section=d/people_d.json new file mode 100644 index 0000000..d751205 --- /dev/null +++ b/test/dbt-external-tables/integration_tests/public_data/json/section=d/people_d.json @@ -0,0 +1,300 @@ +{ + "id": 151, + "first_name": "Howard", + "last_name": "Reid", + "email": "hreid1e@exblog.jp" +} +{ + "id": 152, + "first_name": "Laura", + "last_name": "Ferguson", + "email": "lferguson1f@tuttocitta.it" +} +{ + "id": 153, + "first_name": "Anne", + "last_name": "Bailey", + "email": "abailey1g@geocities.com" +} +{ + "id": 154, + "first_name": "Rose", + "last_name": "Morgan", + "email": "rmorgan1h@ehow.com" +} +{ + "id": 155, + "first_name": "Nicholas", + "last_name": "Reyes", + "email": "nreyes1i@google.ru" +} +{ + "id": 156, + "first_name": "Joshua", + "last_name": "Kennedy", + "email": "jkennedy1j@house.gov" +} +{ + "id": 157, + "first_name": "Paul", + "last_name": "Watkins", + "email": "pwatkins1k@upenn.edu" +} +{ + "id": 158, + "first_name": "Kathryn", + "last_name": "Kelly", + "email": "kkelly1l@businessweek.com" +} +{ + "id": 159, + "first_name": "Adam", + "last_name": "Armstrong", + "email": "aarmstrong1m@techcrunch.com" +} +{ + "id": 160, + "first_name": "Norma", + "last_name": "Wallace", + "email": "nwallace1n@phoca.cz" +} +{ + "id": 161, + "first_name": "Timothy", + "last_name": "Reyes", + "email": "treyes1o@google.cn" +} +{ + "id": 162, + "first_name": "Elizabeth", + "last_name": "Patterson", + "email": "epatterson1p@sun.com" +} +{ + "id": 163, + "first_name": "Edward", + "last_name": "Gomez", + "email": "egomez1q@google.fr" +} +{ + "id": 164, + "first_name": "David", + "last_name": "Cox", + "email": "dcox1r@friendfeed.com" +} +{ + "id": 165, + "first_name": "Brenda", + "last_name": "Wood", + "email": "bwood1s@over-blog.com" +} +{ + "id": 166, + "first_name": "Adam", + "last_name": "Walker", + "email": "awalker1t@blogs.com" +} +{ + "id": 167, + "first_name": "Michael", + "last_name": "Hart", + "email": "mhart1u@wix.com" +} +{ + "id": 168, + "first_name": "Jesse", + "last_name": "Ellis", + "email": "jellis1v@google.co.uk" +} +{ + "id": 169, + "first_name": "Janet", + "last_name": "Powell", + "email": "jpowell1w@un.org" +} +{ + "id": 170, + "first_name": "Helen", + "last_name": "Ford", + "email": "hford1x@creativecommons.org" +} +{ + "id": 171, + "first_name": "Gerald", + "last_name": "Carpenter", + "email": "gcarpenter1y@about.me" +} +{ + "id": 172, + "first_name": "Kathryn", + "last_name": "Oliver", + "email": "koliver1z@army.mil" +} +{ + "id": 173, + "first_name": "Alan", + "last_name": "Berry", + "email": "aberry20@gov.uk" +} +{ + "id": 174, + "first_name": "Harry", + "last_name": "Andrews", + "email": "handrews21@ameblo.jp" +} +{ + "id": 175, + "first_name": "Andrea", + "last_name": "Hall", + "email": "ahall22@hp.com" +} +{ + "id": 176, + "first_name": "Barbara", + "last_name": "Wells", + "email": "bwells23@behance.net" +} +{ + "id": 177, + "first_name": "Anne", + "last_name": "Wells", + "email": "awells24@apache.org" +} +{ + "id": 178, + "first_name": "Harry", + "last_name": "Harper", + "email": "hharper25@rediff.com" +} +{ + "id": 179, + "first_name": "Jack", + "last_name": "Ray", + "email": "jray26@wufoo.com" +} +{ + "id": 180, + "first_name": "Phillip", + "last_name": "Hamilton", + "email": "phamilton27@joomla.org" +} +{ + "id": 181, + "first_name": "Shirley", + "last_name": "Hunter", + "email": "shunter28@newsvine.com" +} +{ + "id": 182, + "first_name": "Arthur", + "last_name": "Daniels", + "email": "adaniels29@reuters.com" +} +{ + "id": 183, + "first_name": "Virginia", + "last_name": "Rodriguez", + "email": "vrodriguez2a@walmart.com" +} +{ + "id": 184, + "first_name": "Christina", + "last_name": "Ryan", + "email": "cryan2b@hibu.com" +} +{ + "id": 185, + "first_name": "Theresa", + "last_name": "Mendoza", + "email": "tmendoza2c@vinaora.com" +} +{ + "id": 186, + "first_name": "Jason", + "last_name": "Cole", + "email": "jcole2d@ycombinator.com" +} +{ + "id": 187, + "first_name": "Phillip", + "last_name": "Bryant", + "email": "pbryant2e@rediff.com" +} +{ + "id": 188, + "first_name": "Adam", + "last_name": "Torres", + "email": "atorres2f@sun.com" +} +{ + "id": 189, + "first_name": "Margaret", + "last_name": "Johnston", + "email": "mjohnston2g@ucsd.edu" +} +{ + "id": 190, + "first_name": "Paul", + "last_name": "Payne", + "email": "ppayne2h@hhs.gov" +} +{ + "id": 191, + "first_name": "Todd", + "last_name": "Willis", + "email": "twillis2i@businessweek.com" +} +{ + "id": 192, + "first_name": "Willie", + "last_name": "Oliver", + "email": "woliver2j@noaa.gov" +} +{ + "id": 193, + "first_name": "Frances", + "last_name": "Robertson", + "email": "frobertson2k@go.com" +} +{ + "id": 194, + "first_name": "Gregory", + "last_name": "Hawkins", + "email": "ghawkins2l@joomla.org" +} +{ + "id": 195, + "first_name": "Lisa", + "last_name": "Perkins", + "email": "lperkins2m@si.edu" +} +{ + "id": 196, + "first_name": "Jacqueline", + "last_name": "Anderson", + "email": "janderson2n@cargocollective.com" +} +{ + "id": 197, + "first_name": "Shirley", + "last_name": "Diaz", + "email": "sdiaz2o@ucla.edu" +} +{ + "id": 198, + "first_name": "Nicole", + "last_name": "Meyer", + "email": "nmeyer2p@flickr.com" +} +{ + "id": 199, + "first_name": "Mary", + "last_name": "Gray", + "email": "mgray2q@constantcontact.com" +} +{ + "id": 200, + "first_name": "Jean", + "last_name": "Mcdonald", + "email": "jmcdonald2r@baidu.com" +} \ No newline at end of file diff --git a/test/dbt-external-tables/integration_tests/seeds/people.csv b/test/dbt-external-tables/integration_tests/seeds/people.csv new file mode 100644 index 0000000..4892652 --- /dev/null +++ b/test/dbt-external-tables/integration_tests/seeds/people.csv @@ -0,0 +1,201 @@ +id,first_name,last_name,email +1,Jack,Hunter,jhunter0@pbs.org +2,Kathryn,Walker,kwalker1@ezinearticles.com +3,Gerald,Ryan,gryan2@com.com +4,Bonnie,Spencer,bspencer3@ameblo.jp +5,Harold,Taylor,htaylor4@people.com.cn +6,Jacqueline,Griffin,jgriffin5@t.co +7,Wanda,Arnold,warnold6@google.nl +8,Craig,Ortiz,cortiz7@sciencedaily.com +9,Gary,Day,gday8@nih.gov +10,Rose,Wright,rwright9@yahoo.co.jp +11,Raymond,Kelley,rkelleya@fc2.com +12,Gerald,Robinson,grobinsonb@disqus.com +13,Mildred,Martinez,mmartinezc@samsung.com +14,Dennis,Arnold,darnoldd@google.com +15,Judy,Gray,jgraye@opensource.org +16,Theresa,Garza,tgarzaf@epa.gov +17,Gerald,Robertson,grobertsong@csmonitor.com +18,Philip,Hernandez,phernandezh@adobe.com +19,Julia,Gonzalez,jgonzalezi@cam.ac.uk +20,Andrew,Davis,adavisj@patch.com +21,Kimberly,Harper,kharperk@foxnews.com +22,Mark,Martin,mmartinl@marketwatch.com +23,Cynthia,Ruiz,cruizm@google.fr +24,Samuel,Carroll,scarrolln@youtu.be +25,Jennifer,Larson,jlarsono@vinaora.com +26,Ashley,Perry,aperryp@rakuten.co.jp +27,Howard,Rodriguez,hrodriguezq@shutterfly.com +28,Amy,Brooks,abrooksr@theatlantic.com +29,Louise,Warren,lwarrens@adobe.com +30,Tina,Watson,twatsont@myspace.com +31,Janice,Kelley,jkelleyu@creativecommons.org +32,Terry,Mccoy,tmccoyv@bravesites.com +33,Jeffrey,Morgan,jmorganw@surveymonkey.com +34,Louis,Harvey,lharveyx@sina.com.cn +35,Philip,Miller,pmillery@samsung.com +36,Willie,Marshall,wmarshallz@ow.ly +37,Patrick,Lopez,plopez10@redcross.org +38,Adam,Jenkins,ajenkins11@harvard.edu +39,Benjamin,Cruz,bcruz12@linkedin.com +40,Ruby,Hawkins,rhawkins13@gmpg.org +41,Carlos,Barnes,cbarnes14@a8.net +42,Ruby,Griffin,rgriffin15@bravesites.com +43,Sean,Mason,smason16@icq.com +44,Anthony,Payne,apayne17@utexas.edu +45,Steve,Cruz,scruz18@pcworld.com +46,Anthony,Garcia,agarcia19@flavors.me +47,Doris,Lopez,dlopez1a@sphinn.com +48,Susan,Nichols,snichols1b@freewebs.com +49,Wanda,Ferguson,wferguson1c@yahoo.co.jp +50,Andrea,Pierce,apierce1d@google.co.uk +51,Lawrence,Phillips,lphillips1e@jugem.jp +52,Judy,Gilbert,jgilbert1f@multiply.com +53,Eric,Williams,ewilliams1g@joomla.org +54,Ralph,Romero,rromero1h@sogou.com +55,Jean,Wilson,jwilson1i@ocn.ne.jp +56,Lori,Reynolds,lreynolds1j@illinois.edu +57,Donald,Moreno,dmoreno1k@bbc.co.uk +58,Steven,Berry,sberry1l@eepurl.com +59,Theresa,Shaw,tshaw1m@people.com.cn +60,John,Stephens,jstephens1n@nationalgeographic.com +61,Richard,Jacobs,rjacobs1o@state.tx.us +62,Andrew,Lawson,alawson1p@over-blog.com +63,Peter,Morgan,pmorgan1q@rambler.ru +64,Nicole,Garrett,ngarrett1r@zimbio.com +65,Joshua,Kim,jkim1s@edublogs.org +66,Ralph,Roberts,rroberts1t@people.com.cn +67,George,Montgomery,gmontgomery1u@smugmug.com +68,Gerald,Alvarez,galvarez1v@flavors.me +69,Donald,Olson,dolson1w@whitehouse.gov +70,Carlos,Morgan,cmorgan1x@pbs.org +71,Aaron,Stanley,astanley1y@webnode.com +72,Virginia,Long,vlong1z@spiegel.de +73,Robert,Berry,rberry20@tripadvisor.com +74,Antonio,Brooks,abrooks21@unesco.org +75,Ruby,Garcia,rgarcia22@ovh.net +76,Jack,Hanson,jhanson23@blogtalkradio.com +77,Kathryn,Nelson,knelson24@walmart.com +78,Jason,Reed,jreed25@printfriendly.com +79,George,Coleman,gcoleman26@people.com.cn +80,Rose,King,rking27@ucoz.com +81,Johnny,Holmes,jholmes28@boston.com +82,Katherine,Gilbert,kgilbert29@altervista.org +83,Joshua,Thomas,jthomas2a@ustream.tv +84,Julie,Perry,jperry2b@opensource.org +85,Richard,Perry,rperry2c@oracle.com +86,Kenneth,Ruiz,kruiz2d@wikimedia.org +87,Jose,Morgan,jmorgan2e@webnode.com +88,Donald,Campbell,dcampbell2f@goo.ne.jp +89,Debra,Collins,dcollins2g@uol.com.br +90,Jesse,Johnson,jjohnson2h@stumbleupon.com +91,Elizabeth,Stone,estone2i@histats.com +92,Angela,Rogers,arogers2j@goodreads.com +93,Emily,Dixon,edixon2k@mlb.com +94,Albert,Scott,ascott2l@tinypic.com +95,Barbara,Peterson,bpeterson2m@ow.ly +96,Adam,Greene,agreene2n@fastcompany.com +97,Earl,Sanders,esanders2o@hc360.com +98,Angela,Brooks,abrooks2p@mtv.com +99,Harold,Foster,hfoster2q@privacy.gov.au +100,Carl,Meyer,cmeyer2r@disqus.com +101,Michael,Perez,mperez0@chronoengine.com +102,Shawn,Mccoy,smccoy1@reddit.com +103,Kathleen,Payne,kpayne2@cargocollective.com +104,Jimmy,Cooper,jcooper3@cargocollective.com +105,Katherine,Rice,krice4@typepad.com +106,Sarah,Ryan,sryan5@gnu.org +107,Martin,Mcdonald,mmcdonald6@opera.com +108,Frank,Robinson,frobinson7@wunderground.com +109,Jennifer,Franklin,jfranklin8@mail.ru +110,Henry,Welch,hwelch9@list-manage.com +111,Fred,Snyder,fsnydera@reddit.com +112,Amy,Dunn,adunnb@nba.com +113,Kathleen,Meyer,kmeyerc@cdc.gov +114,Steve,Ferguson,sfergusond@reverbnation.com +115,Teresa,Hill,thille@dion.ne.jp +116,Amanda,Harper,aharperf@mail.ru +117,Kimberly,Ray,krayg@xing.com +118,Johnny,Knight,jknighth@jalbum.net +119,Virginia,Freeman,vfreemani@tiny.cc +120,Anna,Austin,aaustinj@diigo.com +121,Willie,Hill,whillk@mail.ru +122,Sean,Harris,sharrisl@zdnet.com +123,Mildred,Adams,madamsm@usatoday.com +124,David,Graham,dgrahamn@zimbio.com +125,Victor,Hunter,vhuntero@ehow.com +126,Aaron,Ruiz,aruizp@weebly.com +127,Benjamin,Brooks,bbrooksq@jalbum.net +128,Lisa,Wilson,lwilsonr@japanpost.jp +129,Benjamin,King,bkings@comsenz.com +130,Christina,Williamson,cwilliamsont@boston.com +131,Jane,Gonzalez,jgonzalezu@networksolutions.com +132,Thomas,Owens,towensv@psu.edu +133,Katherine,Moore,kmoorew@naver.com +134,Jennifer,Stewart,jstewartx@yahoo.com +135,Sara,Tucker,stuckery@topsy.com +136,Harold,Ortiz,hortizz@vkontakte.ru +137,Shirley,James,sjames10@yelp.com +138,Dennis,Johnson,djohnson11@slate.com +139,Louise,Weaver,lweaver12@china.com.cn +140,Maria,Armstrong,marmstrong13@prweb.com +141,Gloria,Cruz,gcruz14@odnoklassniki.ru +142,Diana,Spencer,dspencer15@ifeng.com +143,Kelly,Nguyen,knguyen16@altervista.org +144,Jane,Rodriguez,jrodriguez17@biblegateway.com +145,Scott,Brown,sbrown18@geocities.jp +146,Norma,Cruz,ncruz19@si.edu +147,Marie,Peters,mpeters1a@mlb.com +148,Lillian,Carr,lcarr1b@typepad.com +149,Judy,Nichols,jnichols1c@t-online.de +150,Billy,Long,blong1d@yahoo.com +151,Howard,Reid,hreid1e@exblog.jp +152,Laura,Ferguson,lferguson1f@tuttocitta.it +153,Anne,Bailey,abailey1g@geocities.com +154,Rose,Morgan,rmorgan1h@ehow.com +155,Nicholas,Reyes,nreyes1i@google.ru +156,Joshua,Kennedy,jkennedy1j@house.gov +157,Paul,Watkins,pwatkins1k@upenn.edu +158,Kathryn,Kelly,kkelly1l@businessweek.com +159,Adam,Armstrong,aarmstrong1m@techcrunch.com +160,Norma,Wallace,nwallace1n@phoca.cz +161,Timothy,Reyes,treyes1o@google.cn +162,Elizabeth,Patterson,epatterson1p@sun.com +163,Edward,Gomez,egomez1q@google.fr +164,David,Cox,dcox1r@friendfeed.com +165,Brenda,Wood,bwood1s@over-blog.com +166,Adam,Walker,awalker1t@blogs.com +167,Michael,Hart,mhart1u@wix.com +168,Jesse,Ellis,jellis1v@google.co.uk +169,Janet,Powell,jpowell1w@un.org +170,Helen,Ford,hford1x@creativecommons.org +171,Gerald,Carpenter,gcarpenter1y@about.me +172,Kathryn,Oliver,koliver1z@army.mil +173,Alan,Berry,aberry20@gov.uk +174,Harry,Andrews,handrews21@ameblo.jp +175,Andrea,Hall,ahall22@hp.com +176,Barbara,Wells,bwells23@behance.net +177,Anne,Wells,awells24@apache.org +178,Harry,Harper,hharper25@rediff.com +179,Jack,Ray,jray26@wufoo.com +180,Phillip,Hamilton,phamilton27@joomla.org +181,Shirley,Hunter,shunter28@newsvine.com +182,Arthur,Daniels,adaniels29@reuters.com +183,Virginia,Rodriguez,vrodriguez2a@walmart.com +184,Christina,Ryan,cryan2b@hibu.com +185,Theresa,Mendoza,tmendoza2c@vinaora.com +186,Jason,Cole,jcole2d@ycombinator.com +187,Phillip,Bryant,pbryant2e@rediff.com +188,Adam,Torres,atorres2f@sun.com +189,Margaret,Johnston,mjohnston2g@ucsd.edu +190,Paul,Payne,ppayne2h@hhs.gov +191,Todd,Willis,twillis2i@businessweek.com +192,Willie,Oliver,woliver2j@noaa.gov +193,Frances,Robertson,frobertson2k@go.com +194,Gregory,Hawkins,ghawkins2l@joomla.org +195,Lisa,Perkins,lperkins2m@si.edu +196,Jacqueline,Anderson,janderson2n@cargocollective.com +197,Shirley,Diaz,sdiaz2o@ucla.edu +198,Nicole,Meyer,nmeyer2p@flickr.com +199,Mary,Gray,mgray2q@constantcontact.com +200,Jean,Mcdonald,jmcdonald2r@baidu.com