code_zauker 0.0.1

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1 @@
1
+ foolish
@@ -0,0 +1,2 @@
1
+ Esempio di file che contiene la parola kurukku
2
+ e anche la frase "Be hungry, be foolish" con virgolette
@@ -0,0 +1,74 @@
1
+ # -*- encoding: utf-8 -*-
2
+ # To test use
3
+ # rake TEST=test/test_search.rb
4
+ require 'test/unit'
5
+ #require 'girl_friday'
6
+ require 'code_zauker'
7
+
8
+ # See ri Test::Unit::Assertions
9
+ # for assertion documentation
10
+ class FileScannerBasicSearch < Test::Unit::TestCase
11
+ def test_benchmark
12
+ require "benchmark"
13
+ fs=CodeZauker::FileScanner.new()
14
+ time = Benchmark.bm(7) do |x|
15
+ x.report ("kurukku.txt") { fs.load("./test/fixture/kurukku.txt") }
16
+ x.report ("BigFile") { fs.load("./test/fixture/TEST_LICENSE.txt")}
17
+ x.report("Search common words"){ fs.search("and"); fs.search("terms") }
18
+ end
19
+ puts "Bench Result..."
20
+ puts time
21
+ end
22
+
23
+
24
+ def test_scanner_trigram_simple
25
+ fs=CodeZauker::FileScanner.new()
26
+ fs.load("./readme.org",noReload=true)
27
+ fs.load("./test/fixture/kurukku.txt")
28
+ files=fs.search("kku")
29
+ assert (files[0].include?("fixture/kurukku.txt")==true)
30
+ end
31
+
32
+ def test_scanner_long_word
33
+ fs=CodeZauker::FileScanner.new()
34
+ fs.load("./test/fixture/kurukku.txt")
35
+ files=fs.search("\"Be hungry, be foolish\"")
36
+ assert(files[0].include?("test/fixture/kurukku.txt")==true)
37
+ end
38
+
39
+ def test_foolish
40
+ fs=CodeZauker::FileScanner.new()
41
+ fs.load("./test/fixture/kurukku.txt")
42
+ fs.load("./test/fixture/foolish.txt")
43
+ # foolish is a good example because it is not multiple of 3
44
+ files=fs.search("foolish")
45
+ #puts "GGG #{files}"
46
+ assert(files.include?("./test/fixture/foolish.txt") == true)
47
+ assert(files.include?("./test/fixture/kurukku.txt") ==true)
48
+ end
49
+
50
+ def test_less_then3_must_not_give_Redis_error
51
+ fs=CodeZauker::FileScanner.new()
52
+ fs.load("./test/fixture/kurukku.txt")
53
+ files=fs.search("di")
54
+ assert_equal 0, files.length
55
+ end
56
+
57
+ def test_small4
58
+ fs=CodeZauker::FileScanner.new()
59
+ fs.load("./test/fixture/kurukku.txt")
60
+ # anche
61
+ files=fs.search('anch')
62
+ assert(files.include?("./test/fixture/kurukku.txt") ==true )
63
+ end
64
+
65
+ def test_very_big_file
66
+ fs=CodeZauker::FileScanner.new()
67
+ fs.load("./test/fixture/TEST_LICENSE.txt",noReload=true)
68
+ files=fs.search("Notwithstanding")
69
+ assert files.include?("./test/fixture/TEST_LICENSE.txt")==true
70
+ end
71
+
72
+
73
+ end
74
+
metadata ADDED
@@ -0,0 +1,95 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: code_zauker
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.1
5
+ prerelease:
6
+ platform: ruby
7
+ authors:
8
+ - Giovanni Giorgi
9
+ autorequire:
10
+ bindir: bin
11
+ cert_chain: []
12
+ date: 2012-01-26 00:00:00.000000000 Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
15
+ name: yard
16
+ requirement: &72883350 !ruby/object:Gem::Requirement
17
+ none: false
18
+ requirements:
19
+ - - ~>
20
+ - !ruby/object:Gem::Version
21
+ version: '0.7'
22
+ type: :development
23
+ prerelease: false
24
+ version_requirements: *72883350
25
+ - !ruby/object:Gem::Dependency
26
+ name: hiredis
27
+ requirement: &72883030 !ruby/object:Gem::Requirement
28
+ none: false
29
+ requirements:
30
+ - - ~>
31
+ - !ruby/object:Gem::Version
32
+ version: '0.3'
33
+ type: :runtime
34
+ prerelease: false
35
+ version_requirements: *72883030
36
+ - !ruby/object:Gem::Dependency
37
+ name: redis
38
+ requirement: &72882680 !ruby/object:Gem::Requirement
39
+ none: false
40
+ requirements:
41
+ - - ~>
42
+ - !ruby/object:Gem::Version
43
+ version: '2.2'
44
+ type: :runtime
45
+ prerelease: false
46
+ version_requirements: *72882680
47
+ description: Code Zauker is based from ideas taken by old Google Code Search and uses
48
+ Redis as a basic platform
49
+ email:
50
+ - jj@gioorgi.com
51
+ executables:
52
+ - czindexer
53
+ - czsearch
54
+ extensions: []
55
+ extra_rdoc_files: []
56
+ files:
57
+ - .gitignore
58
+ - Gemfile
59
+ - Rakefile
60
+ - bin/czindexer
61
+ - bin/czsearch
62
+ - code_zauker.gemspec
63
+ - lib/code_zauker.rb
64
+ - lib/code_zauker/version.rb
65
+ - readme.org
66
+ - test/fixture/TEST_LICENSE.txt
67
+ - test/fixture/foolish.txt
68
+ - test/fixture/kurukku.txt
69
+ - test/test_search.rb
70
+ homepage: http://gioorgi.com/tag/code-zauker/
71
+ licenses: []
72
+ post_install_message:
73
+ rdoc_options: []
74
+ require_paths:
75
+ - lib
76
+ required_ruby_version: !ruby/object:Gem::Requirement
77
+ none: false
78
+ requirements:
79
+ - - ! '>='
80
+ - !ruby/object:Gem::Version
81
+ version: '0'
82
+ required_rubygems_version: !ruby/object:Gem::Requirement
83
+ none: false
84
+ requirements:
85
+ - - ! '>='
86
+ - !ruby/object:Gem::Version
87
+ version: '0'
88
+ requirements: []
89
+ rubyforge_project: code_zauker
90
+ rubygems_version: 1.8.10
91
+ signing_key:
92
+ specification_version: 3
93
+ summary: A search engine for programming languages
94
+ test_files: []
95
+ has_rdoc: