simplificator-compete 0.1.2 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
data/README.rdoc CHANGED
@@ -25,7 +25,11 @@ require 'simplificator-compete'
25
25
  COMPETE_API_KEY = 'your api key'
26
26
 
27
27
  info = Compete.for_domain('simplificator.com')
28
- puts "Ranking is: #{info.metrics_ranking}"
28
+ if info.data_available?
29
+ puts "Ranking is: #{info.metrics_ranking}"
30
+ else
31
+ puts "no data"
32
+ end
29
33
 
30
34
  ----
31
35
 
data/VERSION.yml CHANGED
@@ -1,4 +1,4 @@
1
1
  ---
2
2
  :major: 0
3
- :minor: 1
4
- :patch: 2
3
+ :minor: 2
4
+ :patch: 0
data/lib/compete.rb CHANGED
@@ -21,18 +21,23 @@ class Compete
21
21
  def initialize(xml)
22
22
  @xml = xml
23
23
  @domain = @xml['ci']['dmn']['nm']
24
+
25
+ # metrics
26
+ @metrics_ranking = to_integer(@xml['ci']['dmn']['metrics']['val']['uv']['ranking'])
27
+ if data_available?
28
+ @metrics_date_range = build_metrics_date_range()
29
+ end
24
30
 
31
+ # metrics
32
+ @metrics_count = to_integer(@xml['ci']['dmn']['metrics']['val']['uv']['count'])
33
+ @metrics_link = @xml['ci']['dmn']['metrics']['link']
34
+ @metrics_icon = @xml['ci']['dmn']['metrics']['icon']
35
+
25
36
  # trust
26
37
  @trust_level_value = @xml['ci']['dmn']['trust']['val']
27
38
  @trust_level_link = @xml['ci']['dmn']['trust']['link']
28
39
  @trust_level_icon = @xml['ci']['dmn']['trust']['icon']
29
-
30
- # metrics
31
- @metrics_link = @xml['ci']['dmn']['metrics']['link']
32
- @metrics_icon = @xml['ci']['dmn']['metrics']['icon']
33
- @metrics_ranking = to_integer(@xml['ci']['dmn']['metrics']['val']['uv']['ranking'])
34
- @metrics_count = to_integer(@xml['ci']['dmn']['metrics']['val']['uv']['count'])
35
- @metrics_date_range = build_metrics_date_range()
40
+
36
41
  end
37
42
 
38
43
  # Lookup the compete info for a domain.
@@ -45,6 +50,12 @@ class Compete
45
50
  Compete.new(info)
46
51
  end
47
52
 
53
+ # Is data available for this domain?
54
+ # If this method returns true
55
+ def data_available?
56
+ !!self.metrics_ranking
57
+ end
58
+
48
59
  private
49
60
 
50
61
  # Build a date range according to the year/month specified in the XML
@@ -66,5 +77,4 @@ class Compete
66
77
  def strip(value)
67
78
  value.gsub(/\s/, '') if value
68
79
  end
69
-
70
80
  end
data/test/compete_test.rb CHANGED
@@ -1,7 +1,35 @@
1
1
  require 'test_helper'
2
2
 
3
3
  class CompeteTest < Test::Unit::TestCase
4
- should "probably rename this file and start testing for real" do
5
- flunk "hey buddy, you should probably rename this file and start testing for real"
4
+ should 'deal with unknown domain' do
5
+ file = File.dirname(__FILE__) + '/data/unknown.yml'
6
+ info = YAML::load_file(file)
7
+ compete = Compete.new(info)
8
+ assert(!compete.data_available?)
9
+ assert_equal('yellow', compete.trust_level_value)
10
+ assert(compete.trust_level_link)
11
+ assert(compete.trust_level_icon)
12
+ assert(!compete.metrics_link)
13
+ assert(compete.metrics_icon)
14
+ assert(!compete.metrics_ranking)
15
+ assert(!compete.metrics_date_range)
16
+ assert(!compete.metrics_count)
17
+ assert_equal('unknowndomain.something.notknow', compete.domain)
18
+ end
19
+
20
+ should 'find infos about known domain' do
21
+ file = File.dirname(__FILE__) + '/data/google.com.yml'
22
+ info = YAML::load_file(file)
23
+ compete = Compete.new(info)
24
+ assert(compete.data_available?)
25
+ assert_equal('green', compete.trust_level_value)
26
+ assert(compete.trust_level_link)
27
+ assert(compete.trust_level_icon)
28
+ assert(compete.metrics_link)
29
+ assert(compete.metrics_icon)
30
+ assert_equal(1, compete.metrics_ranking)
31
+ assert_equal(137630925, compete.metrics_count)
32
+ assert_equal((Date.new(2009, 4, 1)..Date.new(2009, 4, 30)), compete.metrics_date_range)
33
+ assert_equal('google.com', compete.domain)
6
34
  end
7
35
  end
@@ -0,0 +1,29 @@
1
+ ---
2
+ ci:
3
+ dmn:
4
+ trust:
5
+ val: green
6
+ icon: http://home.compete.com.edgesuite.net/site_media/images/icons/trust_green_16.gif
7
+ caption: Trust
8
+ link: http://toolbar.compete.com/trustgreen/google.com
9
+ rank:
10
+ val: "1"
11
+ icon: http://home.compete.com.edgesuite.net/site_media/images/icons/profile_3_16.gif
12
+ caption: Profile
13
+ link: http://toolbar.compete.com/siteprofile/google.com
14
+ metrics:
15
+ val:
16
+ mth: "\n 03\n "
17
+ uv:
18
+ ranking: "\n 1\n "
19
+ count: "\n 137,630,925\n "
20
+ yr: "\n 2009\n "
21
+ icon: http://home.compete.com.edgesuite.net/site_media/images/icons/profile_3_16.gif
22
+ caption: Profile
23
+ link: http://toolbar.compete.com/siteprofile/google.com
24
+ deals:
25
+ val: "0"
26
+ icon: http://home.compete.com.edgesuite.net/site_media/images/icons/deals_off_16.gif
27
+ caption: Deals
28
+ link:
29
+ nm: google.com
@@ -0,0 +1,29 @@
1
+ ---
2
+ ci:
3
+ dmn:
4
+ trust:
5
+ val: yellow
6
+ icon: http://home.compete.com.edgesuite.net/site_media/images/icons/trust_yellow_16.gif
7
+ caption: Trust
8
+ link: http://toolbar.compete.com/trustyellow/unknowndomain.something.notknow
9
+ rank:
10
+ val:
11
+ icon: http://home.compete.com.edgesuite.net/site_media/images/icons/profile_0_16.gif
12
+ caption: Profile
13
+ link:
14
+ metrics:
15
+ val:
16
+ mth:
17
+ uv:
18
+ ranking:
19
+ count:
20
+ yr:
21
+ icon: http://home.compete.com.edgesuite.net/site_media/images/icons/profile_0_16.gif
22
+ caption: Profile
23
+ link:
24
+ deals:
25
+ val: "0"
26
+ icon: http://home.compete.com.edgesuite.net/site_media/images/icons/deals_off_16.gif
27
+ caption: Deals
28
+ link:
29
+ nm: unknowndomain.something.notknow
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: simplificator-compete
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.2
4
+ version: 0.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - simplificator
@@ -9,7 +9,7 @@ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
11
 
12
- date: 2009-05-02 00:00:00 -07:00
12
+ date: 2009-05-03 00:00:00 -07:00
13
13
  default_executable:
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
@@ -38,6 +38,8 @@ files:
38
38
  - VERSION.yml
39
39
  - lib/compete.rb
40
40
  - test/compete_test.rb
41
+ - test/data/google.com.yml
42
+ - test/data/unknown.yml
41
43
  - test/test_helper.rb
42
44
  has_rdoc: true
43
45
  homepage: http://github.com/simplificator/compete