From 2ada52dd4a16feb9c343a94dfca4adcaa16c7ec2 Mon Sep 17 00:00:00 2001 From: marco_mac Date: Fri, 28 May 2021 16:52:01 +0800 Subject: [PATCH 1/6] version 0.1.0 --- .gitignore | 2 + Cargo.toml | 3 +- ref-adboard/Cargo.toml | 21 ++++ ref-adboard/build_docker.sh | 29 +++++ ref-adboard/build_local.sh | 7 ++ ref-adboard/readme.md | 41 +++++++ ref-adboard/src/lib.rs | 160 ++++++++++++++++++++++++ ref-adboard/src/owner.rs | 65 ++++++++++ ref-adboard/src/token_receiver.rs | 175 +++++++++++++++++++++++++++ ref-adboard/src/token_receiver_ex.rs | 150 +++++++++++++++++++++++ ref-adboard/src/utils.rs | 38 ++++++ ref-adboard/src/view.rs | 71 +++++++++++ res/ref_adboard_local.wasm | Bin 0 -> 149311 bytes res/ref_adboard_release.wasm | Bin 0 -> 150799 bytes 14 files changed, 761 insertions(+), 1 deletion(-) create mode 100644 ref-adboard/Cargo.toml create mode 100644 ref-adboard/build_docker.sh create mode 100644 ref-adboard/build_local.sh create mode 100644 ref-adboard/readme.md create mode 100644 ref-adboard/src/lib.rs create mode 100644 ref-adboard/src/owner.rs create mode 100644 ref-adboard/src/token_receiver.rs create mode 100644 ref-adboard/src/token_receiver_ex.rs create mode 100644 ref-adboard/src/utils.rs create mode 100644 ref-adboard/src/view.rs create mode 100755 res/ref_adboard_local.wasm create mode 100755 res/ref_adboard_release.wasm diff --git a/.gitignore b/.gitignore index 3a6feaa..686f183 100644 --- a/.gitignore +++ b/.gitignore @@ -2,6 +2,8 @@ # will have compiled files and executables **/target/ +.DS_Store + # Remove Cargo.lock from gitignore if creating an executable, leave it for libraries # More information here https://doc.rust-lang.org/cargo/guide/cargo-toml-vs-cargo-lock.html Cargo.lock diff --git a/Cargo.toml b/Cargo.toml index 706ccd0..d1a79c1 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -2,7 +2,8 @@ members = [ "./ref-exchange", "./test-token", - "./ref-farming" + "./ref-farming", + "./ref-adboard" ] diff --git a/ref-adboard/Cargo.toml b/ref-adboard/Cargo.toml new file mode 100644 index 0000000..f1085f3 --- /dev/null +++ b/ref-adboard/Cargo.toml @@ -0,0 +1,21 @@ +[package] +name = "ref_adboard" +version = "0.1.0" +authors = ["Marco Sun ", "Daniel"] +edition = "2018" + +[lib] +crate-type = ["cdylib", "rlib"] + +[dependencies] +near-sdk = { git = "https://github.com/near/near-sdk-rs", rev = "9d99077" } +near-contract-standards = { git = "https://github.com/near/near-sdk-rs", rev = "9d99077" } +uint = { version = "0.9.0", default-features = false } +# near-sdk = "3.1.0" +# near-contract-standards = "3.1.0" + +[dev-dependencies] +near-sdk-sim = { git = "https://github.com/near/near-sdk-rs", rev = "9d99077" } +# near-sdk-sim = "3.1.0" +test-token = { path = "../test-token" } +ref-exchange = { path = "../ref-exchange" } diff --git a/ref-adboard/build_docker.sh b/ref-adboard/build_docker.sh new file mode 100644 index 0000000..e3fa435 --- /dev/null +++ b/ref-adboard/build_docker.sh @@ -0,0 +1,29 @@ +#!/usr/bin/env bash + +# Exit script as soon as a command fails. +set -e + +DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )" + +NAME="build_ref_adboard" + +if docker ps -a --format '{{.Names}}' | grep -Eq "^${NAME}\$"; then + echo "Container exists" +else +docker create \ + --mount type=bind,source=$DIR/..,target=/host \ + --cap-add=SYS_PTRACE --security-opt seccomp=unconfined \ + --name=$NAME \ + -w /host/ref-adboard \ + -e RUSTFLAGS='-C link-arg=-s' \ + -it \ + nearprotocol/contract-builder \ + /bin/bash +fi + +docker start $NAME +docker exec -it $NAME /bin/bash -c "rustup toolchain install stable-2020-10-08;rustup default stable-2020-10-08;rustup target add wasm32-unknown-unknown; cargo build --target wasm32-unknown-unknown --release" + +mkdir -p res +cp $DIR/../target/wasm32-unknown-unknown/release/ref_adboard.wasm $DIR/../res/ref_adboard_release.wasm + diff --git a/ref-adboard/build_local.sh b/ref-adboard/build_local.sh new file mode 100644 index 0000000..cdf9b43 --- /dev/null +++ b/ref-adboard/build_local.sh @@ -0,0 +1,7 @@ +#!/bin/bash +set -e +rustup target add wasm32-unknown-unknown +RUSTFLAGS='-C link-arg=-s' cargo build --target wasm32-unknown-unknown --release +# RUSTFLAGS='-C link-arg=-s' cargo +stable build --target wasm32-unknown-unknown --release +cd .. +cp target/wasm32-unknown-unknown/release/ref_adboard.wasm ./res/ref_adboard_local.wasm diff --git a/ref-adboard/readme.md b/ref-adboard/readme.md new file mode 100644 index 0000000..1326c60 --- /dev/null +++ b/ref-adboard/readme.md @@ -0,0 +1,41 @@ +# ref-adboard + +### Background + +This is a rust version of adboard as contract of Daniel. + + +### Interface Structure + +```rust +/// metadata of one frame +pub struct HumanReadableFrameMetadata { + pub token_price: U128, + pub token_id: AccountId, + pub owner: AccountId, + pub protected_ts: U64, +} + +``` + +### Interface + +***view functions*** +```rust + +/// tokens that permitted in this contract +pub fn get_whitelist(&self) -> Vec; + +/// get single frame's metadata +pub fn get_frame_metadata(&self, index: FrameId) -> Option; + +/// batch get frame's metadata +pub fn list_frame_metadata(&self, from_index: u64, limit: u64) -> Vec; + +/// get single frame's data +pub fn get_frame_data(&self, index: FrameId) -> Option; + +/// batch get frame's data +pub fn list_frame_data(&self, from_index: u64, limit: u64) -> Vec; + +``` diff --git a/ref-adboard/src/lib.rs b/ref-adboard/src/lib.rs new file mode 100644 index 0000000..3439365 --- /dev/null +++ b/ref-adboard/src/lib.rs @@ -0,0 +1,160 @@ +/*! +* Ref-Adboard +* +* lib.rs is the main entry point. +*/ +use near_sdk::borsh::{self, BorshDeserialize, BorshSerialize}; +use near_sdk::json_types::{ValidAccountId}; +use near_sdk::collections::{UnorderedSet, UnorderedMap, Vector}; +use near_sdk::{env, near_bindgen, Balance, AccountId, PanicOnDefault, Timestamp}; +use crate::utils::*; +// use near_sdk::BorshStorageKey; + +mod utils; +mod owner; +mod token_receiver; +mod view; + +near_sdk::setup_alloc!(); + + +#[derive(BorshSerialize, BorshDeserialize)] +#[cfg_attr(feature = "test", derive(Clone))] +pub struct PaymentItem { + pub amount: u128, + pub token_id: AccountId, + pub receiver_id: AccountId, +} + +#[derive(BorshSerialize, BorshDeserialize)] +#[cfg_attr(feature = "test", derive(Clone))] +pub struct FrameMetadata { + + pub token_price: u128, + + pub token_id: AccountId, + + pub owner: AccountId, + + pub protected_ts: Timestamp, +} + +impl Default for FrameMetadata { + fn default() -> Self { + FrameMetadata { + token_price: ONE_NEAR, + token_id: String::from(WRAPPED_NEAR_CONTRACT), + owner: String::from(CONTRACT_SELF), + protected_ts: 0, + } + } +} + +// wait for main project upgrade to near-sdk 3.1.0 +// #[derive(BorshStorageKey, BorshSerialize)] +// pub enum StorageKeys { +// Seed, +// Farmer, +// RewardInfo, +// } + +#[derive(BorshDeserialize, BorshSerialize)] +pub struct ContractData { + + owner_id: AccountId, + + frames: UnorderedMap, + + frames_data: UnorderedMap, + + whitelist: UnorderedSet, + + failed_payments: Vector, + + frame_count: u16, + + trading_fee: u16, +} + + + +/// Versioned contract data. Allows to easily upgrade contracts. +#[derive(BorshSerialize, BorshDeserialize)] +pub enum VersionedContractData { + Current(ContractData), +} + +impl VersionedContractData {} + +#[near_bindgen] +#[derive(BorshDeserialize, BorshSerialize, PanicOnDefault)] +pub struct Contract { + + data: VersionedContractData, +} + +#[near_bindgen] +impl Contract { + #[init] + pub fn new(owner_id: ValidAccountId, frame_count: u16, trading_fee: u16) -> Self { + assert!(!env::state_exists(), "Already initialized"); + Self { + data: VersionedContractData::Current(ContractData { + owner_id: owner_id.into(), + frames: UnorderedMap::new(b"f".to_vec()), + frames_data: UnorderedMap::new(b"d".to_vec()), + whitelist: UnorderedSet::new(b"w".to_vec()), + failed_payments: Vector::new(b"l".to_vec()), + frame_count, + trading_fee, + }), + } + } + + pub fn edit_frame(&mut self, frame_id: FrameId, frame_data: String) { + + let metadata = self.data().frames.get(&frame_id).unwrap_or_default(); + + assert_eq!( + env::predecessor_account_id(), + metadata.owner, + "ERR_ONLY_OWNER_CAN_MODIFY" + ); + + self.data_mut().frames_data.insert(&frame_id, &frame_data); + } +} + +impl Contract { + fn data(&self) -> &ContractData { + match &self.data { + VersionedContractData::Current(data) => data, + } + } + + fn data_mut(&mut self) -> &mut ContractData { + match &mut self.data { + VersionedContractData::Current(data) => data, + } + } +} + +#[cfg(test)] +mod tests { + + use near_contract_standards::fungible_token::receiver::FungibleTokenReceiver; + use near_sdk::test_utils::{accounts, VMContextBuilder}; + use near_sdk::{testing_env, Balance, MockedBlockchain, BlockHeight}; + use near_sdk::json_types::{ValidAccountId, U64, U128}; + use near_contract_standards::storage_management::{StorageBalance, StorageManagement}; + + use super::*; + + fn setup_contract() -> (VMContextBuilder, Contract) { + let mut context = VMContextBuilder::new(); + testing_env!(context.predecessor_account_id(accounts(0)).build()); + let contract = Contract::new(accounts(0), 500, 15); + (context, contract) + } + +} \ No newline at end of file diff --git a/ref-adboard/src/owner.rs b/ref-adboard/src/owner.rs new file mode 100644 index 0000000..a3bcec5 --- /dev/null +++ b/ref-adboard/src/owner.rs @@ -0,0 +1,65 @@ +use crate::*; + +use near_sdk::{Promise, Gas}; + +/// Amount of gas used for upgrade function itself. +pub const GAS_FOR_UPGRADE_CALL: Gas = 50_000_000_000_000; +/// Amount of gas for deploy action. +pub const GAS_FOR_DEPLOY_CALL: Gas = 20_000_000_000_000; + +#[near_bindgen] +impl Contract { + pub fn set_owner(&mut self, owner_id: ValidAccountId) { + + self.assert_owner(); + + self.data_mut().owner_id = owner_id.into(); + } + + pub fn add_token_to_whitelist(&mut self, token_id: ValidAccountId) -> bool { + self.assert_owner(); + self.data_mut().whitelist.insert(token_id.as_ref()) + } + + pub fn remove_token_from_whitelist(&mut self, token_id: ValidAccountId) -> bool { + self.assert_owner(); + self.data_mut().whitelist.remove(token_id.as_ref()) + } + + /// Upgrades given contract. Only can be called by owner. + /// if `migrate` is true, calls `migrate()` function right after deployment. + /// TODO: consider adding extra grace period in case `owner` got attacked. + pub fn upgrade( + &self, + #[serializer(borsh)] code: Vec, + #[serializer(borsh)] migrate: bool, + ) -> Promise { + self.assert_owner(); + let mut promise = Promise::new(env::current_account_id()).deploy_contract(code); + if migrate { + promise = promise.function_call( + "migrate".into(), + vec![], + 0, + env::prepaid_gas() - GAS_FOR_UPGRADE_CALL - GAS_FOR_DEPLOY_CALL, + ); + } + promise + } + + /// Migration function between versions. + /// For next version upgrades, change this function. + #[init(ignore_state)] + pub fn migrate() -> Self { + assert_eq!( + env::predecessor_account_id(), + env::current_account_id(), + "ERR_NOT_ALLOWED" + ); + let contract: Contract = env::state_read().expect("ERR_NOT_INITIALIZED"); + contract + } + + +} + diff --git a/ref-adboard/src/token_receiver.rs b/ref-adboard/src/token_receiver.rs new file mode 100644 index 0000000..0db4f49 --- /dev/null +++ b/ref-adboard/src/token_receiver.rs @@ -0,0 +1,175 @@ +use crate::*; +use near_sdk::{ext_contract, PromiseOrValue, PromiseResult}; +use near_sdk::json_types::{U128}; +use std::num::ParseIntError; +use std::str::FromStr; + + +pub struct BuyFrameParams { + pub frame_id: FrameId, + pub token_id: AccountId, + pub sell_balance: Balance, + pub pool_id: u64, +} + +impl FromStr for BuyFrameParams { + type Err = ParseIntError; + + /// frame_id||sell_token_id||sell_balance||pool_id + fn from_str(s: &str) -> Result { + let parts: Vec<&str> = s.split("||").collect(); + let frame_id = parts[0].parse::()?; + let token_id = parts[1].to_string(); + let sell_balance = parts[2].parse::()?; + let pool_id = parts[3].parse::()?; + Ok(BuyFrameParams { + frame_id, + token_id, + sell_balance, + pool_id, + }) + } +} + +pub trait MFTTokenReceiver { + fn mft_on_transfer( + &mut self, + token_id: String, + sender_id: AccountId, + amount: U128, + msg: String, + ) -> PromiseOrValue; +} + +#[ext_contract(ext_multi_fungible_token)] +pub trait MultiFungibleToken { + fn mft_transfer(&mut self, token_id: String, receiver_id: AccountId, amount: U128, memo: Option); +} + +#[ext_contract(ext_self)] +trait FrameDealerResolver { + fn on_payment( + &mut self, + token_id: String, + receiver_id: AccountId, + amount: U128, + ); +} + +#[near_bindgen] +impl MFTTokenReceiver for Contract { + /// REF_AMM calls this to start a frame buying process. + fn mft_on_transfer( + &mut self, + token_id: String, + sender_id: AccountId, + amount: U128, + msg: String, + ) -> PromiseOrValue { + + assert_eq!( + env::predecessor_account_id(), + AMM_CONTRACT.to_string(), + "ERR_ONLY_CAN_BE_CALLED_BY_REF" + ); + + let amount: u128 = amount.into(); + + let params = msg.parse::().expect(&format!("ERR_MSG_INCORRECT")); + + self.assert_valid_frame_id(params.frame_id); + let mut metadata = self.data().frames.get(¶ms.frame_id).unwrap_or_default(); + let cur_ts = env::block_timestamp(); + if metadata.protected_ts > 0 && metadata.protected_ts < cur_ts { + env::panic(b"Frame is currently protected") + } + assert_eq!(token_id, metadata.token_id, "Invalid token id"); + assert_eq!(amount, metadata.token_price, "Invalid price for frame"); + assert!(self.data().whitelist.contains(¶ms.token_id), "Token not on whitelist"); + + // charge fee + let fee = ( + U256::from(amount) + * U256::from(self.data().trading_fee) + / U256::from(FEE_DIVISOR) + ).as_u128(); + + ext_multi_fungible_token::mft_transfer( + metadata.token_id.clone(), + metadata.owner.clone(), + (amount - fee).into(), + None, + &AMM_CONTRACT.to_string(), + 1, // one yocto near + XCC_GAS, + ) + .then(ext_self::on_payment( + metadata.token_id.clone(), + metadata.owner.clone(), + (amount - fee).into(), + &env::current_account_id(), + NO_DEPOSIT, + XCC_GAS, + )); + + // update metadata + metadata.owner = sender_id.clone(); + metadata.token_id = params.token_id.clone(); + metadata.token_price = params.sell_balance; + metadata.protected_ts = env::block_timestamp() + PROTECTED_TIMER; + self.data_mut().frames.insert(¶ms.frame_id, &metadata); + + PromiseOrValue::Value(U128(0)) + } + +} + +#[near_bindgen] +impl Contract { + #[private] + pub fn on_payment( + &mut self, + token_id: String, + receiver_id: AccountId, + amount: U128, + ) { + + assert_eq!( + env::promise_results_count(), + 1, + "Expected 1 promise result on payment" + ); + let amount: Balance = amount.into(); + match env::promise_result(0) { + PromiseResult::NotReady => unreachable!(), + PromiseResult::Failed => { + env::log( + format!( + "Pay {} with {} {}, Callback Failed.", + receiver_id, amount, token_id, + ) + .as_bytes(), + ); + // Record it to lost_and_found + self.data_mut().failed_payments.push( + &PaymentItem { + amount, + receiver_id, + token_id, + } + ); + }, + PromiseResult::Successful(_) => { + env::log( + format!( + "Pay {} with {} {}, Succeed.", + receiver_id, amount, token_id, + ) + .as_bytes(), + ); + } + }; + } +} + + diff --git a/ref-adboard/src/token_receiver_ex.rs b/ref-adboard/src/token_receiver_ex.rs new file mode 100644 index 0000000..b7fa948 --- /dev/null +++ b/ref-adboard/src/token_receiver_ex.rs @@ -0,0 +1,150 @@ +use crate::*; +use near_sdk::{ext_contract, PromiseOrValue, PromiseResult}; +use near_sdk::json_types::{U128}; +use std::num::ParseIntError; +use std::str::FromStr; +use std::convert::TryInto; + + +pub struct BuyFrameParams { + pub frame_id: FrameId, + pub token_id: AccountId, + pub sell_balance: Balance, + pub pool_id: u64, +} + +impl FromStr for BuyFrameParams { + type Err = ParseIntError; + + /// frame_id||sell_token_id||sell_balance||pool_id + fn from_str(s: &str) -> Result { + let parts: Vec<&str> = s.split("||").collect(); + let frame_id = parts[0].parse::()?; + let token_id = parts[1].to_string(); + let sell_balance = parts[2].parse::()?; + let pool_id = parts[3].parse::()?; + Ok(BuyFrameParams { + frame_id, + token_id, + sell_balance, + pool_id, + }) + } +} + +pub trait MFTTokenReceiver { + fn mft_on_transfer( + &mut self, + token_id: String, + sender_id: AccountId, + amount: U128, + msg: String, + ) -> PromiseOrValue; +} + +#[ext_contract(ext_ref_amm)] +pub trait PoolPriceServer { + fn get_return( + &self, + pool_id: u64, + token_in: ValidAccountId, + amount_in: U128, + token_out: ValidAccountId, + ) -> U128; +} + +#[ext_contract(ext_self)] +trait FrameDealerResolver { + fn on_frame_deal( + &mut self, + frame_id: FrameId, + buyer_id: AccountId, + msg: String, // BuyFrameParams + ); +} + +#[near_bindgen] +impl MFTTokenReceiver for Contract { + /// Callback on receiving tokens by this contract. + fn mft_on_transfer( + &mut self, + token_id: String, + sender_id: AccountId, + amount: U128, + msg: String, + ) -> PromiseOrValue { + + assert_eq!( + env::predecessor_account_id(), + AMM_CONTRACT.to_string(), + "ERR_ONLY_CAN_BE_CALLED_BY_REF" + ); + + let amount: u128 = amount.into(); + + let params = msg.parse::().expect(&format!("ERR_MSG_INCORRECT")); + + self.assert_valid_frame_id(params.frame_id); + let metadata = self.data().frames.get(¶ms.frame_id).unwrap_or_default(); + let cur_ts = env::block_timestamp(); + if metadata.protected_ts > 0 && metadata.protected_ts < cur_ts { + env::panic(b"Frame is currently protected") + } + assert_eq!(token_id, metadata.token_id, "Invalid token id"); + assert_eq!(amount, metadata.token_price, "Invalid price for frame"); + assert!(self.data().whitelist.contains(¶ms.token_id), "Token not on whitelist"); + + // query price from AMM and using callback to handle results + ext_ref_amm::get_return( + params.pool_id, + token_id.clone().try_into().unwrap(), + amount.into(), + params.token_id.clone().try_into().unwrap(), + &AMM_CONTRACT.to_string(), + NO_DEPOSIT, + XCC_GAS, + ) + .then(ext_self::on_frame_deal( + params.frame_id, + sender_id.into(), + msg.clone(), + &env::current_account_id(), + NO_DEPOSIT, + XCC_GAS, + )); + + PromiseOrValue::Value(U128(0)) + } + +} + +#[near_bindgen] +impl Contract { + #[private] + pub fn on_frame_deal( + &mut self, + frame_id: FrameId, + buyer_id: AccountId, + msg: String, // BuyFrameParams + ) { + let params = msg.parse::().expect(&format!("ERR_MSG_INCORRECT")); + // seller, token_in, token_in_amount + // buyer, token_out, token_out_amount + let token_out_amount = match env::promise_result(0) { + PromiseResult::NotReady => unreachable!(), + PromiseResult::Successful(value) => { + if let Ok(amount) = near_sdk::serde_json::from_slice::(&value) { + amount.0 + } else { + 0 + } + } + PromiseResult::Failed => 0, + }; + + let mut metadata = self.data_mut().frames.get(¶ms.frame_id).unwrap_or_default(); + + } +} + + diff --git a/ref-adboard/src/utils.rs b/ref-adboard/src/utils.rs new file mode 100644 index 0000000..d5d7876 --- /dev/null +++ b/ref-adboard/src/utils.rs @@ -0,0 +1,38 @@ +use near_sdk::{env, Gas}; +// use crate::*; +use crate::Contract; +use uint::construct_uint; + +construct_uint! { + /// 256-bit unsigned integer. + pub struct U256(4); +} + +pub const FEE_DIVISOR: u32 = 10_000; +pub type FrameId = u16; +pub const ONE_NEAR: u128 = 1_000_000_000_000_000_000_000_000; +pub const XCC_GAS: Gas = 30_000_000_000_000; +pub const NO_DEPOSIT: u128 = 0; +pub const CONTRACT_SELF: &str = "ref-adboard.near"; +pub const AMM_CONTRACT: &str = "ref-playground.near"; +pub const WRAPPED_NEAR_CONTRACT: &str = "wrap.near"; +pub const PROTECTED_TIMER: u64 = 60 * 60 * 1000 * 1000 * 1000; //15 minutes +pub const DEFAULT_DATA: &str = "WzIzNCzfBN8E1AQ23wTfBMkE31DfBN9Q3wTfBN9Q3wTfUN8o3wTfUN8E31DfUN8E31DfBN8E31DfBN9Q3wTfBN9Q3wTfUN8o3wTfUN8E31DfUN8E31DfBN8E31DfBN9Q3wTfBN9Q3wTfUN8E3wTPBF0"; + + +impl Contract { + + pub(crate) fn assert_owner(&self) { + assert_eq!( + env::predecessor_account_id(), + self.data().owner_id, + "ERR_NOT_ALLOWED" + ); + } + + pub(crate) fn assert_valid_frame_id(&self, frame_id: FrameId) { + let frame_count = self.data().frame_count; + assert!(frame_id < frame_count, "ERR_INVALID_FRAMEID"); + } +} + diff --git a/ref-adboard/src/view.rs b/ref-adboard/src/view.rs new file mode 100644 index 0000000..6a6c016 --- /dev/null +++ b/ref-adboard/src/view.rs @@ -0,0 +1,71 @@ +use near_sdk::serde::{Deserialize, Serialize}; +use near_sdk::json_types::{U64, U128}; +use crate::*; + + +#[derive(Debug, Serialize, Deserialize, PartialEq, Clone)] +#[serde(crate = "near_sdk::serde")] +pub struct HumanReadableFrameMetadata { + pub token_price: U128, + pub token_id: AccountId, + pub owner: AccountId, + pub protected_ts: U64, +} + +impl From<&FrameMetadata> for HumanReadableFrameMetadata { + fn from(metadata: &FrameMetadata) -> Self { + Self { + token_price: metadata.token_price.into(), + token_id: metadata.token_id.clone(), + owner: metadata.owner.clone(), + protected_ts: metadata.protected_ts.into(), + } + } +} + +#[near_bindgen] +impl Contract { + pub fn get_whitelist(&self) -> Vec { + self.data().whitelist.to_vec() + } + + pub fn get_frame_metadata(&self, index: FrameId) -> Option { + if index >= self.data().frame_count { + None + } else { + let metadata = self.data().frames.get(&index).unwrap_or_default(); + Some((&metadata).into()) + } + } + + pub fn list_frame_metadata(&self, from_index: u64, limit: u64) ->Vec { + (from_index..std::cmp::min(from_index + limit, self.data().frame_count as u64)) + .map( + |index| { + let metadata = self.data().frames.get(&(index as u16)).unwrap_or_default(); + (&metadata).into() + } + ).collect() + } + + pub fn get_frame_data(&self, index: FrameId) -> Option { + if index >= self.data().frame_count { + None + } else { + Some( + self.data() + .frames_data.get(&index) + .unwrap_or(DEFAULT_DATA.to_string()) + ) + } + } + + pub fn list_frame_data(&self, from_index: u64, limit: u64) ->Vec { + (from_index..std::cmp::min(from_index + limit, self.data().frame_count as u64)) + .map(|index| + self.data().frames_data.get(&(index as u16)) + .unwrap_or(DEFAULT_DATA.to_string()) + ).collect() + } + +} \ No newline at end of file diff --git a/res/ref_adboard_local.wasm b/res/ref_adboard_local.wasm new file mode 100755 index 0000000000000000000000000000000000000000..dfc978c127d105cd31dd734c838a5ad03d25e7e8 GIT binary patch literal 149311 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 Z5WF-V5vO}W491_o!EYI`ed9o1_+Q?8yH)@I literal 0 HcmV?d00001 diff --git a/res/ref_adboard_release.wasm b/res/ref_adboard_release.wasm new file mode 100755 index 0000000000000000000000000000000000000000..1885a6d0ff5f9722819f433f0bf6e02e0957a7d5 GIT binary patch literal 150799 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 WEL!~%^QAv50#6wTeG|bd_x}J;4{9g? literal 0 HcmV?d00001 From 9e619d0b1e5512f17d7da000a261a353d8a2463c Mon Sep 17 00:00:00 2001 From: marco_mac Date: Fri, 28 May 2021 17:38:29 +0800 Subject: [PATCH 2/6] ready to testing --- ref-adboard/readme.md | 46 ++++++++++++++++++++- ref-adboard/src/owner.rs | 7 ++++ ref-adboard/src/token_receiver.rs | 58 +++++++++++++++++++-------- ref-adboard/src/token_receiver_ex.rs | 2 + ref-adboard/src/view.rs | 26 ++++++++++++ res/ref_adboard_local.wasm | Bin 149311 -> 223938 bytes res/ref_adboard_release.wasm | Bin 150799 -> 231629 bytes 7 files changed, 121 insertions(+), 18 deletions(-) diff --git a/ref-adboard/readme.md b/ref-adboard/readme.md index 1326c60..7eeb184 100644 --- a/ref-adboard/readme.md +++ b/ref-adboard/readme.md @@ -2,7 +2,7 @@ ### Background -This is a rust version of adboard as contract of Daniel. +This is a RUST version of adboard AssemblyScript contract by Daniel. ### Interface Structure @@ -16,6 +16,12 @@ pub struct HumanReadableFrameMetadata { pub protected_ts: U64, } +/// Payment that failed auto-execution +pub struct HumanReadablePaymentItem { + pub amount: U128, + pub token_id: AccountId, + pub receiver_id: AccountId, +} ``` ### Interface @@ -38,4 +44,42 @@ pub fn get_frame_data(&self, index: FrameId) -> Option; /// batch get frame's data pub fn list_frame_data(&self, from_index: u64, limit: u64) -> Vec; +/// batch get failed payments +pub fn list_failed_payments(&self, from_index: u64, limit: u64) -> Vec; + +``` + +***user functions*** +```rust +/// buy frame, call from ref-finance contract +/// with msg is "frame_id||sell_token_id||sell_balance||pool_id" +/// receiver_id is ref-adboard contract id, +/// token_id is the frame's current token, +/// amount is the frame's sell price at that token. +pub fn mft_transfer_call( + &mut self, + token_id: String, + receiver_id: ValidAccountId, + amount: U128, + memo: Option, + msg: String, + ) -> PromiseOrValue; + +/// edit frame +pub fn edit_frame(&mut self, frame_id: FrameId, frame_data: String); ``` + +***owner functions*** +```rust +/// transfer ownership +pub fn set_owner(&mut self, owner_id: ValidAccountId); + +/// +pub fn add_token_to_whitelist(&mut self, token_id: ValidAccountId) -> bool; + +/// +pub fn remove_token_from_whitelist(&mut self, token_id: ValidAccountId) -> bool; + +/// handle one failed payment at one call. +pub fn repay_failure_payment(&mut self); +``` \ No newline at end of file diff --git a/ref-adboard/src/owner.rs b/ref-adboard/src/owner.rs index a3bcec5..7611211 100644 --- a/ref-adboard/src/owner.rs +++ b/ref-adboard/src/owner.rs @@ -26,6 +26,13 @@ impl Contract { self.data_mut().whitelist.remove(token_id.as_ref()) } + pub fn repay_failure_payment(&mut self) { + self.assert_owner(); + if let Some(item) = self.data_mut().failed_payments.pop() { + self.handle_payment(&item.token_id, &item.receiver_id, item.amount); + } + } + /// Upgrades given contract. Only can be called by owner. /// if `migrate` is true, calls `migrate()` function right after deployment. /// TODO: consider adding extra grace period in case `owner` got attacked. diff --git a/ref-adboard/src/token_receiver.rs b/ref-adboard/src/token_receiver.rs index 0db4f49..4bd4e33 100644 --- a/ref-adboard/src/token_receiver.rs +++ b/ref-adboard/src/token_receiver.rs @@ -94,23 +94,25 @@ impl MFTTokenReceiver for Contract { / U256::from(FEE_DIVISOR) ).as_u128(); - ext_multi_fungible_token::mft_transfer( - metadata.token_id.clone(), - metadata.owner.clone(), - (amount - fee).into(), - None, - &AMM_CONTRACT.to_string(), - 1, // one yocto near - XCC_GAS, - ) - .then(ext_self::on_payment( - metadata.token_id.clone(), - metadata.owner.clone(), - (amount - fee).into(), - &env::current_account_id(), - NO_DEPOSIT, - XCC_GAS, - )); + self.handle_payment(&metadata.token_id, &metadata.owner, amount - fee); + + // ext_multi_fungible_token::mft_transfer( + // metadata.token_id.clone(), + // metadata.owner.clone(), + // (amount - fee).into(), + // None, + // &AMM_CONTRACT.to_string(), + // 1, // one yocto near + // XCC_GAS, + // ) + // .then(ext_self::on_payment( + // metadata.token_id.clone(), + // metadata.owner.clone(), + // (amount - fee).into(), + // &env::current_account_id(), + // NO_DEPOSIT, + // XCC_GAS, + // )); // update metadata metadata.owner = sender_id.clone(); @@ -126,6 +128,28 @@ impl MFTTokenReceiver for Contract { #[near_bindgen] impl Contract { + + pub fn handle_payment(&mut self, token_id: &String, receiver_id: &AccountId, amount: u128) { + ext_multi_fungible_token::mft_transfer( + token_id.clone(), + receiver_id.clone(), + amount.into(), + None, + &AMM_CONTRACT.to_string(), + 1, // one yocto near + XCC_GAS, + ) + .then(ext_self::on_payment( + token_id.clone(), + receiver_id.clone(), + amount.into(), + &env::current_account_id(), + NO_DEPOSIT, + XCC_GAS, + )); + } + + #[private] pub fn on_payment( &mut self, diff --git a/ref-adboard/src/token_receiver_ex.rs b/ref-adboard/src/token_receiver_ex.rs index b7fa948..2f43691 100644 --- a/ref-adboard/src/token_receiver_ex.rs +++ b/ref-adboard/src/token_receiver_ex.rs @@ -1,3 +1,5 @@ +/// this file is reserved for future work + use crate::*; use near_sdk::{ext_contract, PromiseOrValue, PromiseResult}; use near_sdk::json_types::{U128}; diff --git a/ref-adboard/src/view.rs b/ref-adboard/src/view.rs index 6a6c016..180e404 100644 --- a/ref-adboard/src/view.rs +++ b/ref-adboard/src/view.rs @@ -2,6 +2,23 @@ use near_sdk::serde::{Deserialize, Serialize}; use near_sdk::json_types::{U64, U128}; use crate::*; +#[derive(Debug, Serialize, Deserialize, PartialEq, Clone)] +#[serde(crate = "near_sdk::serde")] +pub struct HumanReadablePaymentItem { + pub amount: U128, + pub token_id: AccountId, + pub receiver_id: AccountId, +} + +impl From<&PaymentItem> for HumanReadablePaymentItem { + fn from(item: &PaymentItem) -> Self { + Self { + amount: item.amount.into(), + token_id: item.token_id.clone(), + receiver_id: item.receiver_id.clone(), + } + } +} #[derive(Debug, Serialize, Deserialize, PartialEq, Clone)] #[serde(crate = "near_sdk::serde")] @@ -68,4 +85,13 @@ impl Contract { ).collect() } + pub fn list_failed_payments(&self, from_index: u64, limit: u64) ->Vec { + (from_index..std::cmp::min(from_index + limit, self.data().failed_payments.len())) + .map(|index| { + let item = self.data().failed_payments.get(index).unwrap(); + (&item).into() + } + ).collect() + } + } \ No newline at end of file diff --git a/res/ref_adboard_local.wasm b/res/ref_adboard_local.wasm index dfc978c127d105cd31dd734c838a5ad03d25e7e8..32e64ccc0bfe158a2e96f1c7d89419793c87b46e 100755 GIT binary patch literal 223938 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�la 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 SUhAgTmaPMjea>zlpZ7NgGQH;j delta 48361 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%0DBX>drw_d+AJ(Gyks5`~(U$ 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 Date: Sat, 29 May 2021 14:31:25 +0800 Subject: [PATCH 3/6] past unittest --- ref-adboard/src/lib.rs | 212 +++++++++++++++++++++++++----- ref-adboard/src/owner.rs | 26 +++- ref-adboard/src/token_receiver.rs | 33 ++--- ref-adboard/src/utils.rs | 11 +- ref-adboard/src/view.rs | 53 +++++++- res/ref_adboard_release.wasm | Bin 231629 -> 252603 bytes 6 files changed, 274 insertions(+), 61 deletions(-) diff --git a/ref-adboard/src/lib.rs b/ref-adboard/src/lib.rs index 3439365..edef764 100644 --- a/ref-adboard/src/lib.rs +++ b/ref-adboard/src/lib.rs @@ -4,7 +4,7 @@ * lib.rs is the main entry point. */ use near_sdk::borsh::{self, BorshDeserialize, BorshSerialize}; -use near_sdk::json_types::{ValidAccountId}; +use near_sdk::json_types::{ValidAccountId, U128}; use near_sdk::collections::{UnorderedSet, UnorderedMap, Vector}; use near_sdk::{env, near_bindgen, Balance, AccountId, PanicOnDefault, Timestamp}; use crate::utils::*; @@ -39,30 +39,23 @@ pub struct FrameMetadata { pub protected_ts: Timestamp, } -impl Default for FrameMetadata { - fn default() -> Self { - FrameMetadata { - token_price: ONE_NEAR, - token_id: String::from(WRAPPED_NEAR_CONTRACT), - owner: String::from(CONTRACT_SELF), - protected_ts: 0, - } - } -} - -// wait for main project upgrade to near-sdk 3.1.0 -// #[derive(BorshStorageKey, BorshSerialize)] -// pub enum StorageKeys { -// Seed, -// Farmer, -// RewardInfo, -// } - #[derive(BorshDeserialize, BorshSerialize)] pub struct ContractData { owner_id: AccountId, + amm_id: AccountId, + + default_token_id: AccountId, + default_sell_balance: Balance, + + // in seconds + protected_period: u16, + + trading_fee: u16, + + frame_count: u16, + frames: UnorderedMap, frames_data: UnorderedMap, @@ -70,14 +63,9 @@ pub struct ContractData { whitelist: UnorderedSet, failed_payments: Vector, - - frame_count: u16, - - trading_fee: u16, } - /// Versioned contract data. Allows to easily upgrade contracts. #[derive(BorshSerialize, BorshDeserialize)] pub enum VersionedContractData { @@ -96,11 +84,23 @@ pub struct Contract { #[near_bindgen] impl Contract { #[init] - pub fn new(owner_id: ValidAccountId, frame_count: u16, trading_fee: u16) -> Self { + pub fn new( + owner_id: ValidAccountId, + amm_id: ValidAccountId, + default_token_id: ValidAccountId, + default_sell_balance: U128, + protected_period: u16, + frame_count: u16, + trading_fee: u16 + ) -> Self { assert!(!env::state_exists(), "Already initialized"); Self { data: VersionedContractData::Current(ContractData { owner_id: owner_id.into(), + amm_id: amm_id.into(), + default_token_id: default_token_id.into(), + default_sell_balance: default_sell_balance.into(), + protected_period, frames: UnorderedMap::new(b"f".to_vec()), frames_data: UnorderedMap::new(b"d".to_vec()), whitelist: UnorderedSet::new(b"w".to_vec()), @@ -113,7 +113,14 @@ impl Contract { pub fn edit_frame(&mut self, frame_id: FrameId, frame_data: String) { - let metadata = self.data().frames.get(&frame_id).unwrap_or_default(); + let metadata = self.data().frames.get(&frame_id).unwrap_or( + FrameMetadata { + token_price: self.data().default_sell_balance, + token_id: self.data().default_token_id.clone(), + owner: self.data().owner_id.clone(), + protected_ts: 0, + } + ); assert_eq!( env::predecessor_account_id(), @@ -142,19 +149,164 @@ impl Contract { #[cfg(test)] mod tests { - use near_contract_standards::fungible_token::receiver::FungibleTokenReceiver; use near_sdk::test_utils::{accounts, VMContextBuilder}; use near_sdk::{testing_env, Balance, MockedBlockchain, BlockHeight}; use near_sdk::json_types::{ValidAccountId, U64, U128}; - use near_contract_standards::storage_management::{StorageBalance, StorageManagement}; use super::*; + const ONE_NEAR: u128 = 1_000_000_000_000_000_000_000_000; + fn setup_contract() -> (VMContextBuilder, Contract) { let mut context = VMContextBuilder::new(); testing_env!(context.predecessor_account_id(accounts(0)).build()); - let contract = Contract::new(accounts(0), 500, 15); + let contract = Contract::new( + accounts(0), + accounts(1), + accounts(2), + U128(ONE_NEAR), + 15*60, 500, 15); (context, contract) } + fn edit_frame( + context: &mut VMContextBuilder, + contract: &mut Contract, + frame_id: FrameId, + frame_data: String, + ) { + testing_env!(context + .predecessor_account_id(accounts(0)) + .build()); + contract.edit_frame(frame_id, frame_data); + } + + #[test] + fn test_basics() { + + let (mut context, mut contract) = setup_contract(); + + let frame_id: FrameId = 33; + + let frame_data = contract.get_frame_data(frame_id).expect("NO_DATA"); + assert_eq!(frame_data, DEFAULT_DATA, "ERR_DATA"); + + edit_frame(&mut context, &mut contract, frame_id, "TEST_STRINGS".to_string()); + + let frame_data = contract.get_frame_data(frame_id).expect("NO_DATA"); + assert_eq!(frame_data, "TEST_STRINGS".to_string(), "ERR_DATA"); + + // let farm_id = create_farm(&mut context, &mut contract, + // accounts(1), accounts(2), 5000, 60); + // assert_eq!(farm_id, String::from("bob#0")); + // let farm_info = contract.get_farm(farm_id.clone()).expect("Error"); + // assert_eq!(farm_info.farm_kind, String::from("SIMPLE_FARM")); + // assert_eq!(farm_info.farm_status, String::from("Created")); + // assert_eq!(farm_info.seed_id, String::from("bob")); + // assert_eq!(farm_info.reward_token, String::from("charlie")); + // assert_eq!(farm_info.reward_per_session, U128(5000)); + // assert_eq!(farm_info.session_interval, U64(60)); + } + + #[test] + fn test_owner_actions() { + let (mut context, mut contract) = setup_contract(); + + let metadata = contract.get_metadata(); + assert_eq!(metadata.version, "0.1.0".to_string()); + assert_eq!(metadata.owner_id, "alice".to_string()); + assert_eq!(metadata.amm_id, "bob".to_string()); + assert_eq!(metadata.default_token_id, "charlie".to_string()); + assert_eq!(metadata.default_sell_balance, U128(ONE_NEAR)); + assert_eq!(metadata.protected_period, 15*60); + assert_eq!(metadata.frame_count, 500); + assert_eq!(metadata.trading_fee, 15); + + let frame_metadata = contract.get_frame_metadata(100); + assert_eq!(frame_metadata.unwrap().token_id, "charlie".to_string()); + let frame_metadata = contract.get_frame_metadata(500); + assert!(frame_metadata.is_none()); + contract.expend_frames(10); + let frame_metadata = contract.get_frame_metadata(500); + assert_eq!(frame_metadata.unwrap().token_id, "charlie".to_string()); + let frame_metadata = contract.get_frame_metadata(510); + assert!(frame_metadata.is_none()); + + contract.set_trading_fee(25); + let metadata = contract.get_metadata(); + assert_eq!(metadata.version, "0.1.0".to_string()); + assert_eq!(metadata.owner_id, "alice".to_string()); + assert_eq!(metadata.amm_id, "bob".to_string()); + assert_eq!(metadata.default_token_id, "charlie".to_string()); + assert_eq!(metadata.default_sell_balance, U128(ONE_NEAR)); + assert_eq!(metadata.protected_period, 15*60); + assert_eq!(metadata.frame_count, 510); + assert_eq!(metadata.trading_fee, 25); + + contract.set_protected_period(20*60); + let metadata = contract.get_metadata(); + assert_eq!(metadata.version, "0.1.0".to_string()); + assert_eq!(metadata.owner_id, "alice".to_string()); + assert_eq!(metadata.amm_id, "bob".to_string()); + assert_eq!(metadata.default_token_id, "charlie".to_string()); + assert_eq!(metadata.default_sell_balance, U128(ONE_NEAR)); + assert_eq!(metadata.protected_period, 20*60); + assert_eq!(metadata.frame_count, 510); + assert_eq!(metadata.trading_fee, 25); + + contract.set_default_token(accounts(3), U128(ONE_NEAR+1)); + let metadata = contract.get_metadata(); + assert_eq!(metadata.version, "0.1.0".to_string()); + assert_eq!(metadata.owner_id, "alice".to_string()); + assert_eq!(metadata.amm_id, "bob".to_string()); + assert_eq!(metadata.default_token_id, "danny".to_string()); + assert_eq!(metadata.default_sell_balance, U128(ONE_NEAR+1)); + assert_eq!(metadata.protected_period, 20*60); + assert_eq!(metadata.frame_count, 510); + assert_eq!(metadata.trading_fee, 25); + + contract.set_amm(accounts(4)); + let metadata = contract.get_metadata(); + assert_eq!(metadata.version, "0.1.0".to_string()); + assert_eq!(metadata.owner_id, "alice".to_string()); + assert_eq!(metadata.amm_id, "eugene".to_string()); + assert_eq!(metadata.default_token_id, "danny".to_string()); + assert_eq!(metadata.default_sell_balance, U128(ONE_NEAR+1)); + assert_eq!(metadata.protected_period, 20*60); + assert_eq!(metadata.frame_count, 510); + assert_eq!(metadata.trading_fee, 25); + + contract.add_token_to_whitelist(accounts(1)); + let tokens = contract.get_whitelist(); + assert_eq!(tokens.len(), 1); + assert_eq!(tokens[0], "bob".to_string()); + + contract.add_token_to_whitelist(accounts(2)); + let tokens = contract.get_whitelist(); + assert_eq!(tokens.len(), 2); + assert_eq!(tokens[1], "charlie".to_string()); + + contract.remove_token_from_whitelist(accounts(1)); + let tokens = contract.get_whitelist(); + assert_eq!(tokens.len(), 1); + assert_eq!(tokens[0], "charlie".to_string()); + + contract.remove_token_from_whitelist(accounts(2)); + let tokens = contract.get_whitelist(); + assert_eq!(tokens.len(), 0); + + contract.set_owner(accounts(5)); + let metadata = contract.get_metadata(); + assert_eq!(metadata.version, "0.1.0".to_string()); + assert_eq!(metadata.owner_id, "fargo".to_string()); + assert_eq!(metadata.amm_id, "eugene".to_string()); + assert_eq!(metadata.default_token_id, "danny".to_string()); + assert_eq!(metadata.default_sell_balance, U128(ONE_NEAR+1)); + assert_eq!(metadata.protected_period, 20*60); + assert_eq!(metadata.frame_count, 510); + assert_eq!(metadata.trading_fee, 25); + + + } + } \ No newline at end of file diff --git a/ref-adboard/src/owner.rs b/ref-adboard/src/owner.rs index 7611211..98b3592 100644 --- a/ref-adboard/src/owner.rs +++ b/ref-adboard/src/owner.rs @@ -10,10 +10,34 @@ pub const GAS_FOR_DEPLOY_CALL: Gas = 20_000_000_000_000; #[near_bindgen] impl Contract { pub fn set_owner(&mut self, owner_id: ValidAccountId) { + self.assert_owner(); + self.data_mut().owner_id = owner_id.into(); + } + + pub fn set_amm(&mut self, amm_id: ValidAccountId) { + self.assert_owner(); + self.data_mut().amm_id = amm_id.into(); + } + pub fn set_protected_period(&mut self, protected_period: u16) { self.assert_owner(); + self.data_mut().protected_period = protected_period; + } - self.data_mut().owner_id = owner_id.into(); + pub fn set_trading_fee(&mut self, trading_fee: u16) { + self.assert_owner(); + self.data_mut().trading_fee = trading_fee; + } + + pub fn expend_frames(&mut self, expend_count: u16) { + self.assert_owner(); + self.data_mut().frame_count += expend_count; + } + + pub fn set_default_token(&mut self, token_id: ValidAccountId, sell_balance: U128) { + self.assert_owner(); + self.data_mut().default_token_id = token_id.into(); + self.data_mut().default_sell_balance = sell_balance.into(); } pub fn add_token_to_whitelist(&mut self, token_id: ValidAccountId) -> bool { diff --git a/ref-adboard/src/token_receiver.rs b/ref-adboard/src/token_receiver.rs index 4bd4e33..c0fc9d6 100644 --- a/ref-adboard/src/token_receiver.rs +++ b/ref-adboard/src/token_receiver.rs @@ -69,7 +69,7 @@ impl MFTTokenReceiver for Contract { assert_eq!( env::predecessor_account_id(), - AMM_CONTRACT.to_string(), + self.data().amm_id, "ERR_ONLY_CAN_BE_CALLED_BY_REF" ); @@ -78,7 +78,14 @@ impl MFTTokenReceiver for Contract { let params = msg.parse::().expect(&format!("ERR_MSG_INCORRECT")); self.assert_valid_frame_id(params.frame_id); - let mut metadata = self.data().frames.get(¶ms.frame_id).unwrap_or_default(); + let mut metadata = self.data().frames.get(¶ms.frame_id).unwrap_or( + FrameMetadata { + token_price: self.data().default_sell_balance, + token_id: self.data().default_token_id.clone(), + owner: self.data().owner_id.clone(), + protected_ts: 0, + } + ); let cur_ts = env::block_timestamp(); if metadata.protected_ts > 0 && metadata.protected_ts < cur_ts { env::panic(b"Frame is currently protected") @@ -96,29 +103,11 @@ impl MFTTokenReceiver for Contract { self.handle_payment(&metadata.token_id, &metadata.owner, amount - fee); - // ext_multi_fungible_token::mft_transfer( - // metadata.token_id.clone(), - // metadata.owner.clone(), - // (amount - fee).into(), - // None, - // &AMM_CONTRACT.to_string(), - // 1, // one yocto near - // XCC_GAS, - // ) - // .then(ext_self::on_payment( - // metadata.token_id.clone(), - // metadata.owner.clone(), - // (amount - fee).into(), - // &env::current_account_id(), - // NO_DEPOSIT, - // XCC_GAS, - // )); - // update metadata metadata.owner = sender_id.clone(); metadata.token_id = params.token_id.clone(); metadata.token_price = params.sell_balance; - metadata.protected_ts = env::block_timestamp() + PROTECTED_TIMER; + metadata.protected_ts = env::block_timestamp() + to_nanoseconds(self.data().protected_period); self.data_mut().frames.insert(¶ms.frame_id, &metadata); PromiseOrValue::Value(U128(0)) @@ -135,7 +124,7 @@ impl Contract { receiver_id.clone(), amount.into(), None, - &AMM_CONTRACT.to_string(), + &self.data().amm_id, 1, // one yocto near XCC_GAS, ) diff --git a/ref-adboard/src/utils.rs b/ref-adboard/src/utils.rs index d5d7876..4178b7e 100644 --- a/ref-adboard/src/utils.rs +++ b/ref-adboard/src/utils.rs @@ -8,17 +8,16 @@ construct_uint! { pub struct U256(4); } -pub const FEE_DIVISOR: u32 = 10_000; pub type FrameId = u16; -pub const ONE_NEAR: u128 = 1_000_000_000_000_000_000_000_000; +pub const FEE_DIVISOR: u32 = 10_000; pub const XCC_GAS: Gas = 30_000_000_000_000; pub const NO_DEPOSIT: u128 = 0; -pub const CONTRACT_SELF: &str = "ref-adboard.near"; -pub const AMM_CONTRACT: &str = "ref-playground.near"; -pub const WRAPPED_NEAR_CONTRACT: &str = "wrap.near"; -pub const PROTECTED_TIMER: u64 = 60 * 60 * 1000 * 1000 * 1000; //15 minutes + pub const DEFAULT_DATA: &str = "WzIzNCzfBN8E1AQ23wTfBMkE31DfBN9Q3wTfBN9Q3wTfUN8o3wTfUN8E31DfUN8E31DfBN8E31DfBN9Q3wTfBN9Q3wTfUN8o3wTfUN8E31DfUN8E31DfBN8E31DfBN9Q3wTfBN9Q3wTfUN8E3wTPBF0"; +pub(crate) fn to_nanoseconds(seconds: u16) -> u64 { + seconds as u64 * 1000 * 1000 * 1000 +} impl Contract { diff --git a/ref-adboard/src/view.rs b/ref-adboard/src/view.rs index 180e404..f3033c0 100644 --- a/ref-adboard/src/view.rs +++ b/ref-adboard/src/view.rs @@ -2,6 +2,36 @@ use near_sdk::serde::{Deserialize, Serialize}; use near_sdk::json_types::{U64, U128}; use crate::*; + +#[derive(Serialize, Deserialize)] +#[serde(crate = "near_sdk::serde")] +pub struct ContractMetadata { + pub version: String, + pub owner_id: AccountId, + pub amm_id: AccountId, + pub default_token_id: AccountId, + pub default_sell_balance: U128, + pub protected_period: u16, + pub frame_count: u16, + pub trading_fee: u16, +} + +impl From<&Contract> for ContractMetadata { + fn from(contract: &Contract) -> Self { + Self { + version: "0.1.0".to_string(), + owner_id: contract.data().owner_id.clone(), + amm_id: contract.data().amm_id.clone(), + default_token_id: contract.data().default_token_id.clone(), + default_sell_balance: contract.data().default_sell_balance.into(), + protected_period: contract.data().protected_period, + frame_count: contract.data().frame_count, + trading_fee: contract.data().trading_fee, + } + } +} + + #[derive(Debug, Serialize, Deserialize, PartialEq, Clone)] #[serde(crate = "near_sdk::serde")] pub struct HumanReadablePaymentItem { @@ -42,6 +72,11 @@ impl From<&FrameMetadata> for HumanReadableFrameMetadata { #[near_bindgen] impl Contract { + + pub fn get_metadata(&self) -> ContractMetadata { + self.into() + } + pub fn get_whitelist(&self) -> Vec { self.data().whitelist.to_vec() } @@ -50,7 +85,14 @@ impl Contract { if index >= self.data().frame_count { None } else { - let metadata = self.data().frames.get(&index).unwrap_or_default(); + let metadata = self.data().frames.get(&index).unwrap_or( + FrameMetadata { + token_price: self.data().default_sell_balance, + token_id: self.data().default_token_id.clone(), + owner: self.data().owner_id.clone(), + protected_ts: 0, + } + ); Some((&metadata).into()) } } @@ -59,7 +101,14 @@ impl Contract { (from_index..std::cmp::min(from_index + limit, self.data().frame_count as u64)) .map( |index| { - let metadata = self.data().frames.get(&(index as u16)).unwrap_or_default(); + let metadata = self.data().frames.get(&(index as u16)).unwrap_or( + FrameMetadata { + token_price: self.data().default_sell_balance, + token_id: self.data().default_token_id.clone(), + owner: self.data().owner_id.clone(), + protected_ts: 0, + } + ); (&metadata).into() } ).collect() diff --git a/res/ref_adboard_release.wasm b/res/ref_adboard_release.wasm index d630c7b16184bb1ee1406068fc769e805b0d0139..a561a38ea3ce921aeadc1bae6fe06f968a283284 100755 GIT binary patch delta 83367 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 ME)?fHpm);$5B&{yq5uE@ delta 68303 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%0Dm!PLJ@l-QTjh($Oe)m^Xa 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 O)+GOO=e;CT=Hw&gNPP;|t1TqT#H zrwrvZ9290*PhCnr9Z~c=&a&$er5A@|kqU}SxVP944nLo_r$WNMGFt!^_(R751&e&z z{YB3mUK1l60eCokG%&O^Wcpz$Xu!f1* z^SBj=O7+@hbiglCO7LN=?2NK6R|}gR4FRZ88!}-Ky@iNb$!Qd`6}Y5>Q_ZbGqf|?o zqV6Un|96^26~UV*{Y5?6T!2+nm1~sre}&-*vj6}9 delta 657 zcmX9*TS${(7~b>kPcb!TG!JWknFmtZ?1YkGWtl`!s1bxh9vYfd&JlXiRhu_D%uGM= zr>+#k=wdqfT%S`(4MNNWQ!Et41Ep4^6OFW~^_5r8`#uLAc;7BpP?synIqF09sMwg# zI|&7>(SHb+I?PwFgRm_(I(wIhbc*p)0@)wa9JM9exXQOs|Urrm0@nPXqN?nEWq=$XWQz zEb=*tm~s zj9PlpaGf4CXsN?sVll>J=QUatNr_O!lCZQuRfI~jL5s{~Y{DGA7hbkzO@)9{25hiJ*LN+eaLa^xh8)cNA%oDq;ZB;f&j9WE=%7}&FS|D(d>!Ks zmN;c0)IPbxjtPgh(}yJ%I)_yh=|3G6e)Dii3G=4XKFYJ&7n+ zW1e3)jc*WWOh$}WIah=id?OQU0chYUMQ9~TZ#tSWqh#L366zGeweb2}I0^AQ<9$ZN zgO{3+q~=R^@Wc;~l!vA0hL;Zz)jXy!kvaNh^@N?skF z3!Bgl%5jRMok%pVp_ob#!Quh@~ From a995412c3ab220b0eb683944f511b8bec4ad570f Mon Sep 17 00:00:00 2001 From: marco_mac Date: Sat, 29 May 2021 16:32:34 +0800 Subject: [PATCH 5/6] ready to do simulator test --- ref-adboard/readme.md | 21 +++++++++++++++++++++ ref-adboard/src/lib.rs | 12 +----------- 2 files changed, 22 insertions(+), 11 deletions(-) diff --git a/ref-adboard/readme.md b/ref-adboard/readme.md index b76d2da..afb08ad 100644 --- a/ref-adboard/readme.md +++ b/ref-adboard/readme.md @@ -4,6 +4,27 @@ This is a RUST version of adboard AssemblyScript contract by Daniel. +### Init +When initialize the adboard, we should set following params: + +* owner_id: the owner of this contract, has the right to call owner methods, +* amm_id: the ref main contract, play a role of contract of all whitelisted tokens, +* default_token_id and defalut_sell_balance: the initial status of frames, usually wnear's contract, which is wrap.near on mainnet and wrap.testnet on testnet. And the sell_balance is usually set to 1 wnear, which is 10**24. +* protected_period: the seconds that a frame can not be traded after previous trading. +* frame_count: the total frame counts in this contract. +* trading_fee: in bps, which means a 10,000 denominator. + +```rust +pub fn new( + owner_id: ValidAccountId, + amm_id: ValidAccountId, + default_token_id: ValidAccountId, + default_sell_balance: U128, + protected_period: u16, + frame_count: u16, + trading_fee: u16 + ) -> Self; +``` ### Interface Structure diff --git a/ref-adboard/src/lib.rs b/ref-adboard/src/lib.rs index 18b70dc..931ed45 100644 --- a/ref-adboard/src/lib.rs +++ b/ref-adboard/src/lib.rs @@ -91,7 +91,7 @@ impl Contract { default_sell_balance: U128, protected_period: u16, frame_count: u16, - trading_fee: u16 + trading_fee: u16, ) -> Self { assert!(!env::state_exists(), "Already initialized"); Self { @@ -196,16 +196,6 @@ mod tests { let frame_data = contract.get_frame_data(frame_id).expect("NO_DATA"); assert_eq!(frame_data, "TEST_STRINGS".to_string(), "ERR_DATA"); - // let farm_id = create_farm(&mut context, &mut contract, - // accounts(1), accounts(2), 5000, 60); - // assert_eq!(farm_id, String::from("bob#0")); - // let farm_info = contract.get_farm(farm_id.clone()).expect("Error"); - // assert_eq!(farm_info.farm_kind, String::from("SIMPLE_FARM")); - // assert_eq!(farm_info.farm_status, String::from("Created")); - // assert_eq!(farm_info.seed_id, String::from("bob")); - // assert_eq!(farm_info.reward_token, String::from("charlie")); - // assert_eq!(farm_info.reward_per_session, U128(5000)); - // assert_eq!(farm_info.session_interval, U64(60)); } #[test] From 7d91f6e53112b2bcf63656bb0598315c054dcff5 Mon Sep 17 00:00:00 2001 From: marco_mac Date: Mon, 31 May 2021 11:19:44 +0800 Subject: [PATCH 6/6] pass simulation test --- ref-adboard/src/token_receiver.rs | 10 +- ref-adboard/tests/common/mod.rs | 194 ++++++++++++++++++++++++++++++ ref-adboard/tests/test_trading.rs | 166 +++++++++++++++++++++++++ res/ref_adboard_local.wasm | Bin 243382 -> 243823 bytes res/ref_adboard_release.wasm | Bin 252603 -> 253038 bytes 5 files changed, 369 insertions(+), 1 deletion(-) create mode 100644 ref-adboard/tests/common/mod.rs create mode 100644 ref-adboard/tests/test_trading.rs diff --git a/ref-adboard/src/token_receiver.rs b/ref-adboard/src/token_receiver.rs index c0fc9d6..3819524 100644 --- a/ref-adboard/src/token_receiver.rs +++ b/ref-adboard/src/token_receiver.rs @@ -87,7 +87,7 @@ impl MFTTokenReceiver for Contract { } ); let cur_ts = env::block_timestamp(); - if metadata.protected_ts > 0 && metadata.protected_ts < cur_ts { + if metadata.protected_ts > 0 && metadata.protected_ts > cur_ts { env::panic(b"Frame is currently protected") } assert_eq!(token_id, metadata.token_id, "Invalid token id"); @@ -110,6 +110,14 @@ impl MFTTokenReceiver for Contract { metadata.protected_ts = env::block_timestamp() + to_nanoseconds(self.data().protected_period); self.data_mut().frames.insert(¶ms.frame_id, &metadata); + env::log( + format!( + "Frame {} got new owner {} with sell balance {} on token {}.", + params.frame_id, sender_id.clone(), params.sell_balance, params.token_id.clone(), + ) + .as_bytes(), + ); + PromiseOrValue::Value(U128(0)) } diff --git a/ref-adboard/tests/common/mod.rs b/ref-adboard/tests/common/mod.rs new file mode 100644 index 0000000..c741d33 --- /dev/null +++ b/ref-adboard/tests/common/mod.rs @@ -0,0 +1,194 @@ +use std::convert::TryFrom; + +use near_sdk::serde::{Deserialize, Serialize}; +use near_sdk::json_types::{ValidAccountId, U128, U64}; +use near_sdk::{AccountId, Balance}; +use near_sdk_sim::{call, deploy, to_yocto, view, ContractAccount, UserAccount}; + +use ref_exchange::{ContractContract as TestRef}; +use test_token::ContractContract as TestToken; +use ref_adboard::{ContractContract as AdBoard}; + +near_sdk_sim::lazy_static_include::lazy_static_include_bytes! { + TEST_TOKEN_WASM_BYTES => "../res/test_token.wasm", + EXCHANGE_WASM_BYTES => "../res/ref_exchange_release.wasm", + ADBOARD_WASM_BYTES => "../res/ref_adboard_local.wasm", +} + +#[derive(Debug, Serialize, Deserialize, PartialEq, Clone)] +#[serde(crate = "near_sdk::serde")] +pub struct HumanReadableFrameMetadata { + pub token_price: U128, + pub token_id: AccountId, + pub owner: AccountId, + pub protected_ts: U64, +} + +#[derive(Debug, Serialize, Deserialize, PartialEq, Clone)] +#[serde(crate = "near_sdk::serde")] +pub struct HumanReadablePaymentItem { + pub amount: U128, + pub token_id: AccountId, + pub receiver_id: AccountId, +} + +pub(crate) fn chain_move_and_show(root: &UserAccount, move_blocks: u64) { + if move_blocks > 0 { + if root.borrow_runtime_mut().produce_blocks(move_blocks).is_ok() { + println!("Chain goes {} blocks", move_blocks); + } else { + println!("produce_blocks failed!"); + } + } + + println!("*** Chain Env *** now height: {}, ts: {}", + root.borrow_runtime().current_block().block_height, + root.borrow_runtime().current_block().block_timestamp, + ); + +} + +pub(crate) fn prepair_pool( + root: &UserAccount, + owner: &UserAccount, +) -> (ContractAccount, ContractAccount, ContractAccount) { + let pool = deploy_pool(&root, swap(), owner.account_id()); + let token1 = deploy_token(&root, dai(), vec![swap()]); + let token2 = deploy_token(&root, eth(), vec![swap()]); + call!( + owner, + pool.extend_whitelisted_tokens(vec![to_va(dai()), to_va(eth())]) + ); + call!( + root, + pool.add_simple_pool(vec![to_va(dai()), to_va(eth())], 25), + deposit = to_yocto("1") + ) + .assert_success(); + (pool, token1, token2) +} + +pub(crate) fn swap_deposit( + user: &UserAccount, + pool: &ContractAccount, + token1: &ContractAccount, + token2: &ContractAccount, +) { + mint_token(&token1, user, to_yocto("105")); + mint_token(&token2, user, to_yocto("105")); + call!( + user, + pool.storage_deposit(None, None), + deposit = to_yocto("1") + ) + .assert_success(); + call!( + user, + token1.ft_transfer_call(to_va(swap()), to_yocto("100").into(), None, "".to_string()), + deposit = 1 + ) + .assert_success(); + call!( + user, + token2.ft_transfer_call(to_va(swap()), to_yocto("100").into(), None, "".to_string()), + deposit = 1 + ) + .assert_success(); +} + +pub(crate) fn mint_token(token: &ContractAccount, user: &UserAccount, amount: Balance) { + call!( + user, + token.mint(to_va(user.account_id.clone()), amount.into()) + ).assert_success(); +} + +fn deploy_pool(root: &UserAccount, contract_id: AccountId, owner_id: AccountId) -> ContractAccount { + let pool = deploy!( + contract: TestRef, + contract_id: contract_id, + bytes: &EXCHANGE_WASM_BYTES, + signer_account: root, + init_method: new(to_va(owner_id), 4, 1) + ); + pool +} + +fn deploy_token( + root: &UserAccount, + token_id: AccountId, + accounts_to_register: Vec, +) -> ContractAccount { + let t = deploy!( + contract: TestToken, + contract_id: token_id, + bytes: &TEST_TOKEN_WASM_BYTES, + signer_account: root + ); + call!(root, t.new()).assert_success(); + call!( + root, + t.mint(to_va(root.account_id.clone()), to_yocto("1000").into()) + ) + .assert_success(); + for account_id in accounts_to_register { + call!( + root, + t.storage_deposit(Some(to_va(account_id)), None), + deposit = to_yocto("1") + ) + .assert_success(); + } + t +} + +pub(crate) fn deploy_adboard(root: &UserAccount, adboard_id: AccountId, owner_id: AccountId) -> ContractAccount { + let adboard = deploy!( + contract: AdBoard, + contract_id: adboard_id, + bytes: &ADBOARD_WASM_BYTES, + signer_account: root, + init_method: new( + to_va(owner_id), + to_va(swap()), + to_va(dai()), + to_yocto("1").into(), + 30, // 30 secs + 500, + 100 // 1% fee + ) + ); + adboard +} + +pub(crate) fn dai() -> AccountId { + "dai".to_string() +} + +pub(crate) fn eth() -> AccountId { + "eth".to_string() +} + +pub(crate) fn swap() -> AccountId { + "swap".to_string() +} + +pub(crate) fn adboard_id() -> AccountId { + "adboard".to_string() +} + +pub(crate) fn to_va(a: AccountId) -> ValidAccountId { + ValidAccountId::try_from(a).unwrap() +} + +pub(crate) fn get_frame_metadata(adboard: &ContractAccount, frame_id: u16) -> Option { + view!(adboard.get_frame_metadata(frame_id)).unwrap_json::>() +} + +pub(crate) fn get_user_token(swap: &ContractAccount, user_id: AccountId, token_id: AccountId) -> U128 { + view!(swap.get_deposit(to_va(user_id), to_va(token_id))).unwrap_json::() +} + +pub(crate) fn get_failed_payment(adboard: &ContractAccount) -> Vec { + view!(adboard.list_failed_payments(0, 100)).unwrap_json::>() +} \ No newline at end of file diff --git a/ref-adboard/tests/test_trading.rs b/ref-adboard/tests/test_trading.rs new file mode 100644 index 0000000..75d9d22 --- /dev/null +++ b/ref-adboard/tests/test_trading.rs @@ -0,0 +1,166 @@ +use near_sdk_sim::{call, init_simulator, to_yocto, view}; +use near_sdk::json_types::{U128}; +use near_sdk_sim::transaction::ExecutionStatus; +use crate::common::*; + +mod common; + + + +#[test] +fn test_trading() { + let root = init_simulator(None); + + // prepair users + let owner = root.create_user("owner".to_string(), to_yocto("100")); + let alice = root.create_user("alice".to_string(), to_yocto("100")); + let bob = root.create_user("bob".to_string(), to_yocto("100")); + println!("----->> owner lp and user accounts prepaired."); + + // prepair pool and tokens + let(pool, token1, token2) = prepair_pool(&root, &owner); + println!("----->> The pool prepaired."); + + // deposit dai and eth to swap + swap_deposit(&alice, &pool, &token1, &token2); + assert_eq!( + view!(pool.get_deposit(to_va(alice.account_id.clone()), to_va(dai()))) + .unwrap_json::() + .0, + to_yocto("100") + ); + assert_eq!( + view!(pool.get_deposit(to_va(alice.account_id.clone()), to_va(eth()))) + .unwrap_json::() + .0, + to_yocto("100") + ); + println!("----->> token deposited to swap by alice."); + swap_deposit(&bob, &pool, &token1, &token2); + assert_eq!( + view!(pool.get_deposit(to_va(bob.account_id.clone()), to_va(dai()))) + .unwrap_json::() + .0, + to_yocto("100") + ); + assert_eq!( + view!(pool.get_deposit(to_va(bob.account_id.clone()), to_va(eth()))) + .unwrap_json::() + .0, + to_yocto("100") + ); + println!("----->> token deposited to swap by bob."); + + // create adboard + let adboard = deploy_adboard(&root, adboard_id(), owner.account_id()); + println!("Deploying adboard ... OK."); + // register to swap + call!( + root, + pool.storage_deposit(Some(to_va(adboard_id())), None), + deposit = to_yocto("1") + ) + .assert_success(); + println!("Registering adboard to swap ... OK."); + println!("----->> Adboard is ready."); + + // add_token_to_whitelist + call!( + owner, + adboard.add_token_to_whitelist(to_va(dai())), + deposit = 0 + ).assert_success(); + call!( + owner, + adboard.add_token_to_whitelist(to_va(eth())), + deposit = 0 + ).assert_success(); + let token_whitelist = view!(adboard.get_whitelist()).unwrap_json::>(); + assert_eq!(token_whitelist.len(), 2); + println!("----->> Adboard token whitelisted."); + + //******************** + // start the real test + //******************** + + // Alice buy frame0 using dai and new sell price 1.5, + // but payment would fail and recorded into failed_payment, + // cause owner of frame dosn't register storage in pool + chain_move_and_show(&root, 0); + let out_come = call!( + alice, + pool.mft_transfer_call( + dai(), to_va(adboard_id()), to_yocto("1").into(), + None, "0||dai||1500000000000000000000000||0".to_string()), + deposit = 1 + ); + out_come.assert_success(); + let ret = get_user_token(&pool, owner.account_id(), dai()); + assert_eq!(ret.0, 0); + let ret = get_failed_payment(&adboard); + assert_eq!(ret.len(), 1); // cause owner haven't register storage in pool + let ret = get_frame_metadata(&adboard, 0); + println!("{:?}", ret.unwrap()); + println!("----->> Alice buy frame0 using dai and new sell price 1.5, but payment failed as expected."); + + // Bob buy frame0 using eth and new sell price 2, + // but the frame is in pretection, so would fail, + chain_move_and_show(&root, 0); // 101_000_000_000 + let out_come = call!( + bob, + pool.mft_transfer_call( + dai(), to_va(adboard_id()), to_yocto("1.5").into(), + None, "0||eth||2000000000000000000000000||0".to_string()), + deposit = 1 + ); + // println!("{:#?}", out_come.promise_results()); + assert_eq!(out_come.promise_errors().len(), 1); + if let ExecutionStatus::Failure(execution_error) = + &out_come.promise_errors().remove(0).unwrap().outcome().status { + // println!("{}", execution_error); + assert!(execution_error.to_string().contains("Frame is currently protected")); + } else { + unreachable!(); + } + println!("----->> Bob buy frame0 failed as expected."); + + // Bob buy frame0 using eth and new sell price 2 + let ret = get_user_token(&pool, alice.account_id(), dai()); + let alice_balance = ret.0; + let ret = get_frame_metadata(&adboard, 0); + println!("{:?}", ret.unwrap()); + chain_move_and_show(&root, 60); + let out_come = call!( + bob, + pool.mft_transfer_call( + dai(), to_va(adboard_id()), to_yocto("1.5").into(), + None, "0||eth||2000000000000000000000000||0".to_string()), + deposit = 1 + ); + out_come.assert_success(); + let ret = get_user_token(&pool, alice.account_id(), dai()); + assert_eq!(ret.0 - alice_balance, to_yocto("1.485")); + let ret = get_frame_metadata(&adboard, 0); + println!("{:?}", ret.unwrap()); + println!("----->> Bob buy frame0 succeeded."); + + // repay failed_payment + // register to swap + call!( + root, + pool.storage_deposit(Some(to_va(owner.account_id())), None), + deposit = to_yocto("1") + ) + .assert_success(); + let out_come = call!( + owner, + adboard.repay_failure_payment(), + deposit = 0 + ); + out_come.assert_success(); + let ret = get_user_token(&pool, owner.account_id(), dai()); + assert_eq!(ret.0, to_yocto("0.99")); + let ret = get_failed_payment(&adboard); + assert_eq!(ret.len(), 0); + println!("----->> Repay failed_payment succeeded."); +} \ No newline at end of file diff --git a/res/ref_adboard_local.wasm b/res/ref_adboard_local.wasm index e66cac67d1d2990f857dc127c24e0dc86e497593..077b7b86db52f718fe197b5d2e470c3a11823be8 100755 GIT binary patch delta 21366 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 F{{fS#nYjP} diff --git a/res/ref_adboard_release.wasm b/res/ref_adboard_release.wasm index d40a78a42960ce28105fa93f42855042d6eb618d..0c53e7ff617fc8a71da276c07eadd3c3f8937f7b 100755 GIT binary patch delta 21820 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 L`rppWA@ctL;X!!& delta 21753 zcmbV!3tUyj_WzkRAa6Mc3M%LUQBg$D6v_9td{>%gTIx+jN)aC^>h0bNGE7n{6mrqc z2bvifDhjqqG4Yj{_{cP|sI08KX-cI=>9zk_v(JXjk?!sPJAHv1f0) zQsTdRr+?wU8p#*DGK$tTn&*}s;1e8vSzH$GQrH3-HJ52ZOHVJe`J~yj@+144dC^dx zlfv_J648XurR;FO<}s^1vOH?w4X>}nVmK{cfP*4e+-UT(SmT)mtGt%NMz1U4GtcJ% zz0%>GqUnBKB7D8qYhIaN$2~swIOkF6amwR}$B!Q0dVJ^cy~hQQD;^o1dD+>G$2NW2 z>ze0v&l{ebyx#J9(<|T0d-ZX@jG{jpU-b}Mv#&PmFSZuN1urv*=$VZYA;q55jkL!-k)v-4NW(rw8xHd{|y zti#>mt+_4G&R;EB^3Y3x;*FxF)4U|)@5pw{2&VQEW@HMeE-c!g@@ONmEjw&pEP?mW z+Xy~eUrbN8weShBY3bRw=C8FIw7-wT<`7z(eQVL?1uL46LA_rbLw{GkxKWjxXOCRk zi&QLM`YCteiIp)ejfxH#1-^d5VbeU59a6I=D;?Wb&Xpt2Tfb9DI@nc}?8MbOsYdfPZ2!zHnC-LmF4$R^-G6Hf*i~3G zVQXg}DBn@E{Jk^K?AQ+Sk>+hb^8)qKkGkXl?d*>16{kNhdT37@@VHpOe6Q^4OJR+e z_ftX9`n{cH)0^8Ew>#^Bs<$lr!v6MRU6JpB*PRWtgzSSSceO0t$-9wyHk=MdKeZhyErr(+>iiIBCRU8!}3-9kHLeRgP=p(XpDjx*6Sb%{& z#4`A)0P}i?e5Qvbh)AOKISFC|8Hyh~FCwu=PmxIq%6d|ZSzA`2XuhhKs3z`Dy~MxB zrsciGNPyy<_(fka#+f(6;r&EhEsVNSF{!D@L%_e z`EYX^1`HI7yq6X7Xa(7CEW*xxMKBf*6a&RN{r7=l8ki<786q;dv4EjuKjr&+il%tq zP~lGm8>}xFDtd8;b_^4*lgSSZ7c+r^4sSmwR#2|57$xQj{lExuw=29M;IF%Tk3W>| z#NDZ4UsGp1*^8dzA@T6_@X?61V!jv-2Y2dU%ooQ!;qo?p>$4)5rW8B+C87<(lQYQh z%iGBCr}5Vev4CBTqAwOK7URiy&lf~F{B@(of?mB$B)fBS6IO^y3L|4&A6X^RYTLZJ z%4}1OEQ;5trDeI|Rd=xk!`F(@l+9mD=oa07od}~vM331dVu9$1`Qo;lAmv*`3P<;m ztzr=2Xx}a#qAY2o8 zfX(4Pz-BiY=M6?kgr^I`p6qZV2s%j52y2CEs?f+qHcuowTos=r%(GT0rtJ~IwbrB) z&s9fZ13J#L4wts#YV8WCXIEAOI?L+oY@%FIZB?qbe_yzJvCj{SKPX=Gm}BDOptQFG zq+1$1>z>vooqjg$Jj{sjh*V{VheqbxuP-JX`Wycl7;O_(B00j-{yVQ018I>pM0Hj{ z<#O_zo5S6{nwMaQhk?-U&_UWF+GWR5-j?pU-D{4r2tk@{-r_E03CqLMeBfN;%h(o^-tSF-^Y9 zf*!KmSj3rUV>Y`^+EDKkc#984HnMT5c_4+vGEd1H)q4|!f8 z9ps!IQjJU*P}DeUC~uQae~SjyU2&JVA&f4wn@D42Bh|4&Ja$2Z_GY00S;whC_6m

lNJ*~mE&)WZ&BS%l9s5xx$$hpom( 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

)b;b%Ca)v;?NmQ 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 From 9e71687d25c01097bb1eab62c71f680333bc1b44 Mon Sep 17 00:00:00 2001 From: marco_mac Date: Sat, 29 May 2021 16:06:48 +0800 Subject: [PATCH 4/6] ready to do simulator test --- ref-adboard/readme.md | 33 +++++++++++++++++++++++++++++++++ ref-adboard/src/lib.rs | 8 ++++---- ref-adboard/src/owner.rs | 2 +- res/ref_adboard_local.wasm | Bin 223938 -> 243382 bytes res/ref_adboard_release.wasm | Bin 252603 -> 252603 bytes 5 files changed, 38 insertions(+), 5 deletions(-) diff --git a/ref-adboard/readme.md b/ref-adboard/readme.md index 7eeb184..b76d2da 100644 --- a/ref-adboard/readme.md +++ b/ref-adboard/readme.md @@ -8,6 +8,18 @@ This is a RUST version of adboard AssemblyScript contract by Daniel. ### Interface Structure ```rust +/// metadata of the contract +pub struct ContractMetadata { + pub version: String, + pub owner_id: AccountId, + pub amm_id: AccountId, + pub default_token_id: AccountId, + pub default_sell_balance: U128, + pub protected_period: u16, + pub frame_count: u16, + pub trading_fee: u16, +} + /// metadata of one frame pub struct HumanReadableFrameMetadata { pub token_price: U128, @@ -29,6 +41,8 @@ pub struct HumanReadablePaymentItem { ***view functions*** ```rust +pub fn get_metadata(&self) -> ContractMetadata; + /// tokens that permitted in this contract pub fn get_whitelist(&self) -> Vec; @@ -70,6 +84,10 @@ pub fn edit_frame(&mut self, frame_id: FrameId, frame_data: String); ``` ***owner functions*** +The owner of this contract is suggested to be some DAO. It can adjust parameters, such as trading fee, protected period, token whitelist, and etc. +A regular operation for the owner is to repay failure payments. Those payments are generated through frame trading process. It's the last step of the process that the contract would pay prev-sell_balance in prev-frame_token of the trading frame to the prev-owner. But in some rare conditions, this payment would fail. Then it will be recorded in a special vector called failed_payments. +The ```repay_failure_payment``` interface gives owner the right to handle those payments. + ```rust /// transfer ownership pub fn set_owner(&mut self, owner_id: ValidAccountId); @@ -82,4 +100,19 @@ pub fn remove_token_from_whitelist(&mut self, token_id: ValidAccountId) -> bool; /// handle one failed payment at one call. pub fn repay_failure_payment(&mut self); + +/// owner can change amm account id. +pub fn set_amm(&mut self, amm_id: ValidAccountId); + +/// owner can change protected period from being sold after a frame complete trading. +pub fn set_protected_period(&mut self, protected_period: u16); + +/// owner can adjust trading fee, the unit is bps, that means a 10,000 denominator. +pub fn set_trading_fee(&mut self, trading_fee: u16); + +/// owner can expand total frames, the new generate frame would have default values. +pub fn expand_frames(&mut self, expend_count: u16); + +/// owner can change the default values a frame initially use. +pub fn set_default_token(&mut self, token_id: ValidAccountId, sell_balance: U128); ``` \ No newline at end of file diff --git a/ref-adboard/src/lib.rs b/ref-adboard/src/lib.rs index edef764..18b70dc 100644 --- a/ref-adboard/src/lib.rs +++ b/ref-adboard/src/lib.rs @@ -150,8 +150,8 @@ impl Contract { mod tests { use near_sdk::test_utils::{accounts, VMContextBuilder}; - use near_sdk::{testing_env, Balance, MockedBlockchain, BlockHeight}; - use near_sdk::json_types::{ValidAccountId, U64, U128}; + use near_sdk::{testing_env, MockedBlockchain}; + use near_sdk::json_types::{U128}; use super::*; @@ -210,7 +210,7 @@ mod tests { #[test] fn test_owner_actions() { - let (mut context, mut contract) = setup_contract(); + let (_, mut contract) = setup_contract(); let metadata = contract.get_metadata(); assert_eq!(metadata.version, "0.1.0".to_string()); @@ -226,7 +226,7 @@ mod tests { assert_eq!(frame_metadata.unwrap().token_id, "charlie".to_string()); let frame_metadata = contract.get_frame_metadata(500); assert!(frame_metadata.is_none()); - contract.expend_frames(10); + contract.expand_frames(10); let frame_metadata = contract.get_frame_metadata(500); assert_eq!(frame_metadata.unwrap().token_id, "charlie".to_string()); let frame_metadata = contract.get_frame_metadata(510); diff --git a/ref-adboard/src/owner.rs b/ref-adboard/src/owner.rs index 98b3592..452e74f 100644 --- a/ref-adboard/src/owner.rs +++ b/ref-adboard/src/owner.rs @@ -29,7 +29,7 @@ impl Contract { self.data_mut().trading_fee = trading_fee; } - pub fn expend_frames(&mut self, expend_count: u16) { + pub fn expand_frames(&mut self, expend_count: u16) { self.assert_owner(); self.data_mut().frame_count += expend_count; } diff --git a/res/ref_adboard_local.wasm b/res/ref_adboard_local.wasm index 32e64ccc0bfe158a2e96f1c7d89419793c87b46e..e66cac67d1d2990f857dc127c24e0dc86e497593 100755 GIT binary patch delta 80379 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