test.cpp 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. #include "socketio.hpp"
  2. #include <iostream>
  3. #include <thread>
  4. #include <chrono>
  5. template<typename T>
  6. std::ostream& operator<<(std::ostream& out, std::vector<T> o){
  7. out << "[";
  8. for(unsigned int i = 0;i < o.size();i++){
  9. if(o[i] == '\r')continue;
  10. out << o[i];
  11. if(i < o.size() - 1)
  12. out << ", ";
  13. }
  14. return out << "]";
  15. }
  16. template<>
  17. std::ostream& operator<< <char>(std::ostream& out, std::vector<char> o){
  18. for(unsigned int i = 0;i < o.size();i++){
  19. out << o[i];
  20. }
  21. return out;
  22. }
  23. int main(){
  24. cppsocket sock("192.168.178.79", 80);
  25. //cppsocket sock("127.0.0.1", 80);
  26. std::vector<char> toSend(1000);
  27. for(unsigned int i = 0;i < toSend.size();i++){
  28. toSend[i] = (char)(i * i);
  29. }
  30. std::cout << "Writing..." << std::endl;
  31. std::cout << errno << std::endl;
  32. try{
  33. for(int i = 0;i < 100;i++){
  34. sock.write(toSend);
  35. std::cout << sock.receive() << std::endl;
  36. std::this_thread::sleep_for(std::chrono::milliseconds(1000));
  37. }
  38. }
  39. catch(std::exception& e){
  40. std::cout << e.what() << std::endl;
  41. }
  42. std::cout << "Sent " << std::to_string(toSend.size()) << ", Receiving..." << std::endl;
  43. std::vector<char> vec = sock.receive();
  44. std::cout << (vec == toSend);
  45. std::cout << vec << std::endl;
  46. //vec = sock.receive();
  47. //std::cout << vec << std::endl;
  48. return 0;
  49. }