spec/pattern_spec.rb in text_nlp-0.0.2 vs spec/pattern_spec.rb in text_nlp-0.0.3
- old
+ new
@@ -1,13 +1,33 @@
# encoding: utf-8
require "spec_helper"
describe TextNlp::Pattern do
- it "should match or not the pattern" do
- TextNlp::Pattern.new("((bd)||(bande dessinée))&&!samsung").match?("cette bd est super").should be_true
- TextNlp::Pattern.new("((bd)||(bande dessinée))&&!samsung").match?("cette bd est illisible sur samsung NTC").should be_false
- TextNlp::Pattern.new("((bd)||(bande dessinée))&&!samsung").match?("cette bande dessinée est illisible sur samsung NTC").should be_false
- TextNlp::Pattern.new("((bd)||(bande dessinée))&&!samsung").match?("cette bande dessinée est illisible").should be_true
+ context "with normalize option" do
+
+ it "should match or not the pattern" do
+ pattern = TextNlp::Pattern.new("(BD OR 'bande dessinée') AND -samsung")
+ pattern.match?("cette BD est super").should be_true
+ pattern.match?("cette bd est illisible sur samsung NTC").should be_false
+ pattern.match?("cette bande dessinee est illisible sur samsung NTC").should be_false
+ pattern.match?("cette bande dessinee est illisible").should be_true
+ pattern = TextNlp::Pattern.new("'toulouse fc' OR ((toulouse OR tfc) AND (foot OR football OR 'ligue 1' OR 'ligue 2' OR l1 OR l2))")
+ pattern.match?("toulouse est une belle ville").should be_false
+ end
+
end
+
+ context "with no normalized option" do
+
+ it "should match or not the pattern" do
+ pattern = TextNlp::Pattern.new("(BD OR 'bande dessinée') AND -samsung", :normalize => false)
+ pattern.match?("cette BD est super").should be_true
+ pattern.match?("cette bd est super").should be_false
+ pattern.match?("cette bande dessinee est illisible").should be_false
+ pattern.match?("cette bande dessinée est illisible").should be_true
+ pattern.match?("cette bande dessinée est illisible sur samsung").should be_false
+ end
+
+ end
end
\ No newline at end of file