Advertisement
Guest User

Untitled

a guest
Sep 2nd, 2017
449
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.83 KB | None | 0 0
  1. import XCTest
  2.  
  3. class UserRepoTests: XCTestCase {
  4. var userRepo = UserRepo()
  5. var email = "user@gmail.com"
  6. var result = [User]()
  7.  
  8. override func setUp() {
  9. super.setUp()
  10.  
  11. createAdmin(name: "User Admin 1")
  12. createUser(name: "User")
  13. }
  14.  
  15. func testFindAdminsByMethodWhenHaveTwoAdminsAndOneCommunUserWithSameEmailAndPassTheEmailAsParameter() {
  16. let expectedCount = 2
  17. let expectedNameOne = "User Admin 1"
  18. let expectedNameTwo = "User Admin 2"
  19.  
  20. createAdmin(name: "User Admin 2")
  21.  
  22. result = userRepo.findAdminsBy(email: email)
  23.  
  24. XCTAssertEqual(expectedCount, result.count)
  25.  
  26. XCTAssertEqual(expectedNameOne, result[0].name)
  27. XCTAssertEqual(expectedNameTwo, result[1].name)
  28. }
  29.  
  30. func testFindAdminsByMethodWhenHaveOneAdmimAndOneCommunUserWithSameEmailAndPassTheEmailAsParameter() {
  31. let expectedCount = 1
  32. let expectedName = "User Admin 1"
  33.  
  34. result = userRepo.findAdminsBy(email: email)
  35.  
  36. XCTAssertEqual(expectedCount, result.count)
  37. XCTAssertEqual(expectedName, result[0].name)
  38. }
  39.  
  40. func testFindAdminsByMethodWhenHaveOneAdmimAndOneCommunUserWithSameEmailAndPassDifferentEmailAsParameter() {
  41. let expectedCount = 0
  42.  
  43. result = userRepo.findAdminsBy(email: "none@gmail.com")
  44.  
  45. XCTAssertEqual(expectedCount, result.count)
  46. }
  47.  
  48. // MARK: Functions to help to create User and Admin
  49.  
  50. func createUser(name: String, email: String = "user@gmail.com") {
  51. let user = User(email: email, name: name)
  52. userRepo.save(user)
  53. }
  54.  
  55. func createAdmin(name: String, email: String = "user@gmail.com") {
  56. let user = User(email: email, name: name, isAdmin: true)
  57. userRepo.save(user)
  58. }
  59.  
  60. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement