Skip to content
Snippets Groups Projects
IndexerTests.cpp 2.14 KiB
Newer Older
  • Learn to ignore specific revisions
  • //
    // Created by nick on 2/6/18.
    //
    
    #include <iostream>
    
    Nicholas Yang's avatar
    Nicholas Yang committed
    #include <fstream>
    #include <string>
    #include <algorithm>
    
    #include "Indexer.h"
    
    using namespace std;
    
    
    vcday's avatar
    vcday committed
    int main ( )
    	{
    	Indexer indexer = Indexer( );
    	unordered_map< string, vector< int>> test1;
    	unordered_map< string, vector< int>> test2;
    	unordered_map< string, vector< int>> test3;
    	unordered_map< string, vector< int>> test4;
    	ifstream ifstream1( "tests/test1.txt" );
    	ifstream ifstream2( "tests/test2.txt" );
    	ifstream ifstream3( "tests/test3.txt" );
    	ifstream ifstream4( "tests/test4.txt" );
    	string word = "";
    	int id = 0;
    	while ( ifstream1 >> word )
    		{
    		std::transform( word.begin( ), word.end( ), word.begin( ), ::tolower );
    		word.erase( remove_if( word.begin( ), word.end( ), [] ( char c )
    			{ return !isalpha( c ); } ), word.end( ) );
    		if ( word != "" )
    			{
    			test1[ word ].push_back( id );
    			id++;
    			}
    		}
    	test1[ "=tests/test1.txt" ].push_back( 0 );
    	id = 0;
    	while ( ifstream2 >> word )
    		{
    		std::transform( word.begin( ), word.end( ), word.begin( ), ::tolower );
    		word.erase( remove_if( word.begin( ), word.end( ), [] ( char c )
    			{ return !isalpha( c ); } ), word.end( ) );
    		if ( word != "" )
    			{
    			test2[ word ].push_back( id );
    			id++;
    			}
    		}
    	test2[ "=tests/test2.txt" ].push_back( 0 );
    	id = 0;
    	while ( ifstream3 >> word )
    		{
    		std::transform( word.begin( ), word.end( ), word.begin( ), ::tolower );
    		word.erase( remove_if( word.begin( ), word.end( ), [] ( char c )
    			{ return !isalpha( c ); } ), word.end( ) );
    		if ( word != "" )
    			{
    			test3[ word ].push_back( id );
    			id++;
    			}
    		}
    	test3[ "=tests/test3.txt" ].push_back( 0 );
    	id = 0;
    	while ( ifstream4 >> word )
    		{
    		std::transform( word.begin( ), word.end( ), word.begin( ), ::tolower );
    		word.erase( remove_if( word.begin( ), word.end( ), [] ( char c )
    			{ return !isalpha( c ); } ), word.end( ) );
    		if ( word != "" )
    			{
    			test4[ word ].push_back( id );
    			id++;
    			}
    		}
    	test4[ "=tests/test4.txt" ].push_back( 0 );
    	indexer.pointerToDictionaries.Push( &test1 );
    	indexer.pointerToDictionaries.Push( &test2 );
    	indexer.pointerToDictionaries.Push( &test3 );
    	indexer.pointerToDictionaries.Push( &test4 );
    	indexer.run( );
    	}