From a089df1426ed12fd77c74b422e767ce842231663 Mon Sep 17 00:00:00 2001 From: Mike Stepanovic Date: Tue, 2 Jul 2024 11:28:23 -0600 Subject: [PATCH] added 5 silver models with yml configs and tests --- models/silver/silver__rune_price.sql | 14 ++++++ models/silver/silver__rune_price.yml | 10 ++++ .../silver__scheduled_outbound_events.sql | 28 +++++++++++ .../silver__scheduled_outbound_events.yml | 50 +++++++++++++++++++ models/silver/silver__send_messages.sql | 23 +++++++++ models/silver/silver__send_messages.yml | 30 +++++++++++ .../silver__trade_account_deposit_events.sql | 19 +++++++ .../silver__trade_account_deposit_events.yml | 27 ++++++++++ .../silver__trade_account_withdraw_events.sql | 19 +++++++ .../silver__trade_account_withdraw_events.yml | 27 ++++++++++ 10 files changed, 247 insertions(+) create mode 100644 models/silver/silver__rune_price.sql create mode 100644 models/silver/silver__rune_price.yml create mode 100644 models/silver/silver__scheduled_outbound_events.sql create mode 100644 models/silver/silver__scheduled_outbound_events.yml create mode 100644 models/silver/silver__send_messages.sql create mode 100644 models/silver/silver__send_messages.yml create mode 100644 models/silver/silver__trade_account_deposit_events.sql create mode 100644 models/silver/silver__trade_account_deposit_events.yml create mode 100644 models/silver/silver__trade_account_withdraw_events.sql create mode 100644 models/silver/silver__trade_account_withdraw_events.yml diff --git a/models/silver/silver__rune_price.sql b/models/silver/silver__rune_price.sql new file mode 100644 index 0000000..606e431 --- /dev/null +++ b/models/silver/silver__rune_price.sql @@ -0,0 +1,14 @@ +{{ config( + materialized = 'view' +) }} + +SELECT + rune_price_e8, + block_timestamp, + DATEADD( + ms, + __HEVO__LOADED_AT, + '1970-01-01' + ) AS _INSERTED_TIMESTAMP +FROM + {{ ref('bronze__rune_price') }} \ No newline at end of file diff --git a/models/silver/silver__rune_price.yml b/models/silver/silver__rune_price.yml new file mode 100644 index 0000000..a47abd2 --- /dev/null +++ b/models/silver/silver__rune_price.yml @@ -0,0 +1,10 @@ +version: 2 +models: + - name: silver__rune_price + columns: + - name: RUNE_PRICE_E8 + tests: + - not_null + - name: BLOCK_TIMESTAMP + tests: + - not_null \ No newline at end of file diff --git a/models/silver/silver__scheduled_outbound_events.sql b/models/silver/silver__scheduled_outbound_events.sql new file mode 100644 index 0000000..983e826 --- /dev/null +++ b/models/silver/silver__scheduled_outbound_events.sql @@ -0,0 +1,28 @@ +{{ config( + materialized = 'view' +) }} + +SELECT + chain, + to_addr as to_address, + asset, + asset_e8, + asset_decimals, + gas_rate, + memo, + in_hash, + out_hash, + max_gas_amount, + max_gas_decimals, + max_gas_asset, + module_name, + vault_pub_key, + event_id, + block_timestamp, + DATEADD( + ms, + __HEVO__LOADED_AT, + '1970-01-01' + ) AS _INSERTED_TIMESTAMP +FROM + {{ ref('bronze__scheduled_outbound_events') }} diff --git a/models/silver/silver__scheduled_outbound_events.yml b/models/silver/silver__scheduled_outbound_events.yml new file mode 100644 index 0000000..72b2f80 --- /dev/null +++ b/models/silver/silver__scheduled_outbound_events.yml @@ -0,0 +1,50 @@ +version: 2 +models: + - name: silver__scheduled_outbound_events + tests: + - dbt_utils.unique_combination_of_columns: + combination_of_columns: + - EVENT_ID + columns: + - name: CHAIN + tests: + - not_null + - name: TO_ADDRESS + tests: + - not_null + - name: ASSET + tests: + - not_null + - name: ASSET_E8 + tests: + - not_null + - name: ASSET_DECIMALS + tests: + - not_null + - name: GAS_RATE + tests: + - not_null + - name: MEMO + - name: IN_HASH + tests: + - not_null + - name: OUT_HASH + - name: MAX_GAS_AMOUNT + tests: + - not_null + - name: MAX_GAS_DECIMALS + tests: + - not_null + - name: MAX_GAS_ASSET + tests: + - not_null + - name: MODULE_NAME + - name: VAULT_PUB_KEY + tests: + - not_null + - name: EVENT_ID + tests: + - not_null + - name: BLOCK_TIMESTAMP + tests: + - not_null \ No newline at end of file diff --git a/models/silver/silver__send_messages.sql b/models/silver/silver__send_messages.sql new file mode 100644 index 0000000..65053fe --- /dev/null +++ b/models/silver/silver__send_messages.sql @@ -0,0 +1,23 @@ +{{ config( + materialized = 'view' +) }} + +SELECT + amount_e8, + asset, + from_addr as from_address, + to_addr as to_address, + memo + tx_id, + event_id, + block_timestamp, + DATEADD( + ms, + __HEVO__LOADED_AT, + '1970-01-01' + ) AS _INSERTED_TIMESTAMP +FROM + {{ ref('bronze__send_messages') }} + qualify(ROW_NUMBER() over(PARTITION BY event_id +ORDER BY + __HEVO__LOADED_AT DESC)) = 1 \ No newline at end of file diff --git a/models/silver/silver__send_messages.yml b/models/silver/silver__send_messages.yml new file mode 100644 index 0000000..b5405ef --- /dev/null +++ b/models/silver/silver__send_messages.yml @@ -0,0 +1,30 @@ +version: 2 +models: + - name: silver__send_messages + tests: + - dbt_utils.unique_combination_of_columns: + combination_of_columns: + - EVENT_ID + columns: + - name: AMOUNT_E8 + tests: + - not_null + - name: ASSET + tests: + - not_null + - name: FROM_ADDRESS + tests: + - not_null + - name: TO_ADDRESS + tests: + - not_null + - name: MEMO + - name: TX_ID + tests: + - not_null + - name: EVENT_ID + tests: + - not_null + - name: BLOCK_TIMESTAMP + tests: + - not_null \ No newline at end of file diff --git a/models/silver/silver__trade_account_deposit_events.sql b/models/silver/silver__trade_account_deposit_events.sql new file mode 100644 index 0000000..6da5c37 --- /dev/null +++ b/models/silver/silver__trade_account_deposit_events.sql @@ -0,0 +1,19 @@ +{{ config( + materialized = 'view' +) }} + +SELECT + amount_e8, + asset, + asset_address, + rune_address, + tx_id, + event_id, + block_timestamp, + DATEADD( + ms, + __HEVO__LOADED_AT, + '1970-01-01' + ) AS _INSERTED_TIMESTAMP +FROM + {{ ref('bronze__trade_account_deposit_events') }} \ No newline at end of file diff --git a/models/silver/silver__trade_account_deposit_events.yml b/models/silver/silver__trade_account_deposit_events.yml new file mode 100644 index 0000000..5ec7af6 --- /dev/null +++ b/models/silver/silver__trade_account_deposit_events.yml @@ -0,0 +1,27 @@ +version: 2 +models: + - name: silver__trade_account_deposit_events + tests: + - dbt_utils.unique_combination_of_columns: + combination_of_columns: + - EVENT_ID + columns: + - name: AMOUNT_E8 + tests: + - not_null + - name: ASSET + tests: + - not_null + - name: ASSET_ADDRESS + - name: RUNE_ADDRESS + tests: + - not_null + - name: TX_ID + tests: + - not_null + - name: EVENT_ID + tests: + - not_null + - name: BLOCK_TIMESTAMP + tests: + - not_null \ No newline at end of file diff --git a/models/silver/silver__trade_account_withdraw_events.sql b/models/silver/silver__trade_account_withdraw_events.sql new file mode 100644 index 0000000..85ca0a5 --- /dev/null +++ b/models/silver/silver__trade_account_withdraw_events.sql @@ -0,0 +1,19 @@ +{{ config( + materialized = 'view' +) }} + +SELECT + amount_e8, + asset, + asset_address, + rune_address, + tx_id, + event_id, + block_timestamp, + DATEADD( + ms, + __HEVO__LOADED_AT, + '1970-01-01' + ) AS _INSERTED_TIMESTAMP +FROM + {{ ref('bronze__trade_account_withdraw_events') }} \ No newline at end of file diff --git a/models/silver/silver__trade_account_withdraw_events.yml b/models/silver/silver__trade_account_withdraw_events.yml new file mode 100644 index 0000000..53c8359 --- /dev/null +++ b/models/silver/silver__trade_account_withdraw_events.yml @@ -0,0 +1,27 @@ +version: 2 +models: + - name: silver__trade_account_withdraw_events + tests: + - dbt_utils.unique_combination_of_columns: + combination_of_columns: + - EVENT_ID + columns: + - name: AMOUNT_E8 + tests: + - not_null + - name: ASSET + tests: + - not_null + - name: ASSET_ADDRESS + - name: RUNE_ADDRESS + tests: + - not_null + - name: TX_ID + tests: + - not_null + - name: EVENT_ID + tests: + - not_null + - name: BLOCK_TIMESTAMP + tests: + - not_null \ No newline at end of file