--- title: Walk Through of [Marigold Training 3](https://github.com/marigold-dev/training-dapp-3) author: Michael Kernaghan --- # Walk Through of [Marigold Training 3](https://github.com/marigold-dev/training-dapp-3) # Training dapp n°3 - āļø Upgradable Poke game ## š« Tickets ### Step 1 : š± Mint ā taq compile pokeGame.jsligo ### Step 2 : Test authorization poking ā taq test unit_pokeGame.jsligo ``` āāāāāāāāāāāāāāāāāāāāāāāā¬āāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāā ā Contract ā Test Results ā āāāāāāāāāāāāāāāāāāāāāāāā¼āāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāā⤠ā unit_pokeGame.jsligo ā "Sender 1 has balance : " ā ā ā 3800000000000mutez ā ā ā "*** Run test to pass ***" ā ā ā "contract deployed with values : " ā ā ā KT1STayFpKfdDzBMi63HYDDSLLQfPfXcUp2g(None) ā ā ā Success (2689n) ā ā ā "*** Check initial ticket is here ***" ā ā ā {feedback = "kiss" ; pokeTraces = [] ; ticketOwnership = [tz1TDZG4vFoA2xutZMYauUnS4HVucnAGQSpZ -> (KT1STayFpKfdDzBMi63HYDDSLLQfPfXcUp2g , ("can_poke" , 1n))]} ā ā ā Success (1850n) ā ā ā "*** Run test to fail ***" ā ā ā "contract deployed with values : " ā ā ā KT1RkwqnXwhzxVG4iGGB5R56CrVEHjXydifC(None) ā ā ā Success (2234n) ā ā ā "*** Check initial ticket is here ***" ā ā ā {feedback = "kiss" ; pokeTraces = [] ; ticketOwnership = []} ā ā ā Fail (Rejected (("User does not have tickets => not allowed" , KT1RkwqnXwhzxVG4iGGB5R56CrVEHjXydifC))) ā ā ā Everything at the top-level was executed. ā ā ā - testSender1Poke exited with value (). ā ā ā - testSender1PokeWithNoTicketsToFail exited with value (). ā ā ā ā ā ā š All tests passed š ā āāāāāāāāāāāāāāāāāāāāāāāā“āāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāā ``` ### Step 3 : Redeploy the smart contract ā taq compile pokeGame.jsligo taq catches a warning here: ``` File "contracts/pokeGame.jsligo", line 40, characters 47-52: 39 | 40 | export const getFeedback = ([contract_callback,store] : [contract<returned_feedback>,storage]): return_ => { 41 | let op : operation = Tezos.transaction( : Warning: variable "store" cannot be used more than once. āāāāāāāāāāāāāāāāāāāāāāāāāāāāāā¬āāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāā ā Contract ā Artifact ā āāāāāāāāāāāāāāāāāāāāāāāāāāāāāā¼āāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāā⤠ā pokeGame.jsligo ā artifacts/pokeGame.tz ā āāāāāāāāāāāāāāāāāāāāāāāāāāāāāā¼āāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāā⤠ā pokeGame.storages.jsligo ā artifacts/pokeGame.default_storage.tz ā āāāāāāāāāāāāāāāāāāāāāāāāāāāāāā¼āāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāā⤠ā pokeGame.parameters.jsligo ā artifacts/pokeGame.parameter.default_parameter.tz ā āāāāāāāāāāāāāāāāāāāāāāāāāāāāāā“āāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāā ``` ā taq generate types ./app/src ā taq deploy pokeGame.tz -e testing ``` āāāāāāāāāāāāāāā¬āāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāā¬āāāāāāāāāāā¬āāāāāāāāāāāāāā ā Contract ā Address ā Alias ā Destination ā āāāāāāāāāāāāāāā¼āāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāā¼āāāāāāāāāāā¼āāāāāāāāāāāāā⤠ā pokeGame.tz ā KT1JCuWHnB9N5wH1EKc6phk4g65rYT3vYbbe ā pokeGame ā ghostnet ā āāāāāāāāāāāāāāā“āāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāā“āāāāāāāāāāā“āāāāāāāāāāāāāā ``` ### Step 4 : Adapt the frontend code  # End [Next](https://hackmd.io/YkWeAPYaQD6FX8_KFZYLFQ)
×
Sign in
Email
Password
Forgot password
or
By clicking below, you agree to our
terms of service
.
Sign in via Facebook
Sign in via Twitter
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
New to HackMD?
Sign up