git.delta.rocks / unique-network / refs/commits / 8057bddf39cb

difftreelog

source

tests/loadtester-src/lib.rs1.1 KiBsourcehistory
1#![cfg_attr(not(feature = "std"), no_std)]23use ink_lang as ink;45#[ink::contract]6mod loadtester {7    use ink_storage::collections::Vec as InkVec;89    #[ink(storage)]10    pub struct LoadTester {11        vector: InkVec<u64>,12    }1314    impl LoadTester {15        #[ink(constructor)]16        pub fn new() -> Self {17            Self {18                vector: InkVec::new(),19            }20        }2122        #[ink(message)]23        pub fn bloat(&mut self, count: u64){24            for i in 1..count+1 {25                self.vector.push(i);26            }27        }2829        #[ink(message)]30        pub fn get(&self) -> u128 {31            let mut sum: u128 = 0;32            for num in self.vector.iter() {33                sum += *num as u128;34            }35            sum36        }37    }3839    #[cfg(test)]40    mod tests {41       42        use super::*;4344        #[test]45        fn it_works() {46            let mut lt = LoadTester::new();47            lt.bloat(4);48            assert_eq!(lt.get(), [1,2,3,4]);49            lt.bloat(3);50            assert_eq!(lt.get(), [1,2,3,4,1,2,3]);51        }52    }53}