delay.es.tst 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. /*
  2. Test various protocol delays
  3. */
  4. const HTTP: Uri = tget('TM_HTTP') || "127.0.0.1:8080"
  5. const DELAY = 500
  6. let s = new Socket
  7. let count = 0
  8. let response = new ByteArray
  9. // Connect and delay
  10. s.connect(HTTP.address)
  11. App.sleep(DELAY)
  12. // Continue with delay part way through the first line
  13. count += s.write("GET")
  14. ttrue(count == 3)
  15. App.sleep(DELAY)
  16. count += s.write(" /index.html HTTP/1.0\r\n\r\n")
  17. ttrue(count > 10)
  18. for (count = 0; (n = s.read(response, -1)) != null; count += n) { }
  19. ttrue(response.toString().contains('200 OK'))
  20. ttrue(response.toString().contains('Hello /index'))
  21. s.close()
  22. // Delay before headers
  23. response.reset()
  24. s = new Socket
  25. s.connect(HTTP.address)
  26. count = s.write("GET")
  27. ttrue(count == 3)
  28. App.sleep(DELAY)
  29. count += s.write(" /index.html HTTP/1.0\r\n\r\n")
  30. ttrue(count > 10)
  31. for (count = 0; (n = s.read(response, -1)) != null; count += n) { }
  32. ttrue(response.toString().contains('200 OK'))
  33. ttrue(response.toString().contains('Hello /index'))
  34. s.close()
  35. // Delay after one <CR>
  36. response.reset()
  37. s = new Socket
  38. s.connect(HTTP.address)
  39. count = s.write("GET")
  40. ttrue(count == 3)
  41. count += s.write(" /index.html HTTP/1.0\r\n")
  42. App.sleep(DELAY)
  43. count += s.write("\r\n")
  44. ttrue(count > 10)
  45. for (count = 0; (n = s.read(response, -1)) != null; count += n) { }
  46. ttrue(response.toString().contains('200 OK'))
  47. ttrue(response.toString().contains('Hello /index'))
  48. s.close()