---
# System prepended metadata

title: sendTxのテストシナリオ
tags: [テスト設計]

---

# sendTxのテストシナリオ

###### tags: `テスト設計`

```javascript=
describe("sendTx", () => {
    
    describe("transferができる", () => {
        it("ERC20のtranferができる", () => {});
        it("持ってないERC20のtranferはできない", () => {});
        it("ERC721のtranferができる", () => {});
        it("持ってないERC721のtranferはできない", () => {});
        it("ERC1155のtranferができる", () => {});
        it("持ってないERC1155のtranferはできない", () => {});
    });

    

    describe("user state zkpができる", () => {
        
        it("onetime addressが使われてないことを証明する", () => {});
        it("onetime addressがprivateKeyから算出されている", () => {});
        it("onetime addressがprivateKeyから算出されていない場合failする", () => {});
        it("onetime addressが使われていたらfailする", () => {});
        it("onetime addressが使われてない証明を検証する", () => {});
        it("前回のstate diffを解決していることを証明する", () => {});
        it("前回のstate diffを解決していなければfailする", () => {});
        it("前回のstate diffを解決していることを証明を検証する", () => {});
        it("自分のstate valueをVerkle Treeで証明できる", () => {});
        it("自分のstate valueをVerkle Treeで証明できない場合はfailする", () => {});
    });

    
    describe("signedTxのzkpができる", () => {
        it("signatureがある", () => {});
        it("signatureがない場合failする", () => {});
        it("signatureのrecoveryするとユーザーのpublicKeyと一致する", () => {});
        it("署名が正しいことを検証する", () => {});
    });
});
```