tareek 0.0.2 → 0.1.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 CHANGED
@@ -1,7 +1,15 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: a64181699fe266f2a1d96c9db1eb42d14b3991d8
4
- data.tar.gz: 20771cd34a9a33a827eef34d04bb26c5bb6e0170
2
+ !binary "U0hBMQ==":
3
+ metadata.gz: !binary |-
4
+ MDViYTJkOTNmYjUyNTcwNTE5NjBkOTM0ZmY0NWYzOGNkNjAwMzQ0NA==
5
+ data.tar.gz: !binary |-
6
+ OTIxNDg3ZDFjNTcxMzBjMmZmMzE2ZDdhOGEyMTA4MDBjZDBkNzhjMQ==
5
7
  SHA512:
6
- metadata.gz: 86f0bad725987451243139dda152d6dad191e44b8d8108b4b72fe58f1c0450e902c748ae0f42c0a7154eae98ba749ff3eb162454d955842fc87beb7997f5ea05
7
- data.tar.gz: f5da552013dc1db019cad971f0a02f8309559dd9a9f0d7e8fc8d12fa2046f484cc0eb9158e572308f1455a7c6b00f8a3c99f612f48d34ed7ce5d3b604f5cac31
8
+ metadata.gz: !binary |-
9
+ MDg0ZDVjYzYwYzBjZDAyZTQyZGE4MjAyOTZkOGY5YjhiNjIzZjQ0ZTkwODdm
10
+ NDg2Yzc0Mzc0NjNjOTBjZjBhOGYyOTQxOTYxMWJjZmQwNWJkMmQ0NjQ0MmQz
11
+ OWI3ZDgxNDNlZGIzZmZjMDk1ODJjMDVjYmU1NmNhNzYxZDUyN2Y=
12
+ data.tar.gz: !binary |-
13
+ M2ZmZjkwYzhlYmViMWQ5MTY0OTI3NmJmYTAyM2VlYjQyZjI0MTY5YTk3ZmNl
14
+ MDExOWFiZDNkYTQ1NGFmZTAyNDU0NjJlMTMwZmY4YmZmMTZjNzk5NjQ1NmFl
15
+ ZDc3ZTdhZDk5MDRkNWIyMWNlNDZjYzliYjBiNmIyZWRlYzgzMmE=
data/README.md CHANGED
@@ -1,4 +1,5 @@
1
1
  #[Tareek](http://documentup.com/gemathon-warriors/tareek)
2
+ ### The graceful date handler !
2
3
 
3
4
  [![Gem Version](https://badge.fury.io/rb/tareek.png)](http://badge.fury.io/rb/tareek)
4
5
  [![Build Status](https://travis-ci.org/gemathon-warriors/tareek.png?branch=master)](https://travis-ci.org/gemathon-warriors/tareek)
@@ -55,8 +56,8 @@ Or install it yourself as:
55
56
  Tareek::Dates.time_at_day('1/12/2014') #=> "12:00 AM"
56
57
 
57
58
 
58
- #### Returns omniture format with time
59
- Tareek::Dates.omniture_format_with_time('1/12/2014') #=> "12/01/2014 12:00:00 AM"
59
+ #### Returns omniture formatted date with time
60
+ Tareek::Dates.omniture_formated_with_time('1/12/2014') #=> "12/01/2014 12:00:00 AM"
60
61
 
61
62
 
62
63
  ## Contributing
@@ -10,6 +10,9 @@ module Tareek
10
10
  class Dates
11
11
  class << self
12
12
 
13
+ DAYS_IN_A_MONTH = [nil, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]
14
+ MONTHS = [nil, "Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct","Nov", "Dec"]
15
+
13
16
  def get_middle_of_next_month_date(year, month)
14
17
  (parse_date(month,year) + 45 * 24 * 60 * 60).to_date
15
18
  end
@@ -56,7 +59,7 @@ module Tareek
56
59
  convert_to_date(date).strftime('%I:%M %p')
57
60
  end
58
61
 
59
- def omniture_format_with_time(date)
62
+ def omniture_formatted_with_time(date)
60
63
  convert_to_date(date).strftime('%m/%d/%Y %I:%M:%S %p')
61
64
  end
62
65
 
@@ -64,7 +67,32 @@ module Tareek
64
67
  (date.kind_of? Date) ? date : Date.parse(date)
65
68
  end
66
69
 
67
- end
70
+ def today_date_in_dd_mm_yy_format
71
+ Time.now.strftime('%d-%m-%Y')
72
+ end
68
73
 
74
+ def today_date_in_mm_dd_yy_format
75
+ Time.now.strftime('%m-%d-%Y')
76
+ end
77
+
78
+ def weekend?(day)
79
+ [0,6].include?(convert_to_date(day).wday)
80
+ end
81
+
82
+ def weekday?(day)
83
+ !(weekend?(day))
84
+ end
85
+
86
+ def days_in_a_month_of(month, year)
87
+ month = MONTHS.index(month)
88
+ return 29 if(month == 2 && Date.leap?(year.to_i))
89
+ DAYS_IN_A_MONTH[month]
90
+ end
91
+
92
+ def feb_month_of_28_days_for?(year)
93
+ days_in_a_month_of("Feb", year.to_i) == 28
94
+ end
95
+
96
+ end
69
97
  end
70
98
  end
@@ -1,3 +1,3 @@
1
1
  module Tareek
2
- VERSION = "0.0.2"
2
+ VERSION = "0.1.0"
3
3
  end
@@ -23,8 +23,8 @@ describe "Humanize Dates :: " do
23
23
  end
24
24
 
25
25
  it "should provide date for next specified weekday" do
26
- pending "Dont know how to test this"
27
- day_middle_of_past_month = Tareek::Dates.date_of_next("Sunday")
26
+ offset = Date.today.sunday? ? 0 : 7
27
+ Tareek::Dates.date_of_next("Sunday").should == Tareek::Dates.convert_to_date('Sunday') + offset
28
28
  end
29
29
 
30
30
  it "should return humanized date without day" do
@@ -42,9 +42,48 @@ describe "Humanize Dates :: " do
42
42
  humanized_date.should == "12:00 AM"
43
43
  end
44
44
 
45
- it "should return omniture format with time" do
46
- humanized_date = Tareek::Dates.omniture_format_with_time('1/12/2014')
47
- humanized_date.should == "12/01/2014 12:00:00 AM"
45
+ it "should return omniture formatted date with time" do
46
+ Tareek::Dates.omniture_formatted_with_time('1/12/2014').should == "12/01/2014 12:00:00 AM"
47
+ end
48
+
49
+ it "should return today date in dd-mm-yyyy format" do
50
+ today_date = Tareek::Dates.today_date_in_dd_mm_yy_format
51
+ Time.now.strftime('%d-%m-%Y').should == today_date
52
+ end
53
+
54
+ it "should return today date in mm-dd-yyyy format" do
55
+ today_date = Tareek::Dates.today_date_in_mm_dd_yy_format
56
+ Time.now.strftime('%m-%d-%Y').should == today_date
57
+ end
58
+
59
+ it "should return true that '22-02-2014' is a weekend" do
60
+ weekend = Tareek::Dates.weekend?("22-02-2014")
61
+ weekend.should == true
62
+ end
63
+
64
+ it "should return true that '24-02-2014' is a weekday" do
65
+ weekday = Tareek::Dates.weekday?("24-02-2014")
66
+ weekday.should == true
67
+ end
68
+
69
+ it "should return 29 days for Feb 2012" do
70
+ total_days = Tareek::Dates.days_in_a_month_of("Feb", 2012)
71
+ total_days.should == 29
72
+ end
73
+
74
+ it "should return 28 days for Feb 2014" do
75
+ total_days = Tareek::Dates.days_in_a_month_of("Feb", 2014)
76
+ total_days.should == 28
77
+ end
78
+
79
+ it "should return fals that Feb 2012 is of 28 days" do
80
+ total_days = Tareek::Dates.feb_month_of_28_days_for?(2012)
81
+ total_days.should == false
82
+ end
83
+
84
+ it "should return true that Feb 2014 is of 28 days" do
85
+ total_days = Tareek::Dates.feb_month_of_28_days_for?(2014)
86
+ total_days.should == true
48
87
  end
49
88
 
50
89
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: tareek
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.2
4
+ version: 0.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Nikhil Nanjappa
@@ -12,7 +12,7 @@ authors:
12
12
  autorequire:
13
13
  bindir: bin
14
14
  cert_chain: []
15
- date: 2014-02-22 00:00:00.000000000 Z
15
+ date: 2014-02-25 00:00:00.000000000 Z
16
16
  dependencies:
17
17
  - !ruby/object:Gem::Dependency
18
18
  name: bundler
@@ -32,56 +32,56 @@ dependencies:
32
32
  name: rake
33
33
  requirement: !ruby/object:Gem::Requirement
34
34
  requirements:
35
- - - '>='
35
+ - - ! '>='
36
36
  - !ruby/object:Gem::Version
37
37
  version: '0'
38
38
  type: :development
39
39
  prerelease: false
40
40
  version_requirements: !ruby/object:Gem::Requirement
41
41
  requirements:
42
- - - '>='
42
+ - - ! '>='
43
43
  - !ruby/object:Gem::Version
44
44
  version: '0'
45
45
  - !ruby/object:Gem::Dependency
46
46
  name: activesupport
47
47
  requirement: !ruby/object:Gem::Requirement
48
48
  requirements:
49
- - - '>='
49
+ - - ! '>='
50
50
  - !ruby/object:Gem::Version
51
51
  version: 2.3.16
52
52
  type: :development
53
53
  prerelease: false
54
54
  version_requirements: !ruby/object:Gem::Requirement
55
55
  requirements:
56
- - - '>='
56
+ - - ! '>='
57
57
  - !ruby/object:Gem::Version
58
58
  version: 2.3.16
59
59
  - !ruby/object:Gem::Dependency
60
60
  name: rspec
61
61
  requirement: !ruby/object:Gem::Requirement
62
62
  requirements:
63
- - - '>='
63
+ - - ! '>='
64
64
  - !ruby/object:Gem::Version
65
65
  version: '0'
66
66
  type: :development
67
67
  prerelease: false
68
68
  version_requirements: !ruby/object:Gem::Requirement
69
69
  requirements:
70
- - - '>='
70
+ - - ! '>='
71
71
  - !ruby/object:Gem::Version
72
72
  version: '0'
73
73
  - !ruby/object:Gem::Dependency
74
74
  name: coveralls
75
75
  requirement: !ruby/object:Gem::Requirement
76
76
  requirements:
77
- - - '>='
77
+ - - ! '>='
78
78
  - !ruby/object:Gem::Version
79
79
  version: '0'
80
80
  type: :development
81
81
  prerelease: false
82
82
  version_requirements: !ruby/object:Gem::Requirement
83
83
  requirements:
84
- - - '>='
84
+ - - ! '>='
85
85
  - !ruby/object:Gem::Version
86
86
  version: '0'
87
87
  description: It gives you dates like, middle of the month, middle of next month etc.
@@ -102,7 +102,6 @@ files:
102
102
  - LICENSE.txt
103
103
  - README.md
104
104
  - Rakefile
105
- - lib/cool_dates.rb
106
105
  - lib/tareek.rb
107
106
  - lib/tareek/version.rb
108
107
  - spec/spec_helper.rb
@@ -118,12 +117,12 @@ require_paths:
118
117
  - lib
119
118
  required_ruby_version: !ruby/object:Gem::Requirement
120
119
  requirements:
121
- - - '>='
120
+ - - ! '>='
122
121
  - !ruby/object:Gem::Version
123
122
  version: '0'
124
123
  required_rubygems_version: !ruby/object:Gem::Requirement
125
124
  requirements:
126
- - - '>='
125
+ - - ! '>='
127
126
  - !ruby/object:Gem::Version
128
127
  version: '0'
129
128
  requirements: []
@@ -1,18 +0,0 @@
1
- require 'time'
2
- class CoolDates
3
- def get_middle_of_next_month_date year, month
4
- (Time.parse("1-#{month}-#{year} 0:1 UTC") + 45 * 24 * 60 * 60).to_date
5
- end
6
-
7
- def get_middle_of_past_month_date year, month
8
- (Time.parse("1-#{month}-#{year} 0:1 UTC") - 15 * 24 * 60 * 60).to_date
9
- end
10
-
11
- def self.get_middle_of_next_month_date year, month
12
- (Time.parse("1-#{month}-#{year} 0:1 UTC") + 45 * 24 * 60 * 60).to_date
13
- end
14
-
15
- def self.get_middle_of_past_month_date year, month
16
- (Time.parse("1-#{month}-#{year} 0:1 UTC") - 15 * 24 * 60 * 60).to_date
17
- end
18
- end