primedia-endeca 0.10.0 → 0.10.1

Sign up to get free protection for your applications and to get access to all the features.
data/endeca.gemspec CHANGED
@@ -1,34 +1,32 @@
1
- # -*- encoding: utf-8 -*-
2
-
3
1
  Gem::Specification.new do |s|
4
2
  s.name = %q{endeca}
5
- s.version = "0.10.0"
3
+ s.version = "0.10.1"
6
4
 
7
5
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
8
6
  s.authors = ["Rein Henrichs", "Andy Stone"]
9
- s.date = %q{2009-02-20}
7
+ s.date = %q{2009-03-02}
10
8
  s.description = %q{An Endeca client library for Ruby.}
11
9
  s.email = %q{}
12
10
  s.extra_rdoc_files = ["History.txt", "Manifest.txt", "README.rdoc"]
13
- s.files = ["History.txt", "Manifest.txt", "README.rdoc", "Rakefile", "endeca.gemspec", "example/benchmark.rb", "example/listing.rb", "lib/class_to_proc.rb", "lib/core_ext.rb", "lib/endeca.rb", "lib/endeca/benchmarking.rb", "lib/endeca/breadcrumb.rb", "lib/endeca/breadcrumbs.rb", "lib/endeca/dimension.rb", "lib/endeca/document.rb", "lib/endeca/document_collection.rb", "lib/endeca/logging.rb", "lib/endeca/map.rb", "lib/endeca/readers.rb", "lib/endeca/refinement.rb", "lib/endeca/request.rb", "lib/endeca/transformer.rb", "spec/core_ext_spec.rb", "spec/endeca/benchmarking_spec.rb", "spec/endeca/breadcrumb_spec.rb", "spec/endeca/dimension_spec.rb", "spec/endeca/document_collection_spec.rb", "spec/endeca/document_spec.rb", "spec/endeca/map_spec.rb", "spec/endeca/readers_spec.rb", "spec/endeca/refinement_spec.rb", "spec/endeca/request_spec.rb", "spec/endeca/transformer_spec.rb", "spec/endeca_spec.rb", "spec/rcov.opts", "spec/spec.opts", "spec/spec_helper.rb"]
11
+ s.files = ["History.txt", "Manifest.txt", "README.rdoc", "Rakefile", "endeca.gemspec", "example/benchmark.rb", "example/listing.rb", "lib/class_to_proc.rb", "lib/core_ext.rb", "lib/endeca.rb", "lib/endeca/benchmarking.rb", "lib/endeca/breadcrumb.rb", "lib/endeca/breadcrumbs.rb", "lib/endeca/dimension.rb", "lib/endeca/document.rb", "lib/endeca/document_collection.rb", "lib/endeca/logging.rb", "lib/endeca/map.rb", "lib/endeca/readers.rb", "lib/endeca/refinement.rb", "lib/endeca/refinement_dimension.rb", "lib/endeca/request.rb", "lib/endeca/transformer.rb", "spec/core_ext_spec.rb", "spec/endeca/benchmarking_spec.rb", "spec/endeca/breadcrumb_spec.rb", "spec/endeca/dimension_spec.rb", "spec/endeca/document_collection_spec.rb", "spec/endeca/document_spec.rb", "spec/endeca/map_spec.rb", "spec/endeca/readers_spec.rb", "spec/endeca/refinement_dimension_spec.rb", "spec/endeca/refinement_spec.rb", "spec/endeca/request_spec.rb", "spec/endeca/transformer_spec.rb", "spec/endeca_spec.rb", "spec/rcov.opts", "spec/spec.opts", "spec/spec_helper.rb"]
14
12
  s.has_rdoc = true
15
13
  s.homepage = %q{http://github.com/primedia/endeca-ruby}
16
14
  s.rdoc_options = ["--main", "README.rdoc"]
17
15
  s.require_paths = ["lib"]
18
16
  s.rubyforge_project = %q{endeca}
19
- s.rubygems_version = %q{1.3.1}
17
+ s.rubygems_version = %q{1.2.0}
20
18
  s.summary = %q{An Endeca client library for Ruby}
21
19
 
22
20
  if s.respond_to? :specification_version then
23
21
  current_version = Gem::Specification::CURRENT_SPECIFICATION_VERSION
24
22
  s.specification_version = 2
25
23
 
26
- if Gem::Version.new(Gem::RubyGemsVersion) >= Gem::Version.new('1.2.0') then
27
- s.add_development_dependency(%q<bones>, [">= 2.4.0"])
24
+ if current_version >= 3 then
25
+ s.add_development_dependency(%q<bones>, [">= 2.3.1"])
28
26
  else
29
- s.add_dependency(%q<bones>, [">= 2.4.0"])
27
+ s.add_dependency(%q<bones>, [">= 2.3.1"])
30
28
  end
31
29
  else
32
- s.add_dependency(%q<bones>, [">= 2.4.0"])
30
+ s.add_dependency(%q<bones>, [">= 2.3.1"])
33
31
  end
34
32
  end
@@ -13,6 +13,10 @@ module Endeca
13
13
  values.map(&Dimension) if values
14
14
  end
15
15
 
16
+ reader('Dimensions' => :dimensions) do |values|
17
+ values.map(&RefinementDimension) if values
18
+ end
19
+
16
20
  attr_reader :raw
17
21
  def initialize(raw={})
18
22
  @raw = raw
@@ -0,0 +1,32 @@
1
+ module Endeca
2
+ class RefinementDimension
3
+ include Comparable
4
+ extend ClassToProc
5
+ extend Readers
6
+
7
+ reader \
8
+ "DimensionName" => :name,
9
+ "ExpansionLink" => :to_endeca_params
10
+
11
+ integer_reader \
12
+ "DimensionID" => :id
13
+
14
+ attr_reader :raw
15
+ def initialize(raw={})
16
+ @raw=raw
17
+ end
18
+ alias_method :attributes, :raw
19
+
20
+ def inspect
21
+ "#<#{self.class}=0x#{self.object_id.to_s(16)} id=#{id} name=#{name.inspect}>"
22
+ end
23
+
24
+ def ==(other)
25
+ id == other.id
26
+ end
27
+
28
+ def <=>(other)
29
+ name <=> other.name
30
+ end
31
+ end
32
+ end
@@ -29,13 +29,12 @@ module Endeca
29
29
  private
30
30
 
31
31
  def get_response #:nodoc:
32
- response = nil
33
32
  Endeca.log "ENDECA ADAPTER REQUEST"
34
33
  Endeca.log " parameters => " + @query.inspect
35
34
  Endeca.log " uri => " + uri.to_s
36
- Endeca.bm " request time => " do response = Net::HTTP.get_response(uri) end
35
+ Endeca.bm " request time => " do @response = Net::HTTP.get_response(uri) end
37
36
 
38
- return response
37
+ return @response
39
38
  end
40
39
 
41
40
  # Raises exception Net::XXX (http error code) if an http error occured
data/lib/endeca.rb CHANGED
@@ -13,6 +13,7 @@ require 'endeca/readers'
13
13
  require 'endeca/map'
14
14
  require 'endeca/transformer'
15
15
  require 'endeca/dimension'
16
+ require 'endeca/refinement_dimension'
16
17
  require 'endeca/refinement'
17
18
  require 'endeca/breadcrumbs'
18
19
  require 'endeca/breadcrumb'
@@ -25,7 +26,7 @@ module Endeca
25
26
  extend Logging
26
27
 
27
28
  # :stopdoc:
28
- VERSION = '0.10.0'
29
+ VERSION = '0.10.1'
29
30
  # :startdoc:
30
31
 
31
32
  # Returns the version string for the library.
@@ -0,0 +1,74 @@
1
+ require File.dirname(__FILE__) + '/../spec_helper'
2
+
3
+ describe Endeca::RefinementDimension do
4
+ describe ".new" do
5
+ it "should set the raw attribute" do
6
+ dimension = Endeca::RefinementDimension.new(:raw)
7
+
8
+ dimension.raw.should == :raw
9
+ end
10
+ end
11
+
12
+ describe "#to_endeca_params" do
13
+ before do
14
+ @dimension = Endeca::RefinementDimension.new("ExpansionLink" => "expansion link")
15
+ end
16
+
17
+ it() {@dimension.to_endeca_params.should == "expansion link"}
18
+
19
+ end
20
+
21
+ describe "#inspect" do
22
+ before do
23
+ @dimension = Endeca::RefinementDimension.new
24
+ end
25
+
26
+ it "should include the class" do
27
+ @dimension.inspect.should include(Endeca::RefinementDimension.name)
28
+ end
29
+
30
+ it "should include the hex formatted object_id" do
31
+ id = 123
32
+ @dimension.stub!(:object_id).and_return(id)
33
+ @dimension.inspect.should include("0x#{id.to_s(16)}")
34
+ end
35
+
36
+ it "should include the id" do
37
+ id = 123
38
+ @dimension.stub!(:id).and_return(id)
39
+ @dimension.inspect.should include("id=#{id}")
40
+ end
41
+
42
+ it "should include the inspected name" do
43
+ name = 'name'
44
+ @dimension.stub!(:name).and_return(name)
45
+ @dimension.inspect.should include("name=#{name.inspect}")
46
+ end
47
+ end
48
+
49
+ describe "#==" do
50
+ it "should compare ids" do
51
+ dim_1 = Endeca::RefinementDimension.new
52
+ dim_2 = Endeca::RefinementDimension.new
53
+ dim_2.stub!(:id).and_return(dim_1.id)
54
+
55
+ (dim_1 == dim_2).should be_true
56
+ end
57
+ end
58
+
59
+ describe "#<=>" do
60
+ it "should compare names" do
61
+ name = mock('name')
62
+
63
+ dim_1 = Endeca::RefinementDimension.new
64
+ dim_2 = Endeca::RefinementDimension.new
65
+
66
+ dim_1.stub!(:name).and_return(name)
67
+ dim_2.stub!(:name).and_return(name)
68
+
69
+ name.should_receive(:<=>).with(name)
70
+
71
+ dim_1 <=> dim_2
72
+ end
73
+ end
74
+ end
@@ -61,4 +61,12 @@ describe Endeca::Refinement do
61
61
  my_dimension = Endeca::Dimension.new(@dimension_value)
62
62
  @refinement.dimension_values.should == [my_dimension]
63
63
  end
64
+
65
+ it "should return an array of dimensions" do
66
+ refinement_dim_raw = mock("raw dimension refinement")
67
+ refinement_dim = mock(Endeca::RefinementDimension)
68
+ @refinement.attributes['Dimensions'] = [refinement_dim_raw]
69
+ Endeca::RefinementDimension.should_receive(:new).with(refinement_dim_raw).and_return(refinement_dim)
70
+ @refinement.dimensions.should == [refinement_dim]
71
+ end
64
72
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: primedia-endeca
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.10.0
4
+ version: 0.10.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Rein Henrichs
@@ -10,18 +10,18 @@ autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
12
 
13
- date: 2009-02-20 00:00:00 -08:00
13
+ date: 2009-03-02 00:00:00 -08:00
14
14
  default_executable:
15
15
  dependencies:
16
16
  - !ruby/object:Gem::Dependency
17
17
  name: bones
18
- type: :development
18
+ type: :runtime
19
19
  version_requirement:
20
20
  version_requirements: !ruby/object:Gem::Requirement
21
21
  requirements:
22
22
  - - ">="
23
23
  - !ruby/object:Gem::Version
24
- version: 2.4.0
24
+ version: 2.3.1
25
25
  version:
26
26
  description: An Endeca client library for Ruby.
27
27
  email: ""
@@ -54,6 +54,7 @@ files:
54
54
  - lib/endeca/map.rb
55
55
  - lib/endeca/readers.rb
56
56
  - lib/endeca/refinement.rb
57
+ - lib/endeca/refinement_dimension.rb
57
58
  - lib/endeca/request.rb
58
59
  - lib/endeca/transformer.rb
59
60
  - spec/core_ext_spec.rb
@@ -64,6 +65,7 @@ files:
64
65
  - spec/endeca/document_spec.rb
65
66
  - spec/endeca/map_spec.rb
66
67
  - spec/endeca/readers_spec.rb
68
+ - spec/endeca/refinement_dimension_spec.rb
67
69
  - spec/endeca/refinement_spec.rb
68
70
  - spec/endeca/request_spec.rb
69
71
  - spec/endeca/transformer_spec.rb