text: #define BOOST_TEST_MODULE SolutionTest
  
  #include "solution.hpp"
  
  #define BOOST_TEST_DYN_LINK
  #include <boost/test/unit_test.hpp>
  
  BOOST_AUTO_TEST_SUITE(SolutionSuite)
  
  BOOST_AUTO_TEST_CASE(PlainTest1)
  {
      vector<int> nums{1,2,0};
      int result = Solution().firstMissingPositive(nums);
  
      int expected = 3;
      BOOST_CHECK_EQUAL(result, expected);
  }
  
  BOOST_AUTO_TEST_CASE(PlainTest2)
  {
      vector<int> nums{3,4,-1,1};
      int result = Solution().firstMissingPositive(nums);
  
      int expected = 2;
      BOOST_CHECK_EQUAL(result, expected);
  }
  
  BOOST_AUTO_TEST_CASE(PlainTest3)
  {
      vector<int> nums{7,8,9,11,12};
      int result = Solution().firstMissingPositive(nums);
  
      int expected = 1;
      BOOST_CHECK_EQUAL(result, expected);
  }
  
  BOOST_AUTO_TEST_CASE(PlainTest4)
  {
      vector<int> nums{-1,4,2,1,9,10};
      int result = Solution().firstMissingPositive(nums);
  
      int expected = 3;
      BOOST_CHECK_EQUAL(result, expected);
  }
  
  BOOST_AUTO_TEST_SUITE_END()