
#include "BST.h" // binary tree operations

using namespace std;

int main()
{
   BinarySearchTree tree1; // empty trees

   KeyedItem an_item1("Big Bad John") ;
   KeyedItem an_item2("A Big Bad Wolf") ;
   KeyedItem an_item3("Manny the Mobster") ;

   if (tree1.isEmpty()) cout << "Tree One is Empty" << endl ;
   else cout << "Tree One is NOT Empty" << endl;

   tree1.searchTreeInsert(an_item1);
   tree1.searchTreeInsert(an_item2);
   tree1.searchTreeInsert(an_item3);

   if (tree1.isEmpty()) cout << "Tree One is Empty" << endl ;
   else cout << "Tree One is NOT Empty" << endl;

   BinarySearchTree tree2 = tree1 ;

   tree2.searchTreeRetrieve("A Big Bad Wolf", an_item1) ;
   cout << "The item found in Tree Two contains this key: \"" 
        << an_item1.getKey() << "\"" << endl;
   cout << "Now I'll cause an abort. " << endl ;
   tree2.searchTreeRetrieve("John Sarraille", an_item1) ;


   return 0;
} // end main
