celsius 0.0.1 → 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.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 2a521e978a4541083a2873c57a94f08ea02c1e79
4
+ data.tar.gz: 22df803f547fc9accbca5da2d7ca60ddcafb8759
5
+ SHA512:
6
+ metadata.gz: 9f1c01cbd35521cfc11aaf768179b57f0429890f7c9d544a4fdfcb062c4550a5b8adff30e61dd398e535e71628dc78116536f8c0cfc9596bef34d22e28350484
7
+ data.tar.gz: d5c9392cbf1e18db04749e762454f37408c07bf88fb7ba40edea704245f035af28490d8adf1702401bbdbcd59d809a5d460a6fad445ddd1dadf240724082b3d5
data/.rspec ADDED
@@ -0,0 +1,3 @@
1
+ --color
2
+ --format documentation
3
+ --require spec_helper
data/Gemfile CHANGED
@@ -1,4 +1,9 @@
1
- source 'https://rubygems.org'
1
+ source "https://rubygems.org"
2
2
 
3
3
  # Specify your gem's dependencies in celsius.gemspec
4
4
  gemspec
5
+
6
+ gem "pry", "~> 0.9.12.6"
7
+ gem "pry-nav", "~> 0.2.3"
8
+ gem "pry-stack_explorer", "~> 0.4.9.1"
9
+ gem "pry-syntax-hacks", "~> 0.0.6"
@@ -1,4 +1,4 @@
1
- Copyright (c) 2012 René Sprotte, Michael Sievers
1
+ Copyright (c) 2014 Michael Sievers
2
2
 
3
3
  MIT License
4
4
 
data/README.md CHANGED
@@ -1,2 +1,29 @@
1
- celsius
2
- =======
1
+ # Celsius
2
+
3
+ TODO: Write a gem description
4
+
5
+ ## Installation
6
+
7
+ Add this line to your application's Gemfile:
8
+
9
+ gem 'celsius'
10
+
11
+ And then execute:
12
+
13
+ $ bundle
14
+
15
+ Or install it yourself as:
16
+
17
+ $ gem install celsius
18
+
19
+ ## Usage
20
+
21
+ TODO: Write usage instructions here
22
+
23
+ ## Contributing
24
+
25
+ 1. Fork it ( http://github.com/<my-github-username>/celsius/fork )
26
+ 2. Create your feature branch (`git checkout -b my-new-feature`)
27
+ 3. Commit your changes (`git commit -am 'Add some feature'`)
28
+ 4. Push to the branch (`git push origin my-new-feature`)
29
+ 5. Create new Pull Request
data/Rakefile CHANGED
@@ -1,2 +1,6 @@
1
- #!/usr/bin/env rake
2
1
  require "bundler/gem_tasks"
2
+ require "rspec/core/rake_task"
3
+
4
+ RSpec::Core::RakeTask.new(:spec)
5
+
6
+ task :default => :spec
data/celsius.gemspec CHANGED
@@ -1,21 +1,26 @@
1
- # -*- encoding: utf-8 -*-
2
- require File.expand_path('../lib/celsius/version', __FILE__)
1
+ # coding: utf-8
2
+ lib = File.expand_path("../lib", __FILE__)
3
+ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
+ require "celsius/version"
3
5
 
4
- Gem::Specification.new do |gem|
5
- gem.name = "celsius"
6
- gem.authors = ["René Sprotte", "Michael Sievers"]
7
- gem.email = ["ubpb-celsius@googlegroups.com"]
8
- gem.description = "Common Library Search Interface"
9
- gem.summary = "celsius-#{Celsius::VERSION}"
10
- gem.homepage = "http://github.com/ubpb/celsius"
11
- gem.license = "MIT"
6
+ Gem::Specification.new do |spec|
7
+ spec.name = "celsius"
8
+ spec.version = Celsius::VERSION
9
+ spec.authors = ["Michael Sievers"]
10
+ spec.summary = "celsius-#{Celsius::VERSION}"
11
+ spec.description = "Common Library Search Interface"
12
+ spec.homepage = "http://github.com/ubpb/celsius"
13
+ spec.license = "MIT"
12
14
 
13
- gem.files = `git ls-files`.split($\)
14
- gem.executables = gem.files.grep(%r{^bin/}).map{ |f| File.basename(f) }
15
- gem.test_files = gem.files.grep(%r{^(test|spec|features)/})
16
- gem.require_paths = ["lib"]
17
- gem.version = Celsius::VERSION
15
+ spec.files = `git ls-files`.split($/)
16
+ spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
17
+ spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
18
+ spec.require_paths = ["lib"]
18
19
 
19
- gem.add_dependency "celsius-common"
20
- gem.add_dependency "celsius-ui"
20
+ spec.add_dependency "deep_merger", ">= 0.0.2"
21
+
22
+ spec.add_development_dependency "bundler", ">= 1.5"
23
+ spec.add_development_dependency "rspec", ">= 3.0.0", "< 4.0.0"
24
+ spec.add_development_dependency "simplecov", ">= 0.8.2"
25
+ spec.add_development_dependency "rake"
21
26
  end
@@ -0,0 +1,2 @@
1
+ class Celsius::Adapter
2
+ end
@@ -1,3 +1,3 @@
1
1
  module Celsius
2
- VERSION = "0.0.1"
2
+ VERSION = "0.2.0"
3
3
  end
data/lib/celsius.rb CHANGED
@@ -1,5 +1,38 @@
1
1
  require "celsius/version"
2
+ require "deep_merger"
2
3
 
3
4
  module Celsius
4
- # Your code goes here...
5
+ require "celsius/adapter"
6
+
7
+ def self.deep_clone(object)
8
+ Marshal.load(Marshal.dump(object))
9
+ end
10
+
11
+ def self.deep_merge!(destination, source, options = {})
12
+ DeepMerger.deep_merge!(source, destination, options)
13
+ end
14
+
15
+ def self.deep_stringify_keys(hash)
16
+ Celsius.deep_stringify_keys!(Celsius.deep_clone(hash))
17
+ end
18
+
19
+ #
20
+ private
21
+ #
22
+
23
+ # http://stackoverflow.com/questions/8379596/how-do-i-convert-a-ruby-hash-so-that-all-of-its-keys-are-symbols
24
+ def self.deep_stringify_keys!(hash_or_element)
25
+ case hash_or_element
26
+ when Hash
27
+ Hash[
28
+ hash_or_element.map do |key, value|
29
+ [ key.respond_to?(:to_s) ? key.to_s : key, deep_stringify_keys(value) ]
30
+ end
31
+ ]
32
+ when Enumerable
33
+ hash_or_element.map { |value| deep_stringify_keys(value) }
34
+ else
35
+ hash_or_element
36
+ end
37
+ end
5
38
  end
@@ -0,0 +1,6 @@
1
+ describe Celsius do
2
+ it "has a class called Adapter" do
3
+ expect(Celsius.const_defined? :Adapter).to be true
4
+ expect(Celsius::Adapter.class.is_a? Class)
5
+ end
6
+ end
@@ -0,0 +1,15 @@
1
+ require "simplecov"
2
+ SimpleCov.start
3
+
4
+ require "celsius"
5
+ begin
6
+ require "pry"
7
+ rescue LoadError
8
+ end
9
+
10
+ RSpec.configure do |config|
11
+ end
12
+
13
+ def read_asset(path_to_file)
14
+ File.read(File.expand_path(File.join(File.dirname(__FILE__), "assets", path_to_file)))
15
+ end
metadata CHANGED
@@ -1,87 +1,133 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: celsius
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1
5
- prerelease:
4
+ version: 0.2.0
6
5
  platform: ruby
7
6
  authors:
8
- - René Sprotte
9
7
  - Michael Sievers
10
8
  autorequire:
11
9
  bindir: bin
12
10
  cert_chain: []
13
- date: 2012-09-26 00:00:00.000000000 Z
11
+ date: 2014-08-06 00:00:00.000000000 Z
14
12
  dependencies:
15
13
  - !ruby/object:Gem::Dependency
16
- name: celsius-common
14
+ name: deep_merger
17
15
  requirement: !ruby/object:Gem::Requirement
18
- none: false
19
16
  requirements:
20
- - - ! '>='
17
+ - - ">="
21
18
  - !ruby/object:Gem::Version
22
- version: '0'
19
+ version: 0.0.2
23
20
  type: :runtime
24
21
  prerelease: false
25
22
  version_requirements: !ruby/object:Gem::Requirement
26
- none: false
27
23
  requirements:
28
- - - ! '>='
24
+ - - ">="
29
25
  - !ruby/object:Gem::Version
30
- version: '0'
26
+ version: 0.0.2
31
27
  - !ruby/object:Gem::Dependency
32
- name: celsius-ui
28
+ name: bundler
33
29
  requirement: !ruby/object:Gem::Requirement
34
- none: false
35
30
  requirements:
36
- - - ! '>='
31
+ - - ">="
32
+ - !ruby/object:Gem::Version
33
+ version: '1.5'
34
+ type: :development
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - ">="
39
+ - !ruby/object:Gem::Version
40
+ version: '1.5'
41
+ - !ruby/object:Gem::Dependency
42
+ name: rspec
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - ">="
46
+ - !ruby/object:Gem::Version
47
+ version: 3.0.0
48
+ - - "<"
49
+ - !ruby/object:Gem::Version
50
+ version: 4.0.0
51
+ type: :development
52
+ prerelease: false
53
+ version_requirements: !ruby/object:Gem::Requirement
54
+ requirements:
55
+ - - ">="
56
+ - !ruby/object:Gem::Version
57
+ version: 3.0.0
58
+ - - "<"
59
+ - !ruby/object:Gem::Version
60
+ version: 4.0.0
61
+ - !ruby/object:Gem::Dependency
62
+ name: simplecov
63
+ requirement: !ruby/object:Gem::Requirement
64
+ requirements:
65
+ - - ">="
66
+ - !ruby/object:Gem::Version
67
+ version: 0.8.2
68
+ type: :development
69
+ prerelease: false
70
+ version_requirements: !ruby/object:Gem::Requirement
71
+ requirements:
72
+ - - ">="
73
+ - !ruby/object:Gem::Version
74
+ version: 0.8.2
75
+ - !ruby/object:Gem::Dependency
76
+ name: rake
77
+ requirement: !ruby/object:Gem::Requirement
78
+ requirements:
79
+ - - ">="
37
80
  - !ruby/object:Gem::Version
38
81
  version: '0'
39
- type: :runtime
82
+ type: :development
40
83
  prerelease: false
41
84
  version_requirements: !ruby/object:Gem::Requirement
42
- none: false
43
85
  requirements:
44
- - - ! '>='
86
+ - - ">="
45
87
  - !ruby/object:Gem::Version
46
88
  version: '0'
47
89
  description: Common Library Search Interface
48
- email:
49
- - ubpb-celsius@googlegroups.com
90
+ email:
50
91
  executables: []
51
92
  extensions: []
52
93
  extra_rdoc_files: []
53
94
  files:
54
- - .gitignore
95
+ - ".gitignore"
96
+ - ".rspec"
55
97
  - Gemfile
56
- - LICENSE
98
+ - LICENSE.txt
57
99
  - README.md
58
100
  - Rakefile
59
101
  - celsius.gemspec
60
102
  - lib/celsius.rb
103
+ - lib/celsius/adapter.rb
61
104
  - lib/celsius/version.rb
105
+ - spec/celsius_spec.rb
106
+ - spec/spec_helper.rb
62
107
  homepage: http://github.com/ubpb/celsius
63
108
  licenses:
64
109
  - MIT
110
+ metadata: {}
65
111
  post_install_message:
66
112
  rdoc_options: []
67
113
  require_paths:
68
114
  - lib
69
115
  required_ruby_version: !ruby/object:Gem::Requirement
70
- none: false
71
116
  requirements:
72
- - - ! '>='
117
+ - - ">="
73
118
  - !ruby/object:Gem::Version
74
119
  version: '0'
75
120
  required_rubygems_version: !ruby/object:Gem::Requirement
76
- none: false
77
121
  requirements:
78
- - - ! '>='
122
+ - - ">="
79
123
  - !ruby/object:Gem::Version
80
124
  version: '0'
81
125
  requirements: []
82
126
  rubyforge_project:
83
- rubygems_version: 1.8.24
127
+ rubygems_version: 2.4.1
84
128
  signing_key:
85
- specification_version: 3
86
- summary: celsius-0.0.1
87
- test_files: []
129
+ specification_version: 4
130
+ summary: celsius-0.2.0
131
+ test_files:
132
+ - spec/celsius_spec.rb
133
+ - spec/spec_helper.rb