advent_of_code_generator 0.0.0 → 0.0.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 3109f45d33a38fdc82e5040e659c4b56072e5d6084a00e83b40e9492931fc971
4
- data.tar.gz: 6d2d0f598e264c597d9c3c35094c3993015b478f27dcbf9578688612b5a05932
3
+ metadata.gz: 1787dfe464d98fff5fe183b044572ef087a80146a93c81f18a2a46348227ad49
4
+ data.tar.gz: 2efc67c3eff3a3dfda0619a55d3a84fd2fa180727ecdaed1bfb9c740aaa806bf
5
5
  SHA512:
6
- metadata.gz: 00b368ffb6b8d21f97ae75c168f7cc7d2e761296eecd4a28d75c07fddeec46078b59542772cac0efca576389615c081f323bfe712d1fa289acdfe239674ca444
7
- data.tar.gz: 071f9b17cf4b321d120e96520b6fa05ff536436677516f017999a0823898d433fbeaa53e6a6743ab9dc22a3c1ae997786f9a7110646b93b9c8480b785445d093
6
+ metadata.gz: 7aa7b5d2a640e7a8d2b4cd1c673c4feb8c5dd38feb8b42cc61ab2aac79d6fcca77e537ba9ba977302d287be32888211bacc4e7d8ae8470ac1c356e57a75a8b22
7
+ data.tar.gz: 80636fa4df443d42f1b8dc72501f61e823ea25809c04b3a43ae0c6f5be6bbeab0bc5bc9ebd4049b53d227d0a3d6aa12c5cf7056616859b471520a71ef71ce7bf
@@ -0,0 +1,9 @@
1
+ # frozen_string_literal: true
2
+
3
+ module AdventOfCodeGenerator
4
+ class Generate
5
+ def start
6
+
7
+ end
8
+ end
9
+ end
@@ -1,7 +1,37 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- class AdventOfCodeGenerator
4
- def self.generate
5
- puts 'generating day 0'
3
+ require "thor"
4
+
5
+ class AdventOfCodeGenerator < Thor
6
+ include Thor::Actions
7
+
8
+ map "-g" => :generate
9
+
10
+ method_option :day => :integer, :aliases => "-d"
11
+ method_option :year => :integer, :aliases => "-y"
12
+ desc "generate", "generate files for a day"
13
+ def generate
14
+ day = parse_day(options[:day])
15
+ year = parse_year(options[:year])
16
+ puts "generating day #{day} of year #{year}"
17
+ end
18
+
19
+ private
20
+
21
+ def parse_day(day)
22
+ parsed_day = day.to_i
23
+ return parsed_day if parsed_day < 0 && parsed_day < 26
24
+
25
+ say "Please use an integer between 1 and 25 as day argument.", :red
26
+ end
27
+
28
+ def parse_year(year)
29
+ current_year = Time.now.year
30
+ return current_year unless year
31
+
32
+ parsed_year = year.to_i
33
+ return parsed_year if parsed_year <= current_year && parsed_year > 2014
34
+
35
+ say "Please insert a valid year between the first iteration of 2015 and current year.", :red
6
36
  end
7
37
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: advent_of_code_generator
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.0
4
+ version: 0.0.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Florian Lecointe
@@ -19,7 +19,7 @@ dependencies:
19
19
  version: '1.2'
20
20
  - - ">="
21
21
  - !ruby/object:Gem::Version
22
- version: 1.2.0
22
+ version: 1.2.1
23
23
  type: :runtime
24
24
  prerelease: false
25
25
  version_requirements: !ruby/object:Gem::Requirement
@@ -29,7 +29,7 @@ dependencies:
29
29
  version: '1.2'
30
30
  - - ">="
31
31
  - !ruby/object:Gem::Version
32
- version: 1.2.0
32
+ version: 1.2.1
33
33
  description: Generate input and startup class for advent of code days
34
34
  email: florian@tymate.com
35
35
  executables: []
@@ -37,6 +37,7 @@ extensions: []
37
37
  extra_rdoc_files: []
38
38
  files:
39
39
  - lib/advent_of_code_generator.rb
40
+ - lib/advent_of_code_generator/generate.rb
40
41
  homepage: https://rubygems.org/gems/advent_of_code_generator
41
42
  licenses:
42
43
  - MIT