bloc 0.0.1 → 0.0.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/bloc.gemspec CHANGED
@@ -4,8 +4,8 @@ require "./lib/bloc/version"
4
4
  Gem::Specification.new do |s|
5
5
  s.name = "bloc"
6
6
  s.version = Bloc::VERSION
7
- s.authors = ["Roshan Choxi"]
8
- s.email = ["roshan.choxi@gmail.com"]
7
+ s.authors = ["Roshan Choxi", "Dave Paola"]
8
+ s.email = ["roshan.choxi@gmail.com", "dpaola2@gmail.com"]
9
9
  s.summary = %q{A CLI For Bloc}
10
10
  s.description = %q{A command-line tool for Bloc}
11
11
 
@@ -4,18 +4,58 @@ module Bloc
4
4
  MANIFEST_NOT_FOUND = "Unable to find Bloc Manifest in bloc/bloc_manifest.json".red
5
5
  MANIFEST_PATH = File.join("bloc", "bloc_manifest.json")
6
6
  INVALID_MANIFEST = "Invalid JSON in Bloc Manifest: #{MANIFEST_PATH}".red
7
- VALID_MANIFEST = "Valid Bloc Monifest".green
7
+ VALID_MANIFEST = "Valid Bloc Manifest".green
8
+ NO_DEFAULT_COURSE_FILE = "No default file for course specified (OK)".green
9
+ VALID_DEFAULT_COURSE_FILE = "Default file for course exists (OK)".green
10
+ INVALID_DEFAULT_COURSE_FILE = "Default file for course does not exist (expected %s)".red
11
+ NO_DEFAULT_CHAPTER_FILE = "No default file for chapter specified (OK): %s".green
12
+ VALID_DEFAULT_CHAPTER_FILE = "Default file for chapter exists (OK): %s".green
13
+ INVALID_DEFAULT_CHAPTER_FILE = "Default file for chapter does not exist: %s (expected %s)".red
8
14
 
9
15
  def self.run(*args)
16
+ manifest = parse_manifest
17
+ check_course_default_file manifest
18
+ check_chapter_default_files manifest
19
+ end
20
+
21
+ def self.parse_manifest
10
22
  raise MANIFEST_NOT_FOUND unless File.exists?(MANIFEST_PATH)
11
- manifest= File.read(MANIFEST_PATH)
23
+ manifest_raw = File.read(MANIFEST_PATH)
12
24
 
13
25
  begin
14
- JSON.parse(manifest)
26
+ manifest = JSON.parse(manifest_raw)
15
27
  puts VALID_MANIFEST
16
28
  rescue
17
29
  raise INVALID_MANIFEST
18
30
  end
31
+ manifest
32
+ end
33
+
34
+ def self.check_course_default_file(manifest)
35
+ course_default_file = manifest["default_file"]
36
+ if course_default_file.nil?
37
+ puts NO_DEFAULT_COURSE_FILE
38
+ else
39
+ if File.exists? course_default_file
40
+ puts VALID_DEFAULT_COURSE_FILE
41
+ else
42
+ raise INVALID_DEFAULT_COURSE_FILE % manifest
43
+ end
44
+ end
45
+ end
46
+
47
+ def self.check_chapter_default_files(manifest)
48
+ manifest["chapters"].each do |chapter|
49
+ if chapter["default_file"].nil?
50
+ puts NO_DEFAULT_CHAPTER_FILE % chapter["name"]
51
+ else
52
+ if File.exists? chapter["default_file"]
53
+ puts VALID_DEFAULT_CHAPTER_FILE % chapter["name"]
54
+ else
55
+ raise INVALID_DEFAULT_CHAPTER_FILE % [chapter["name"], chapter["default_file"]]
56
+ end
57
+ end
58
+ end
19
59
  end
20
60
  end
21
61
  end
data/lib/bloc/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module Bloc
2
- VERSION = "0.0.1"
2
+ VERSION = "0.0.2"
3
3
  end
metadata CHANGED
@@ -1,102 +1,81 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: bloc
3
- version: !ruby/object:Gem::Version
4
- hash: 29
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.2
5
5
  prerelease:
6
- segments:
7
- - 0
8
- - 0
9
- - 1
10
- version: 0.0.1
11
6
  platform: ruby
12
- authors:
7
+ authors:
13
8
  - Roshan Choxi
9
+ - Dave Paola
14
10
  autorequire:
15
11
  bindir: bin
16
12
  cert_chain: []
17
-
18
- date: 2012-03-01 00:00:00 Z
19
- dependencies:
20
- - !ruby/object:Gem::Dependency
13
+ date: 2012-03-02 00:00:00.000000000Z
14
+ dependencies:
15
+ - !ruby/object:Gem::Dependency
21
16
  name: rspec
22
- prerelease: false
23
- requirement: &id001 !ruby/object:Gem::Requirement
17
+ requirement: &70111286128500 !ruby/object:Gem::Requirement
24
18
  none: false
25
- requirements:
26
- - - ">="
27
- - !ruby/object:Gem::Version
28
- hash: 3
29
- segments:
30
- - 0
31
- version: "0"
19
+ requirements:
20
+ - - ! '>='
21
+ - !ruby/object:Gem::Version
22
+ version: '0'
32
23
  type: :development
33
- version_requirements: *id001
34
- - !ruby/object:Gem::Dependency
35
- name: fakefs
36
24
  prerelease: false
37
- requirement: &id002 !ruby/object:Gem::Requirement
25
+ version_requirements: *70111286128500
26
+ - !ruby/object:Gem::Dependency
27
+ name: fakefs
28
+ requirement: &70111286128080 !ruby/object:Gem::Requirement
38
29
  none: false
39
- requirements:
40
- - - ">="
41
- - !ruby/object:Gem::Version
42
- hash: 3
43
- segments:
44
- - 0
45
- version: "0"
30
+ requirements:
31
+ - - ! '>='
32
+ - !ruby/object:Gem::Version
33
+ version: '0'
46
34
  type: :development
47
- version_requirements: *id002
48
- - !ruby/object:Gem::Dependency
49
- name: ruby-debug19
50
35
  prerelease: false
51
- requirement: &id003 !ruby/object:Gem::Requirement
36
+ version_requirements: *70111286128080
37
+ - !ruby/object:Gem::Dependency
38
+ name: ruby-debug19
39
+ requirement: &70111286127660 !ruby/object:Gem::Requirement
52
40
  none: false
53
- requirements:
54
- - - ">="
55
- - !ruby/object:Gem::Version
56
- hash: 3
57
- segments:
58
- - 0
59
- version: "0"
41
+ requirements:
42
+ - - ! '>='
43
+ - !ruby/object:Gem::Version
44
+ version: '0'
60
45
  type: :development
61
- version_requirements: *id003
62
- - !ruby/object:Gem::Dependency
63
- name: json
64
46
  prerelease: false
65
- requirement: &id004 !ruby/object:Gem::Requirement
47
+ version_requirements: *70111286127660
48
+ - !ruby/object:Gem::Dependency
49
+ name: json
50
+ requirement: &70111286127240 !ruby/object:Gem::Requirement
66
51
  none: false
67
- requirements:
68
- - - ">="
69
- - !ruby/object:Gem::Version
70
- hash: 3
71
- segments:
72
- - 0
73
- version: "0"
52
+ requirements:
53
+ - - ! '>='
54
+ - !ruby/object:Gem::Version
55
+ version: '0'
74
56
  type: :runtime
75
- version_requirements: *id004
76
- - !ruby/object:Gem::Dependency
77
- name: colorize
78
57
  prerelease: false
79
- requirement: &id005 !ruby/object:Gem::Requirement
58
+ version_requirements: *70111286127240
59
+ - !ruby/object:Gem::Dependency
60
+ name: colorize
61
+ requirement: &70111286126820 !ruby/object:Gem::Requirement
80
62
  none: false
81
- requirements:
82
- - - ">="
83
- - !ruby/object:Gem::Version
84
- hash: 3
85
- segments:
86
- - 0
87
- version: "0"
63
+ requirements:
64
+ - - ! '>='
65
+ - !ruby/object:Gem::Version
66
+ version: '0'
88
67
  type: :runtime
89
- version_requirements: *id005
68
+ prerelease: false
69
+ version_requirements: *70111286126820
90
70
  description: A command-line tool for Bloc
91
- email:
71
+ email:
92
72
  - roshan.choxi@gmail.com
93
- executables:
73
+ - dpaola2@gmail.com
74
+ executables:
94
75
  - bloc
95
76
  extensions: []
96
-
97
77
  extra_rdoc_files: []
98
-
99
- files:
78
+ files:
100
79
  - .gitignore
101
80
  - .rvmrc
102
81
  - Gemfile
@@ -112,37 +91,28 @@ files:
112
91
  - spec/spec_helper.rb
113
92
  homepage:
114
93
  licenses: []
115
-
116
94
  post_install_message:
117
95
  rdoc_options: []
118
-
119
- require_paths:
96
+ require_paths:
120
97
  - lib
121
- required_ruby_version: !ruby/object:Gem::Requirement
98
+ required_ruby_version: !ruby/object:Gem::Requirement
122
99
  none: false
123
- requirements:
124
- - - ">="
125
- - !ruby/object:Gem::Version
126
- hash: 3
127
- segments:
128
- - 0
129
- version: "0"
130
- required_rubygems_version: !ruby/object:Gem::Requirement
100
+ requirements:
101
+ - - ! '>='
102
+ - !ruby/object:Gem::Version
103
+ version: '0'
104
+ required_rubygems_version: !ruby/object:Gem::Requirement
131
105
  none: false
132
- requirements:
133
- - - ">="
134
- - !ruby/object:Gem::Version
135
- hash: 3
136
- segments:
137
- - 0
138
- version: "0"
106
+ requirements:
107
+ - - ! '>='
108
+ - !ruby/object:Gem::Version
109
+ version: '0'
139
110
  requirements: []
140
-
141
111
  rubyforge_project: bloc
142
- rubygems_version: 1.8.17
112
+ rubygems_version: 1.8.15
143
113
  signing_key:
144
114
  specification_version: 3
145
115
  summary: A CLI For Bloc
146
- test_files:
116
+ test_files:
147
117
  - spec/command/validate_spec.rb
148
118
  - spec/spec_helper.rb