mmini 1.0.0 → 1.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (3) hide show
  1. checksums.yaml +4 -4
  2. data/lib/lib_mmini.rb +27 -6
  3. metadata +1 -1
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 8a8d7c1ca38bb1819dc211f702c7ba5ecf43bf40baef9a95ff0263fcfc1355d6
4
- data.tar.gz: ded85f3f690442112ca28a1c4d14db077a61360da3fc3a9d9133cc6847d05dc8
3
+ metadata.gz: de96e832a7b8180c0c596469f8a0d136902ace7d97bd7a58306ea387792cfef8
4
+ data.tar.gz: 1a6bff66eb7bdbe53733245a5b0108829df17cd79dfeb8b78dd8f7f54857f77c
5
5
  SHA512:
6
- metadata.gz: bd6f8cb44b877558d0d00aaace396747f1e5667bbfac5d7742e74eabd7bcbccd275956d26e9ec355e1911b622f5e90a96ee217d4c4545bbe9f4435be9efa05ef
7
- data.tar.gz: a205d7541eabdb5a0e4757a6bc3440ee5a26ed287750bcfda7db6300a5490528684d68fe26d93f70df5abc42731c413632f6d241446f4320f6b15ca473539c78
6
+ metadata.gz: 1c1251cac2d8297b8eb428aba9b57c12757b512a7bec72262404e36a777bdd7442c2109604d01edc5d21c3a00c8f55afa87d89ebbaaa25df44a3cf81f4644a11
7
+ data.tar.gz: db61f583ab6d7281a22fc38f08197479395249a3e46bdd935f096e33cd0fa914f3e307eb9f63c81a9031046a8b7290a7abc2f644b8f31a456813df4adde457af
@@ -3,6 +3,9 @@
3
3
  require 'cgi'
4
4
  require 'json'
5
5
  require 'net/http'
6
+ require 'optparse'
7
+ require 'ostruct'
8
+ require 'rubygems'
6
9
  require 'uri'
7
10
 
8
11
  module LibMmini
@@ -10,6 +13,28 @@ module LibMmini
10
13
  BACKEND = URI.parse(BACKEND_BASE + '/minify')
11
14
  HTTP = Net::HTTP.new(BACKEND.host, BACKEND.port = nil)
12
15
 
16
+ def parse_args(argv)
17
+ options = OpenStruct.new
18
+ options.url = nil
19
+
20
+ OptionParser.new do |opts|
21
+ opts.on_tail('-v', '--version', 'Show version') do
22
+ spec = Gem::Specification.load('mmini.gemspec')
23
+ puts spec.version
24
+ exit
25
+ end
26
+ end.parse!
27
+
28
+ if argv.length != 1
29
+ puts 'Only single argument supported'
30
+ exit
31
+ end
32
+
33
+ options[:url] = argv.first
34
+ options.freeze
35
+ options
36
+ end
37
+
13
38
  def valid_url?(string)
14
39
  hits = string =~ /\A#{URI::DEFAULT_PARSER.make_regexp}\z/
15
40
  !hits.nil? && hits.zero?
@@ -28,12 +53,8 @@ module LibMmini
28
53
  end
29
54
 
30
55
  def run(argv, post_url_fn)
31
- if argv.length != 1
32
- puts 'Only single argument supported'
33
- exit!
34
- end
35
-
36
- url = argv.first
56
+ args = parse_args(argv)
57
+ url = args.url
37
58
 
38
59
  unless valid_url?(url)
39
60
  puts 'URL is invalid: ' + url
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mmini
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.0
4
+ version: 1.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Simon Egersand