spec/semantic/search_spec.rb in josephwilk-rsemantic-0.1.0 vs spec/semantic/search_spec.rb in josephwilk-rsemantic-0.1.1
- old
+ new
@@ -16,11 +16,11 @@
def query_vector
@query_vector ||= Linalg::DMatrix.columns([[1,0]])
end
def vector_space_model(stubs = {})
- @vector_space_model ||= VectorSpace::Model.new(Linalg::DMatrix.rows([[0,1],[1,0]]), [])
+ @vector_space_model ||= VectorSpace::Model.new(Linalg::DMatrix.rows([[0,1],[1,0]]), {})
end
def matrix(array)
Linalg::DMatrix.rows(array)
end
@@ -83,9 +83,45 @@
Compare.should_receive(:cosine).with(matrix([[0],[1]]), matrix([[1],[0]]))
vector_search = Search.new(documents)
vector_search.related(0)
+ end
+
+ end
+
+ describe "logging" do
+
+ before(:each) do
+ @out = StringIO.new
+ Semantic.logger = Logger.new(@out)
+ end
+
+ it "should set info level if in verbose mode" do
+ VectorSpace::Builder.stub!(:new).and_return(mock_builder)
+ mock_builder.stub!(:build_document_matrix).and_return(vector_space_model)
+
+ Search.new(['test'], :verbose => true)
+
+ Semantic.logger.level.should == Logger::INFO
+ end
+
+ it "should set error level if not in verbose mode" do
+ VectorSpace::Builder.stub!(:new).and_return(mock_builder)
+ mock_builder.stub!(:build_document_matrix).and_return(vector_space_model)
+
+ Search.new(['test'], :verbose => false)
+
+ Semantic.logger.level.should == Logger::ERROR
+ end
+
+ it "should default to error level if verbose is not specified" do
+ VectorSpace::Builder.stub!(:new).and_return(mock_builder)
+ mock_builder.stub!(:build_document_matrix).and_return(vector_space_model)
+
+ Search.new(['test'])
+
+ Semantic.logger.level.should == Logger::ERROR
end
end
end