ERC1155MockUpgradeable.sol 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. // SPDX-License-Identifier: MIT
  2. pragma solidity ^0.8.0;
  3. import "../token/ERC1155/ERC1155Upgradeable.sol";
  4. import "../proxy/utils/Initializable.sol";
  5. /**
  6. * @title ERC1155Mock
  7. * This mock just publicizes internal functions for testing purposes
  8. */
  9. contract ERC1155MockUpgradeable is Initializable, ERC1155Upgradeable {
  10. function __ERC1155Mock_init(string memory uri) internal onlyInitializing {
  11. __Context_init_unchained();
  12. __ERC165_init_unchained();
  13. __ERC1155_init_unchained(uri);
  14. __ERC1155Mock_init_unchained(uri);
  15. }
  16. function __ERC1155Mock_init_unchained(string memory) internal onlyInitializing {}
  17. function setURI(string memory newuri) public {
  18. _setURI(newuri);
  19. }
  20. function mint(
  21. address to,
  22. uint256 id,
  23. uint256 value,
  24. bytes memory data
  25. ) public {
  26. _mint(to, id, value, data);
  27. }
  28. function mintBatch(
  29. address to,
  30. uint256[] memory ids,
  31. uint256[] memory values,
  32. bytes memory data
  33. ) public {
  34. _mintBatch(to, ids, values, data);
  35. }
  36. function burn(
  37. address owner,
  38. uint256 id,
  39. uint256 value
  40. ) public {
  41. _burn(owner, id, value);
  42. }
  43. function burnBatch(
  44. address owner,
  45. uint256[] memory ids,
  46. uint256[] memory values
  47. ) public {
  48. _burnBatch(owner, ids, values);
  49. }
  50. uint256[50] private __gap;
  51. }