railsthemes 1.1.1 → 1.1.2

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
@@ -1,11 +1,6 @@
1
1
  source 'https://rubygems.org'
2
2
 
3
3
  gemspec
4
- gem 'thor'
5
- gem 'rest-client'
6
- gem 'launchy'
7
- gem 'json'
8
- # make sure you add any new dependencies in railsthemes.gemspec
9
4
 
10
5
  group :development do
11
6
  gem 'gem-release'
@@ -5,14 +5,14 @@ module Railsthemes
5
5
  @@already_checked = false
6
6
 
7
7
  # checks if we can cleanly install into the current working directory
8
- def self.ensure_clean_install_possible force = false
9
- return if @@already_checked unless force
8
+ def self.ensure_clean_install_possible options = {}
9
+ return if @@already_checked unless options[:force]
10
10
  ensure_in_rails_root
11
11
  ensure_bundle_is_up_to_date
12
12
  ensure_railsthemes_is_not_in_gemfile
13
13
  ensure_vcs_is_clean
14
14
  ensure_rails_version_is_valid
15
- ensure_installer_is_up_to_date
15
+ ensure_installer_is_up_to_date unless options[:hit_server] == false
16
16
  @@already_checked = true
17
17
  end
18
18
 
@@ -16,13 +16,11 @@ module Railsthemes
16
16
  # can probably just make static
17
17
  def theme_installer
18
18
  @theme_installer ||= ThemeInstaller.new
19
- @theme_installer
20
19
  end
21
20
 
22
21
  # can probably just make static
23
22
  def email_installer
24
23
  @email_installer ||= EmailInstaller.new
25
- @email_installer
26
24
  end
27
25
 
28
26
  def popup_documentation
@@ -34,9 +32,8 @@ module Railsthemes
34
32
  end
35
33
  end
36
34
 
37
- # primary method
38
35
  def install_from_file_system original_source_filepath
39
- Ensurer.ensure_clean_install_possible
36
+ Ensurer.ensure_clean_install_possible :hit_server => false
40
37
 
41
38
  # install main theme
42
39
  config = Utils.get_primary_configuration
@@ -60,9 +57,8 @@ module Railsthemes
60
57
  popup_documentation if @doc_popup
61
58
  end
62
59
 
63
- # primary method
64
60
  def install_from_code code
65
- Ensurer.ensure_clean_install_possible
61
+ Ensurer.ensure_clean_install_possible :hit_server => true
66
62
 
67
63
  logger.warn "Figuring out what to download..."
68
64
  send_gemfile code
@@ -70,6 +66,7 @@ module Railsthemes
70
66
  dl_hash = get_download_hash code
71
67
 
72
68
  if dl_hash
69
+ logger.debug "dl_hash: #{dl_hash.to_s}"
73
70
  Utils.with_tempdir do |tempdir|
74
71
  download_from_hash dl_hash, tempdir
75
72
  install_from_file_system tempdir
@@ -6,16 +6,14 @@ module Railsthemes
6
6
  end
7
7
 
8
8
  def self.logger
9
- if @logger
10
- @logger
11
- else
9
+ unless @logger
12
10
  @logger = Logger.new(STDOUT)
13
11
  @logger.level = Logger::WARN
14
12
 
15
13
  # just print out basic information, not all of the extra logger stuff
16
14
  @logger.formatter = proc { |severity, datetime, progname, msg| "#{msg}\n" }
17
- @logger
18
15
  end
16
+ @logger
19
17
  end
20
18
 
21
19
  def self.logger= logger
@@ -41,7 +41,7 @@ module Railsthemes
41
41
  FileUtils.mkdir_p(dest)
42
42
  end
43
43
  else
44
- unless (dest =~ /railsthemes_.*_overrides\.*/ && File.exists?(dest)) ||
44
+ unless (dest =~ /overrides\.css.*/ && File.exists?(dest)) ||
45
45
  src =~ /\/\./ # remove any pesky hidden files that crept into the archive
46
46
  logger.debug "cp #{src} #{dest}"
47
47
  FileUtils.cp(src, dest)
@@ -1,5 +1,5 @@
1
1
  module Railsthemes
2
2
  unless defined?(Railsthemes::VERSION)
3
- VERSION = "1.1.1"
3
+ VERSION = "1.1.2"
4
4
  end
5
5
  end
data/lib/railsthemes.rb CHANGED
@@ -19,13 +19,11 @@ require 'railsthemes/ensurer'
19
19
 
20
20
  module Railsthemes
21
21
  def self.server
22
- return @server if @server
23
22
  @server ||= 'https://railsthemes.com'
24
- @server
25
23
  end
26
24
 
27
25
  def self.server= server
28
- @server = server
29
26
  Logging.logger.warn "Using server: #{server}"
27
+ @server = server
30
28
  end
31
29
  end
@@ -24,7 +24,17 @@ describe Railsthemes::Ensurer do
24
24
  mock(Railsthemes::Ensurer).ensure_vcs_is_clean.times(2)
25
25
  mock(Railsthemes::Ensurer).ensure_rails_version_is_valid.times(2)
26
26
  mock(Railsthemes::Ensurer).ensure_installer_is_up_to_date.times(2)
27
- 2.times { Railsthemes::Ensurer.ensure_clean_install_possible true }
27
+ 2.times { Railsthemes::Ensurer.ensure_clean_install_possible :force => true }
28
+ end
29
+
30
+ it 'should not check installer version if we do not want to hit the server' do
31
+ mock(Railsthemes::Ensurer).ensure_in_rails_root
32
+ mock(Railsthemes::Ensurer).ensure_bundle_is_up_to_date
33
+ mock(Railsthemes::Ensurer).ensure_railsthemes_is_not_in_gemfile
34
+ mock(Railsthemes::Ensurer).ensure_vcs_is_clean
35
+ mock(Railsthemes::Ensurer).ensure_rails_version_is_valid
36
+ dont_allow(Railsthemes::Ensurer).ensure_installer_is_up_to_date
37
+ Railsthemes::Ensurer.ensure_clean_install_possible :hit_server => false, :force => true
28
38
  end
29
39
  end
30
40
 
@@ -73,7 +73,7 @@ describe Railsthemes::ThemeInstaller do
73
73
  FileUtils.mkdir_p('filepath/gems')
74
74
  FileUtils.mkdir_p('filepath/base/app/assets/stylesheets')
75
75
  FileUtils.mkdir_p("app/assets/stylesheets")
76
- @filename = 'app/assets/stylesheets/railsthemes_THEME_overrides.anything'
76
+ @filename = 'app/assets/stylesheets/overrides.css.scss'
77
77
  FileUtils.touch("filepath/base/#{@filename}")
78
78
  mock(@installer).post_copying_changes
79
79
  stub(@installer).popup_documentation
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: railsthemes
3
3
  version: !ruby/object:Gem::Version
4
- hash: 17
4
+ hash: 23
5
5
  prerelease:
6
6
  segments:
7
7
  - 1
8
8
  - 1
9
- - 1
10
- version: 1.1.1
9
+ - 2
10
+ version: 1.1.2
11
11
  platform: ruby
12
12
  authors:
13
13
  - Railsthemes
@@ -15,7 +15,7 @@ autorequire:
15
15
  bindir: bin
16
16
  cert_chain: []
17
17
 
18
- date: 2012-07-12 00:00:00 Z
18
+ date: 2012-08-14 00:00:00 Z
19
19
  dependencies:
20
20
  - !ruby/object:Gem::Dependency
21
21
  name: thor