<commit_before>#include "Utilities.h"
#include <matrix/MatrixHelper.h>
#include <matrix/Matrix.h>
#include <matrix/MatrixElf.h>
#include <main/ElfFactory.h>
#include <gtest/gtest.h>

#include <cstdlib>
#include <string>
#include <fstream>
#include <future>
#include <sys/wait.h>
#include <signal.h>

using namespace std;

TEST(MatrixIntegrationTest, TestItNowwwwww)
{
    const int TIMEOUT_SECONDS = 10;
    pid_t pid = fork();
    if(pid == 0) // child process
    {
        char* argv[] = {(const char*)"/usr/bin/mpirun", 
                        (const char*)"-n", "8",
                        (const char*)"--tag-output",
                        (const char*)"build/src/main/dwarf_mine", 
                        (const char*)"-m", "smp", 
                        (const char*)"-n", "1",
                        (const char*)"-w", "0",
                        (const char*)"-q",
                        (const char*)"-i", "small_input.bin",
                        (const char*)"-o", "small_output.bin",
                        (const char*)"--import_configuration", "test_config.cfg",
                        nullptr};
        execv(argv[0], argv);
        exit(-1);
    }

    auto future = async(std::launch::async, [pid]()->bool
    {<commit_msg>Got rid of warnings from execv() argv building<commit_after>#include "Utilities.h"
#include <matrix/MatrixHelper.h>
#include <matrix/Matrix.h>
#include <matrix/MatrixElf.h>
#include <main/ElfFactory.h>
#include <gtest/gtest.h>

#include <cstdlib>
#include <string>
#include <fstream>
#include <future>
#include <sys/wait.h>
#include <signal.h>

const int TIMEOUT_SECONDS = 10;

using namespace std;

TEST(MatrixIntegrationTest, TestSmallInputSMPScheduling)
{
    pid_t pid = fork();
    if(pid == 0) // child process
    {
        execl("/usr/bin/mpirun",
            "/usr/bin/mpirun", 
            "-n", "8",
            "--tag-output",
            "build/src/main/dwarf_mine", 
            "-m", "smp", 
            "-n", "1",
            "-w", "0",
            "-q",
            "-i", "small_input.bin",
            "-o", "small_output.bin",
            "--import_configuration", "test_config.cfg",
            nullptr
        );
        exit(-1);
    }

    auto future = async(std::launch::async, [pid]()->bool
    {
{'fraction_non_alphanumeric': 0.17003514938488576, 'fraction_numerical': 0.006590509666080844, 'mean_word_length': 1.941860465116279, 'pattern_counts': {'":': 0, '<': 25, '<?xml version=': 0, '>': 27, 'https://': 0, 'lorem ipsum': 0, 'www.': 1, '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': '2118389', 'n_tokens_mistral': 766, 'n_tokens_neox': 726, 'n_words': 151}