28091999 / dev-assessment

0 stars 0 forks source link

Feedback #1

Open hendroucc opened 1 year ago

hendroucc commented 1 year ago

Contracts

Mint Contract

create_asset:

asset_transfer:

asset_burn:

Holdings Contract

asset_optin:

sell_token:

Burn Contract

handle_creation:

asset_optin:

Deployment Scripts

Main deployment

Actions

Application Frontend

good

const holdingsApp = configHolding.default.metadata.holdingsAppID



### SendAssetForm.vue

- Do asset opt in transaction if the buyer hasn’t done so.
- Function is an atomic transfer consisting of payment and app call
- Display transaction ID if successful.
- Handle transaction errors if any and display warning alert

## Test Cases

### Success Flow

### Negative Tests

add these test cases as well:

- Double asset creation fails
- Asset creation fails when non-creator calls
- Asset transfer fails when supply is insufficient
- Asset burn fails when supply is insufficient
- Asset transfer fails when non-creator calls
- Asset burn fails when non-creator calls
- Selling token fails when supply < amount sold
- Selling tokens fails when transaction is not grouped
- Buying 0 token fails
- Buying tokens with insufficient algos
- Transfer token to non holding app fails
- Burn token to non burn app fails
hendroucc commented 1 year ago

Contracts

Holdings Contract

purchase:

Actions

SendAssetForm.vue

@28091999