<commit_before>#include <Python.h>

#include <string>

#include <ackward/core/Tuple.hpp>
#include <boost/test/unit_test.hpp>
#include <boost/tuple/tuple.hpp>

using namespace ackward::core;

namespace {

typedef boost::tuple<int, float, std::string> Tuple;

}

BOOST_AUTO_TEST_SUITE( Core_tuple )

BOOST_AUTO_TEST_CASE( basic )
{
    TupleConverter< ::Tuple >::initialize();
}

BOOST_AUTO_TEST_SUITE_END()<commit_msg>added more tuple converter tests<commit_after>#include <Python.h>

#include <string>

#include <ackward/core/Tuple.hpp>
#include <boost/python/extract.hpp>
#include <boost/python/object.hpp>
#include <boost/test/unit_test.hpp>
#include <boost/tuple/tuple.hpp>

using namespace ackward::core;
using namespace boost::python;

namespace {

typedef boost::tuple<int, float, std::string> Tuple;

}

BOOST_AUTO_TEST_SUITE( Core_tuple )

BOOST_AUTO_TEST_CASE( initialize )
{
    TupleConverter< ::Tuple >::initialize();
}

BOOST_AUTO_TEST_CASE( round_trip )
{
    TupleConverter< ::Tuple >::initialize();

    Tuple t(42, 6.9, "hola bili!");
    object obj(t);
    tuple pytup = extract<tuple>(obj);
    BOOST_CHECK(extract<int>(pytup[0])() == 42);
    BOOST_CHECK(extract<float>(pytup[1])() == float(6.9));
    BOOST_CHECK(extract<std::string>(pytup[2])() == "hola bili!");

    // Tuple t2 = extract<Tuple>(obj);
    // BOOST_CHECK(boost::get<0>(t2) == 42);
    // BOOST_CHECK(boost::get<1>(t2) == 6.9);
    // BOOST_CHECK(boost::get<2>(t2) == "hola bili!");
}

BOOST_AUTO_TEST_SUITE_END()
{'fraction_non_alphanumeric': 0.17455029980013326, 'fraction_numerical': 0.014656895403064623, 'mean_word_length': 5.446351931330472, 'pattern_counts': {'":': 0, '<': 28, '<?xml version=': 0, '>': 28, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '7356394', 'n_tokens_mistral': 587, 'n_tokens_neox': 556, 'n_words': 96}