basic search, advanced search, search testing

implement basicSearch and advancedSearch methods
implement testing cases for these two methods