#include <iostream>
#include "../ZString.h"

int main(int argc, char **argv) {
   
   coreutils::ZString test("character1111:22222:33333");
   std::cout << "test pre-split: [" << test << "]." << std::endl;

   test.split(":");
   
   std::cout << "test post-split: [" << test << "]." << std::endl;
   std::cout << "test sections: [" << test.getList().size() << "]." << std::endl;
   std::cout << test.getLength() << std::endl;

   std::cout << test[0] << std::endl;
   std::cout << test[1] << std::endl;   
   std::cout << test[2] << std::endl;   

   coreutils::ZString test2("character1111:::::22222:::::33333");

   test2.split(":::::");
   
   std::cout << "test string: [" << test2 << "]" << std::endl;
   std::cout << "length: [" << test2.getLength() << "]" << std::endl;

   std::cout << "[" << test2[0] << "]" << std::endl;
   std::cout << "[" << test2[1] << "]" << std::endl;   
   std::cout << "[" << test2[2] << "]" << std::endl;   
   std::cout << "[" << test2[3] << "]" << std::endl;   

   coreutils::ZString boundary("----WebKitFormBoundary5hx9ixjfxtJ8nXNm");
   
   coreutils::ZString test3("------WebKitFormBoundary5hx9ixjfxtJ8nXNm\r\n"
                            "Content-Disposition: form-data; name=\"username\"\r\n"
                            "\r\n"     
                            "test\r\n"
                            "------WebKitFormBoundary5hx9ixjfxtJ8nXNm\r\n"
                            "Content-Disposition: form-data; name=\"password\"\r\n"
                             "\r\n"
                             "test\r\n"
                             "------WebKitFormBoundary5hx9ixjfxtJ8nXNm\r\n"
                             "Content-Disposition: form-data; name=\"verify\"\r\n"
                             "\r\n"     
                             "test\r\n"
                             "------WebKitFormBoundary5hx9ixjfxtJ8nXNm--\r\n");
   
   test3.split(boundary);
   
   std::cout << "[" << test3[0] << "]" << std::endl;
   std::cout << "[" << test3[1] << "]" << std::endl;   
   std::cout << "[" << test3[2] << "]" << std::endl;   
   std::cout << "[" << test3[3] << "]" << std::endl;   
        
   
}
