Skip to content

Commit

Permalink
test: parse short payload acp address
Browse files Browse the repository at this point in the history
  • Loading branch information
shaojunda committed Nov 24, 2020
1 parent 092a89f commit 9496fca
Showing 1 changed file with 60 additions and 0 deletions.
60 changes: 60 additions & 0 deletions spec/ckb/address_parser_spec.rb
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,36 @@
expect(parsed_address.address_type).to eq "SHORTMULTISIG"
end

it "parse short payload acp address without minimum limit" do
acp_lock = CKB::Types::Script.new(code_hash: CKB::SystemCodeHash::ANYONE_CAN_PAY_CODE_HASH_ON_AGGRON, hash_type: "type", args: "0x4fb2be2e5d0c1a3b8694f832350a33c1685d477a")
parsed_address = CKB::AddressParser.new("ckt1qypylv479ewscx3ms620sv34pgeuz6zagaaq3xzhsz").parse
expect(parsed_address.mode).to eq CKB::MODE::TESTNET
expect(parsed_address.script.args).to eq acp_lock.args
expect(parsed_address.script.code_hash).to eq acp_lock.code_hash
expect(parsed_address.script.hash_type).to eq acp_lock.hash_type
expect(parsed_address.address_type).to eq "SHORTANYONECANPAY"
end

it "parse short payload acp address with ckb minimum limit" do
acp_lock = CKB::Types::Script.new(code_hash: CKB::SystemCodeHash::ANYONE_CAN_PAY_CODE_HASH_ON_AGGRON, hash_type: "type", args: "0x4fb2be2e5d0c1a3b8694f832350a33c1685d477a0c")
parsed_address = CKB::AddressParser.new("ckt1qypylv479ewscx3ms620sv34pgeuz6zagaaqc9q8fqw").parse
expect(parsed_address.mode).to eq CKB::MODE::TESTNET
expect(parsed_address.script.args).to eq acp_lock.args
expect(parsed_address.script.code_hash).to eq acp_lock.code_hash
expect(parsed_address.script.hash_type).to eq acp_lock.hash_type
expect(parsed_address.address_type).to eq "SHORTANYONECANPAY"
end

it "parse short payload acp address with ckb and udt minimum limit" do
acp_lock = CKB::Types::Script.new(code_hash: CKB::SystemCodeHash::ANYONE_CAN_PAY_CODE_HASH_ON_AGGRON, hash_type: "type", args: "0x4fb2be2e5d0c1a3b8694f832350a33c1685d477a0c01")
parsed_address = CKB::AddressParser.new("ckt1qypylv479ewscx3ms620sv34pgeuz6zagaaqcqgr072sz").parse
expect(parsed_address.mode).to eq CKB::MODE::TESTNET
expect(parsed_address.script.args).to eq acp_lock.args
expect(parsed_address.script.code_hash).to eq acp_lock.code_hash
expect(parsed_address.script.hash_type).to eq acp_lock.hash_type
expect(parsed_address.address_type).to eq "SHORTANYONECANPAY"
end

it "parse full payload data address" do
parsed_address = CKB::AddressParser.new(full_payload_data_address).parse
expect(parsed_address.mode).to eq CKB::MODE::TESTNET
Expand Down Expand Up @@ -118,6 +148,36 @@
expect(parsed_address.address_type).to eq "SHORTMULTISIG"
end

it "parse short payload acp address without minimum limit" do
acp_lock = CKB::Types::Script.new(code_hash: CKB::SystemCodeHash::ANYONE_CAN_PAY_CODE_HASH_ON_LINA, hash_type: "type", args: "0x4fb2be2e5d0c1a3b8694f832350a33c1685d477a")
parsed_address = CKB::AddressParser.new("ckb1qypylv479ewscx3ms620sv34pgeuz6zagaaqvrugu7").parse
expect(parsed_address.mode).to eq CKB::MODE::MAINNET
expect(parsed_address.script.args).to eq acp_lock.args
expect(parsed_address.script.code_hash).to eq acp_lock.code_hash
expect(parsed_address.script.hash_type).to eq acp_lock.hash_type
expect(parsed_address.address_type).to eq "SHORTANYONECANPAY"
end

it "parse short payload acp address with ckb minimum limit" do
acp_lock = CKB::Types::Script.new(code_hash: CKB::SystemCodeHash::ANYONE_CAN_PAY_CODE_HASH_ON_LINA, hash_type: "type", args: "0x4fb2be2e5d0c1a3b8694f832350a33c1685d477a0c")
parsed_address = CKB::AddressParser.new("ckb1qypylv479ewscx3ms620sv34pgeuz6zagaaqcehzz9g").parse
expect(parsed_address.mode).to eq CKB::MODE::MAINNET
expect(parsed_address.script.args).to eq acp_lock.args
expect(parsed_address.script.code_hash).to eq acp_lock.code_hash
expect(parsed_address.script.hash_type).to eq acp_lock.hash_type
expect(parsed_address.address_type).to eq "SHORTANYONECANPAY"
end

it "parse short payload acp address with ckb and udt minimum limit" do
acp_lock = CKB::Types::Script.new(code_hash: CKB::SystemCodeHash::ANYONE_CAN_PAY_CODE_HASH_ON_LINA, hash_type: "type", args: "0x4fb2be2e5d0c1a3b8694f832350a33c1685d477a0c01")
parsed_address = CKB::AddressParser.new("ckb1qypylv479ewscx3ms620sv34pgeuz6zagaaqcqgzc5xlw").parse
expect(parsed_address.mode).to eq CKB::MODE::MAINNET
expect(parsed_address.script.args).to eq acp_lock.args
expect(parsed_address.script.code_hash).to eq acp_lock.code_hash
expect(parsed_address.script.hash_type).to eq acp_lock.hash_type
expect(parsed_address.address_type).to eq "SHORTANYONECANPAY"
end

it "parse full payload data address" do
parsed_address = CKB::AddressParser.new(full_payload_data_address).parse
expect(parsed_address.mode).to eq CKB::MODE::MAINNET
Expand Down

0 comments on commit 9496fca

Please sign in to comment.