Этот материал находится в платной подписке. Оформи премиум подписку и смотри или слушай Introduction to Testing in Go (Golang), а также все другие курсы, прямо сейчас!
Премиум
  1. Урок 1. 00:05:34
    Introduction
  2. Урок 2. 00:01:02
    About me
  3. Урок 3. 00:01:15
    Asking for help
  4. Урок 4. 00:01:07
    Mistakes: we all make them.
  5. Урок 5. 00:00:30
    What we'll cover in this section
  6. Урок 6. 00:01:28
    Installing Go
  7. Урок 7. 00:01:30
    Installing an IDE
  8. Урок 8. 00:00:52
    Installing Docker
  9. Урок 9. 00:01:04
    What we'll cover in this section
  10. Урок 10. 00:06:21
    Creating a simple command line application
  11. Урок 11. 00:07:58
    Writing a test for the isPrime() function
  12. Урок 12. 00:07:21
    Improving our test with table tests
  13. Урок 13. 00:02:30
    Checking test coverage
  14. Урок 14. 00:02:49
    Completing our table tests
  15. Урок 15. 00:11:26
    Improving our program to allow for user entered information
  16. Урок 16. 00:07:10
    Writing a test for the prompt() function
  17. Урок 17. 00:02:30
    Writing a test for the intro() function
  18. Урок 18. 00:13:36
    Testing user input - writing a test for the checkNumbers() function
  19. Урок 19. 00:05:58
    Updating readUserInput to make it testable, and then testing it
  20. Урок 20. 00:00:45
    What we'll cover in this section
  21. Урок 21. 00:01:38
    Running a single test
  22. Урок 22. 00:02:00
    Running groups of tests (test suites)
  23. Урок 23. 00:00:43
    What we'll cover in this section
  24. Урок 24. 00:10:16
    Creating a simple web app
  25. Урок 25. 00:12:00
    Setting up a route and handler for the home page
  26. Урок 26. 00:11:29
    Testing our application routes
  27. Урок 27. 00:10:01
    Testing Handlers: the Home handler
  28. Урок 28. 00:12:23
    Setting up some simple middleware
  29. Урок 29. 00:02:46
    Trying out our new addIPToContext middleware
  30. Урок 30. 00:12:12
    Testing our middleware
  31. Урок 31. 00:04:30
    Testing ipFromContext
  32. Урок 32. 00:02:57
    Creating a login form
  33. Урок 33. 00:04:44
    Setting up a route and stub handler for the login form
  34. Урок 34. 00:00:35
    What we'll cover in this section
  35. Урок 35. 00:09:33
    Setting up validation logic
  36. Урок 36. 00:08:25
    Testing validation logic
  37. Урок 37. 00:05:19
    Completing the tests for our validation logic
  38. Урок 38. 00:03:27
    Trying out validation with our login form
  39. Урок 39. 00:00:56
    What we'll cover in this section
  40. Урок 40. 00:04:29
    Setting up a test enviroment with testing.M
  41. Урок 41. 00:04:26
    Simplifying our templates using a layout
  42. Урок 42. 00:02:02
    Installing a sessions package
  43. Урок 43. 00:04:11
    Adding session to App config, and creating a SessionManager
  44. Урок 44. 00:07:39
    Trying out our sessions
  45. Урок 45. 00:11:48
    Updating our tests
  46. Урок 46. 00:06:19
    Improving our test for the Home handler
  47. Урок 47. 00:07:37
    Testing the render function with a bad template
  48. Урок 48. 00:01:14
    What we'll cover in this section
  49. Урок 49. 00:06:06
    Installing postgres with Docker
  50. Урок 50. 00:10:27
    Setting up a database connection
  51. Урок 51. 00:04:03
    Adding the data package for models and db package for database access
  52. Урок 52. 00:03:35
    Making sure our web app can connect to our database
  53. Урок 53. 00:01:58
    Closing our database pool gracefully, and resetting template path in tests
  54. Урок 54. 00:08:29
    Creating a stub profile page
  55. Урок 55. 00:06:54
    Adding messages to our template data and template files
  56. Урок 56. 00:05:33
    Adding true authenication to the Login handler
  57. Урок 57. 00:19:18
    Testing the Login handler
  58. Урок 58. 00:04:25
    Adding Auth middleware
  59. Урок 59. 00:06:54
    Testing Auth middleware
  60. Урок 60. 00:09:29
    Updating routes & end-to-end tests
  61. Урок 61. 00:01:57
    Problems with our Login handler test
  62. Урок 62. 00:02:13
    What we'll cover in this section
  63. Урок 63. 00:03:28
    Defining an interface type for our repository
  64. Урок 64. 00:05:02
    Moving our database functions into a repository
  65. Урок 65. 00:02:21
    Updating application config to use the database repository
  66. Урок 66. 00:05:50
    Creating a testdb repository
  67. Урок 67. 00:01:59
    Updating setup_test.go to use the test repository
  68. Урок 68. 00:04:33
    Updating our tests to use the testdb repository
  69. Урок 69. 00:01:23
    What we'll cover in this section
  70. Урок 70. 00:08:06
    Getting started with testing our database
  71. Урок 71. 00:11:04
    Getting our tests to spin up a docker image with Postgres
  72. Урок 72. 00:08:55
    Populating our test database with empty tables
  73. Урок 73. 00:06:22
    Testing InsertUser
  74. Урок 74. 00:04:10
    Testing AllUsers
  75. Урок 75. 00:05:12
    Testing GetUser and GetUserByEmail
  76. Урок 76. 00:04:22
    Testing UpdateUser
  77. Урок 77. 00:02:34
    Testing DeleteUser
  78. Урок 78. 00:04:14
    Testing ResetUserPassword
  79. Урок 79. 00:06:36
    Testing InsertUserImage
  80. Урок 80. 00:02:56
    Using build tags to separate our integration tests
  81. Урок 81. 00:00:57
    What we'll cover in this section
  82. Урок 82. 00:05:44
    Adding a form to the Profile page
  83. Урок 83. 00:05:42
    Adding the UserImage type to the User type
  84. Урок 84. 00:06:53
    Updating the profile.page.gohtml file to look for a profile image
  85. Урок 85. 00:14:29
    Writing a stub handler and a function to process profile image uploads
  86. Урок 86. 00:04:51
    Implementing the UploadProfilePic handler
  87. Урок 87. 00:04:29
    Trying things out
  88. Урок 88. 00:15:22
    Testing image uploads
  89. Урок 89. 00:09:52
    Testing our upload handler, with an alternative approach
  90. Урок 90. 00:01:30
    What we'll cover in this section
  91. Урок 91. 00:09:55
    Setting up an api with our existing code base
  92. Урок 92. 00:05:49
    Adding stub handlers (endpoints) for our API
  93. Урок 93. 00:05:23
    Trying out our REST API to make sure things work
  94. Урок 94. 00:19:04
    Getting started with JWT Authentication
  95. Урок 95. 00:10:39
    Generating token pairs
  96. Урок 96. 00:04:50
    Implementing the authenticate handler
  97. Урок 97. 00:04:53
    Trying out the authentication handler
  98. Урок 98. 00:10:51
    Testing our authentication handler
  99. Урок 99. 00:02:39
    Setting up a simple program to generate tokens for testing
  100. Урок 100. 00:15:38
    Testing generating and validating tokens
  101. Урок 101. 00:06:40
    Setting up our application middleware
  102. Урок 102. 00:07:04
    Testing our CORS middleware
  103. Урок 103. 00:08:18
    Testing our authRequired middleware
  104. Урок 104. 00:02:16
    Add middleware to routes
  105. Урок 105. 00:03:56
    Testing API routes
  106. Урок 106. 00:09:41
    Implementing the handler to refresh tokens
  107. Урок 107. 00:13:13
    Testing refreshing tokens
  108. Урок 108. 00:07:22
    Completing the handlers that interact with the User type
  109. Урок 109. 00:11:56
    Testing the handlers that interact with the User type
  110. Урок 110. 00:08:55
    Finishing up testing handlers that interact with the data.User type
  111. Урок 111. 00:01:21
    What we'll cover in this section
  112. Урок 112. 00:05:18
    Serving HTML for our SPA
  113. Урок 113. 00:16:16
    Authenticating users with our SPA
  114. Урок 114. 00:08:40
    Setting a refresh token cookie when authenticating
  115. Урок 115. 00:06:24
    Allowing users to refresh tokens using a cookie
  116. Урок 116. 00:05:54
    Automatically refreshing tokens while the user is logged in
  117. Урок 117. 00:04:37
    Getting a user from our simple SPA with the "Get User" button
  118. Урок 118. 00:06:01
    Logging web users out
  119. Урок 119. 00:08:59
    Testing refreshing tokens for Single Page Apps
  120. Урок 120. 00:06:33
    Testing logging users out of our SPA