Advertisement
Guest User

Untitled

a guest
Nov 18th, 2019
104
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.17 KB | None | 0 0
  1. // EthereumMessageSigningTests.swift
  2. // Copyright © 2019 Rally Budget Inc. All rights reserved.
  3.  
  4. import App
  5. import RallyShared
  6. import Vapor
  7. import XCTest
  8.  
  9. class EthereumMessageSigningTests: XCTestCase {
  10. static let privateKey = "badba7368134dcd61c60f9b56979c09196d03f5891a20c1557b1afac0202a97c"
  11.  
  12. func testMessageSigningWithJson() {
  13. let jsonBody = ["test":"message"]
  14. let jsonData = try! RallyJSONEncoder().encode(jsonBody)
  15. let bodyJsonString = String(data: jsonData, encoding: .utf8)!
  16. let expectedJsonBodyString = "{\"test\":\"message\"}"
  17. XCTAssert(bodyJsonString == expectedJsonBodyString)
  18.  
  19. let expectedSignedMessage =
  20. "835e9235dcdc03ed8928df5ace375bc70ea6f41699cd861b8801c9c617b4f2b658ff8e2cda47ea84401cab8019e5bb9daf3c0af2e7d2ab96cba6966a75e017171b"
  21.  
  22. let signedMessage = try! RallySecp256k1Sign(message: bodyJsonString,
  23. stringPrivateKey: EthereumMessageSigningTests.privateKey)
  24. XCTAssert(signedMessage.count == 130)
  25. XCTAssert(signedMessage == expectedSignedMessage)
  26. }
  27.  
  28. func testBasicMessageSigning() {
  29. let message = "Sila"
  30. let expectedSignedMessage = "ea3706a8d2b4c627f847c0c6bfcd59f001021d790f06924ff395e9faecb510c53c09274b70cc1d29bde630d277096d570ee7983455344915d19085cc13288b421b"
  31.  
  32. let signedMessage = try! RallySecp256k1Sign(message: message,
  33. stringPrivateKey: EthereumMessageSigningTests.privateKey)
  34. XCTAssert(signedMessage.count == 130)
  35. XCTAssert(signedMessage == expectedSignedMessage)
  36. }
  37.  
  38. func testBasicMessageSigning2() {
  39. let message = "test"
  40. let expectedSignedMessage = "f9978f3af681d3de06b3bcf5acf2181b5ebf54e0110f1d9d773d691ca2b42bdc39bf478d9ea8287bd15369fa3fd25c09b8c3c02bdbafd19f2aad043e350a037c1b"
  41.  
  42. let signedMessage = try! RallySecp256k1Sign(message: message,
  43. stringPrivateKey: EthereumMessageSigningTests.privateKey)
  44. XCTAssert(signedMessage.count == 130)
  45. XCTAssert(signedMessage == expectedSignedMessage)
  46. }
  47. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement