rddd-monitor 0.1.0 → 0.1.1

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/Gemfile CHANGED
@@ -12,10 +12,6 @@ gem 'newrelic_rpm'
12
12
  gem 'couchrest'
13
13
 
14
14
  group :development do
15
- gem 'capistrano'
16
- gem 'capistrano-unicorn'
17
- gem 'capistrano_colors'
18
- gem 'rvm-capistrano'
19
15
  gem 'shotgun'
20
16
  end
21
17
 
data/Rakefile ADDED
@@ -0,0 +1 @@
1
+ require "bundler/gem_tasks"
data/config/test.yml ADDED
@@ -0,0 +1,7 @@
1
+ working_directory: /tmp/sniffer
2
+ database_server: http://127.0.0.1:5988
3
+ database_name: sniffer-testing
4
+ email_domain: ngneers.com
5
+ email_user_name: ngneers
6
+ email_password: PpcDyjn82NKqdw
7
+ airbrake_api_key: 9cda6f5abf4e6f47645e3117d40ba3af
@@ -0,0 +1,51 @@
1
+ require 'singleton'
2
+ require 'yaml'
3
+
4
+ class Configuration
5
+ include Singleton
6
+
7
+ attr_accessor :working_directory,
8
+ :app_directory,
9
+ :database_server,
10
+ :database_name,
11
+ :email_domain,
12
+ :email_user_name,
13
+ :email_password,
14
+ :airbrake_api_key,
15
+ :db,
16
+ :kiss_log_dir,
17
+
18
+ :github_app_id,
19
+ :github_app_secret,
20
+ :github_redirect_uri
21
+
22
+ def current_user
23
+ @current_user
24
+ end
25
+
26
+ def current_user=(user)
27
+ @current_user = user
28
+ end
29
+
30
+ def load(path)
31
+ file = YAML::load(File.open(path))
32
+
33
+ [
34
+ :working_directory,
35
+ :app_directory,
36
+ :database_server,
37
+ :database_name,
38
+ :email_domain,
39
+ :email_user_name,
40
+ :email_password,
41
+ :airbrake_api_key,
42
+ :kiss_log_dir,
43
+
44
+ :github_app_id,
45
+ :github_app_secret,
46
+ :github_redirect_uri
47
+ ].each do |attr|
48
+ self.send("#{attr}=", file[attr.to_s])
49
+ end
50
+ end
51
+ end
@@ -0,0 +1,14 @@
1
+ class String
2
+ def camel_case
3
+ return self if self !~ /_/ && self =~ /[A-Z]+.*/
4
+ split('_').map{|e| e.capitalize}.join
5
+ end
6
+
7
+ def snake_case
8
+ self.gsub(/::/, '/').
9
+ gsub(/([A-Z]+)([A-Z][a-z])/,'\1_\2').
10
+ gsub(/([a-z\d])([A-Z])/,'\1_\2').
11
+ tr("-", "_").
12
+ downcase
13
+ end
14
+ end
File without changes
@@ -0,0 +1,7 @@
1
+ module IdGenerator
2
+ def self.build(prefix = nil)
3
+ id = (Time.new.to_f * 10000000).to_s.gsub('.', '')
4
+
5
+ prefix ? "#{prefix}-#{id}" : id
6
+ end
7
+ end
@@ -0,0 +1,54 @@
1
+ require 'json'
2
+ require 'couchrest'
3
+ require 'singleton'
4
+ require 'configuration'
5
+
6
+ class InMemoryStrages
7
+ include Singleton
8
+
9
+ def self.build(name)
10
+ @list ||= {}
11
+
12
+ @list[name] ||= InMemoryStorage.new(name)
13
+
14
+ @list[name]
15
+ end
16
+ end
17
+
18
+ class InMemoryStorage
19
+ attr_reader :name
20
+
21
+ def initialize(name)
22
+ @name = name
23
+ @keys = {}
24
+ end
25
+
26
+ def get(key)
27
+ @keys[key]
28
+ end
29
+
30
+ def set(key, object)
31
+ @keys[key] = object
32
+ end
33
+
34
+ def delete(key)
35
+ @keys.delete key
36
+ end
37
+
38
+ def get_list(key)
39
+ @keys[key] || []
40
+ end
41
+
42
+ def add_to_list(key, object)
43
+ @keys[key] ||= []
44
+ @keys[key] << object
45
+ end
46
+
47
+ def remove_from_list(key, object)
48
+ @keys.delete(object)
49
+ end
50
+
51
+ def clear
52
+ @keys = {}
53
+ end
54
+ end
File without changes
File without changes
data/lib/storage.rb ADDED
@@ -0,0 +1,17 @@
1
+ require 'singleton'
2
+
3
+ class Storage
4
+ include Singleton
5
+
6
+ def strategy
7
+ @strategy
8
+ end
9
+
10
+ def strategy=(strategy)
11
+ @strategy = strategy
12
+ end
13
+
14
+ def build(db)
15
+ strategy.build(db)
16
+ end
17
+ end
data/monitor.gemspec ADDED
@@ -0,0 +1,21 @@
1
+ # -*- encoding: utf-8 -*-
2
+ $:.push File.expand_path("../lib", __FILE__)
3
+
4
+ Gem::Specification.new do |s|
5
+ s.name = "rddd-monitor"
6
+ s.version = '0.1.1'
7
+ s.authors = ["Petr Janda"]
8
+ s.email = ["petr@ngneers.com"]
9
+ s.homepage = ""
10
+ s.summary = 'Monitoring tool for rDDD'
11
+ s.description = 'User inteligence.'
12
+
13
+ s.rubyforge_project = "watchr"
14
+
15
+ s.files = `git ls-files`.split("\n")
16
+ s.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
17
+ s.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
18
+ s.require_paths = ["lib"]
19
+
20
+ # specify any dependencies here; for example:
21
+ end
Binary file
Binary file
@@ -1,7 +1,7 @@
1
1
  require 'spec_helper'
2
2
  require 'sinatra'
3
3
  require 'rack/test'
4
- require 'events_controller'
4
+ require 'delivery/events_controller'
5
5
 
6
6
  # setup test environment
7
7
  set :environment, :test
data/spec/spec_helper.rb CHANGED
@@ -1,23 +1,16 @@
1
1
  ENV['RACK_ENV'] = 'test'
2
2
 
3
- dir = "#{File.dirname(__FILE__)}/../../lib/"
4
- $LOAD_PATH.unshift(dir) unless $LOAD_PATH.include?(dir)
5
-
6
- dir = "#{File.dirname(__FILE__)}/../domain/"
7
- $LOAD_PATH.unshift(dir) unless $LOAD_PATH.include?(dir)
8
-
9
- dir = "#{File.dirname(__FILE__)}/../delivery/"
3
+ dir = "#{File.dirname(__FILE__)}/../lib/"
10
4
  $LOAD_PATH.unshift(dir) unless $LOAD_PATH.include?(dir)
11
5
 
12
6
  require 'configuration'
13
7
  require 'rack/test'
14
- require 'couchdb/db'
15
8
  require 'core_ext/string'
16
9
  require 'inmemory_storage'
17
10
  require 'storage'
18
11
  require 'rddd'
19
12
 
20
- Configuration.instance.load("../config/#{ENV['RACK_ENV']}.yml")
13
+ Configuration.instance.load("config/#{ENV['RACK_ENV']}.yml")
21
14
 
22
15
  RSpec.configure do |config|
23
16
  config.include Rack::Test::Methods
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rddd-monitor
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.1.1
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -21,9 +21,19 @@ files:
21
21
  - .rvmrc
22
22
  - Gemfile
23
23
  - Gemfile.lock
24
- - delivery/events_controller.rb
25
- - domain/models/event.rb
26
- - domain/services/register_event_service.rb
24
+ - Rakefile
25
+ - config/test.yml
26
+ - lib/configuration.rb
27
+ - lib/core_ext/string.rb
28
+ - lib/delivery/events_controller.rb
29
+ - lib/id_generator.rb
30
+ - lib/inmemory_storage.rb
31
+ - lib/models/event.rb
32
+ - lib/services/register_event_service.rb
33
+ - lib/storage.rb
34
+ - monitor.gemspec
35
+ - pkg/rddd-monitor-0.1.0.gem
36
+ - pkg/rddd-monitor-0.1.1.gem
27
37
  - spec/domain/models/event_spec.rb
28
38
  - spec/domain/services/register_action_service_spec.rb
29
39
  - spec/integration/register_event_spec.rb