DayFinder 0.2.0 → 0.3.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 +4 -4
- data/.gitignore +2 -0
- data/.idea/DayFinder.iml +5 -4
- data/.idea/workspace.xml +63 -8
- data/DayFinder-0.2.0.gem +0 -0
- data/README.md +2 -2
- data/lib/DayFinder/version.rb +1 -1
- data/lib/DayFinder.rb +47 -9
- metadata +4 -3
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 6a378c32e05f6c012683224127bcfddbc5f1c1fb205dd1e88bda144b892bbd3c
|
|
4
|
+
data.tar.gz: 8feb0805661efc152de94827b8fa3398bef54af34732261b1021f5ab573fe9b2
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: ecc6455f8e6bdddeb6ef7d8a6eaccea0dd66c9a8c2935ac4e9fac372cffab07502d7fce591ffa25d3263467f30263f0500432a5ec11fab07069b52c2c3752d96
|
|
7
|
+
data.tar.gz: 2c6404730e9e29127f09d7920beb2e3a2ec8a5472a3ac970074c5243f2556e3f60010b338319db6542a2f948663a93c81cf61a49fe80e07a1ef6260ba10be827
|
data/.gitignore
CHANGED
data/.idea/DayFinder.iml
CHANGED
|
@@ -8,12 +8,13 @@
|
|
|
8
8
|
<sourceFolder url="file://$MODULE_DIR$/features" isTestSource="true" />
|
|
9
9
|
<sourceFolder url="file://$MODULE_DIR$/spec" isTestSource="true" />
|
|
10
10
|
<sourceFolder url="file://$MODULE_DIR$/test" isTestSource="true" />
|
|
11
|
+
<excludeFolder url="file://$MODULE_DIR$/.idea/inspectionProfiles" />
|
|
11
12
|
</content>
|
|
12
|
-
<orderEntry type="jdk" jdkName="rbenv: 3.0.
|
|
13
|
+
<orderEntry type="jdk" jdkName="rbenv: 3.0.2" jdkType="RUBY_SDK" />
|
|
13
14
|
<orderEntry type="sourceFolder" forTests="false" />
|
|
14
|
-
<orderEntry type="library" scope="PROVIDED" name="bundler (v2.2.
|
|
15
|
-
<orderEntry type="library" scope="PROVIDED" name="rake (v13.0.3, rbenv: 3.0.
|
|
16
|
-
<orderEntry type="library" scope="PROVIDED" name="rbs (v1.0.
|
|
15
|
+
<orderEntry type="library" scope="PROVIDED" name="bundler (v2.2.28, rbenv: 3.0.2) [gem]" level="application" />
|
|
16
|
+
<orderEntry type="library" scope="PROVIDED" name="rake (v13.0.3, rbenv: 3.0.2) [gem]" level="application" />
|
|
17
|
+
<orderEntry type="library" scope="PROVIDED" name="rbs (v1.0.4, rbenv: 3.0.2) [gem]" level="application" />
|
|
17
18
|
</component>
|
|
18
19
|
<component name="RakeTasksCache">
|
|
19
20
|
<option name="myRootTask">
|
data/.idea/workspace.xml
CHANGED
|
@@ -1,8 +1,10 @@
|
|
|
1
1
|
<?xml version="1.0" encoding="UTF-8"?>
|
|
2
2
|
<project version="4">
|
|
3
|
+
<component name="AutoImportSettings">
|
|
4
|
+
<option name="autoReloadType" value="SELECTIVE" />
|
|
5
|
+
</component>
|
|
3
6
|
<component name="ChangeListManager">
|
|
4
|
-
<list default="true" id="a023c905-22f2-4314-9083-cfceccb270ad" name="Default Changelist" comment="
|
|
5
|
-
<change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
|
|
7
|
+
<list default="true" id="a023c905-22f2-4314-9083-cfceccb270ad" name="Default Changelist" comment="version.rb updated">
|
|
6
8
|
<change beforePath="$PROJECT_DIR$/lib/DayFinder.rb" beforeDir="false" afterPath="$PROJECT_DIR$/lib/DayFinder.rb" afterDir="false" />
|
|
7
9
|
</list>
|
|
8
10
|
<option name="SHOW_DIALOG" value="false" />
|
|
@@ -11,8 +13,21 @@
|
|
|
11
13
|
<option name="LAST_RESOLUTION" value="IGNORE" />
|
|
12
14
|
</component>
|
|
13
15
|
<component name="Git.Settings">
|
|
16
|
+
<option name="RECENT_BRANCH_BY_REPOSITORY">
|
|
17
|
+
<map>
|
|
18
|
+
<entry key="$PROJECT_DIR$" value="main" />
|
|
19
|
+
</map>
|
|
20
|
+
</option>
|
|
14
21
|
<option name="RECENT_GIT_ROOT_PATH" value="$PROJECT_DIR$" />
|
|
15
22
|
</component>
|
|
23
|
+
<component name="GitSEFilterConfiguration">
|
|
24
|
+
<file-type-list>
|
|
25
|
+
<filtered-out-file-type name="LOCAL_BRANCH" />
|
|
26
|
+
<filtered-out-file-type name="REMOTE_BRANCH" />
|
|
27
|
+
<filtered-out-file-type name="TAG" />
|
|
28
|
+
<filtered-out-file-type name="COMMIT_BY_MESSAGE" />
|
|
29
|
+
</file-type-list>
|
|
30
|
+
</component>
|
|
16
31
|
<component name="ProjectId" id="1vTq5Iax0Go21U7z9Iz5SKzXLMV" />
|
|
17
32
|
<component name="ProjectLevelVcsManager" settingsEditedManually="true">
|
|
18
33
|
<ConfirmationsSetting value="2" id="Add" />
|
|
@@ -32,11 +47,13 @@
|
|
|
32
47
|
<property name="node.js.selected.package.eslint" value="(autodetect)" />
|
|
33
48
|
<property name="node.js.selected.package.tslint" value="(autodetect)" />
|
|
34
49
|
<property name="nodejs_package_manager_path" value="npm" />
|
|
50
|
+
<property name="settings.editor.selected.configurable" value="preferences.editor" />
|
|
35
51
|
</component>
|
|
36
52
|
<component name="RunAnythingCache">
|
|
37
53
|
<option name="myCommands">
|
|
38
54
|
<command value="gem install hello_rubymine" />
|
|
39
55
|
<command value="gem install DayFinder-0.1.0.gem" />
|
|
56
|
+
<command value="gem install DayFinder-0.2.0.gem" />
|
|
40
57
|
</option>
|
|
41
58
|
</component>
|
|
42
59
|
<component name="RunManager" selected="Ruby.DayFinder">
|
|
@@ -64,8 +81,8 @@
|
|
|
64
81
|
<module name="DayFinder" />
|
|
65
82
|
<RUBY_RUN_CONFIG NAME="RUBY_ARGS" VALUE="" />
|
|
66
83
|
<RUBY_RUN_CONFIG NAME="WORK DIR" VALUE="$MODULE_DIR$/lib" />
|
|
67
|
-
<RUBY_RUN_CONFIG NAME="SHOULD_USE_SDK" VALUE="
|
|
68
|
-
<RUBY_RUN_CONFIG NAME="ALTERN_SDK_NAME" VALUE="" />
|
|
84
|
+
<RUBY_RUN_CONFIG NAME="SHOULD_USE_SDK" VALUE="true" />
|
|
85
|
+
<RUBY_RUN_CONFIG NAME="ALTERN_SDK_NAME" VALUE="rbenv: 3.0.2" />
|
|
69
86
|
<RUBY_RUN_CONFIG NAME="myPassParentEnvs" VALUE="true" />
|
|
70
87
|
<EXTENSION ID="BundlerRunConfigurationExtension" bundleExecEnabled="false" />
|
|
71
88
|
<EXTENSION ID="JRubyRunConfigurationExtension" NailgunExecEnabled="false" />
|
|
@@ -79,6 +96,24 @@
|
|
|
79
96
|
<RUBY_RUN_CONFIG NAME="SCRIPT_ARGS" VALUE="" />
|
|
80
97
|
<method v="2" />
|
|
81
98
|
</configuration>
|
|
99
|
+
<configuration name="ruby" type="RubyRunConfigurationType" factoryName="Ruby" temporary="true">
|
|
100
|
+
<RUBY_RUN_CONFIG NAME="RUBY_ARGS" VALUE="" />
|
|
101
|
+
<RUBY_RUN_CONFIG NAME="WORK DIR" VALUE="$USER_HOME$/Desktop" />
|
|
102
|
+
<RUBY_RUN_CONFIG NAME="SHOULD_USE_SDK" VALUE="false" />
|
|
103
|
+
<RUBY_RUN_CONFIG NAME="ALTERN_SDK_NAME" VALUE="" />
|
|
104
|
+
<RUBY_RUN_CONFIG NAME="myPassParentEnvs" VALUE="true" />
|
|
105
|
+
<EXTENSION ID="BundlerRunConfigurationExtension" bundleExecEnabled="false" />
|
|
106
|
+
<EXTENSION ID="JRubyRunConfigurationExtension" NailgunExecEnabled="false" />
|
|
107
|
+
<EXTENSION ID="RubyCoverageRunConfigurationExtension" track_test_folders="true" runner="rcov" ENABLE_BRANCH_COVERAGE="true" ENABLE_FORKED_COVERAGE="true">
|
|
108
|
+
<COVERAGE_PATTERN ENABLED="true">
|
|
109
|
+
<PATTERN REGEXPS="/.rvm/" INCLUDED="false" />
|
|
110
|
+
</COVERAGE_PATTERN>
|
|
111
|
+
</EXTENSION>
|
|
112
|
+
<EXTENSION ID="org.jetbrains.plugins.ruby.rails.run.RailsRunConfigurationExtension" SCRATCH_USE_RAILS_RUNNER="false" />
|
|
113
|
+
<RUBY_RUN_CONFIG NAME="SCRIPT_PATH" VALUE="$USER_HOME$/Desktop/ruby.rb" />
|
|
114
|
+
<RUBY_RUN_CONFIG NAME="SCRIPT_ARGS" VALUE="" />
|
|
115
|
+
<method v="2" />
|
|
116
|
+
</configuration>
|
|
82
117
|
<configuration name="x" type="RubyRunConfigurationType" factoryName="Ruby" temporary="true">
|
|
83
118
|
<RUBY_RUN_CONFIG NAME="RUBY_ARGS" VALUE="" />
|
|
84
119
|
<RUBY_RUN_CONFIG NAME="WORK DIR" VALUE="$USER_HOME$/Desktop" />
|
|
@@ -97,9 +132,17 @@
|
|
|
97
132
|
<RUBY_RUN_CONFIG NAME="SCRIPT_ARGS" VALUE="" />
|
|
98
133
|
<method v="2" />
|
|
99
134
|
</configuration>
|
|
135
|
+
<list>
|
|
136
|
+
<item itemvalue="Ruby.ruby" />
|
|
137
|
+
<item itemvalue="Ruby.DayFinder" />
|
|
138
|
+
<item itemvalue="Ruby.x" />
|
|
139
|
+
<item itemvalue="Ruby Console.IRB: DayFinder" />
|
|
140
|
+
</list>
|
|
100
141
|
<recent_temporary>
|
|
101
142
|
<list>
|
|
102
143
|
<item itemvalue="Ruby.DayFinder" />
|
|
144
|
+
<item itemvalue="Ruby.ruby" />
|
|
145
|
+
<item itemvalue="Ruby Console.IRB: DayFinder" />
|
|
103
146
|
<item itemvalue="Ruby Console.IRB: DayFinder" />
|
|
104
147
|
<item itemvalue="Ruby.x" />
|
|
105
148
|
</list>
|
|
@@ -115,7 +158,8 @@
|
|
|
115
158
|
<option name="presentableId" value="Default" />
|
|
116
159
|
<updated>1626596242263</updated>
|
|
117
160
|
<workItem from="1626596243999" duration="2156000" />
|
|
118
|
-
<workItem from="1626788900302" duration="
|
|
161
|
+
<workItem from="1626788900302" duration="1046000" />
|
|
162
|
+
<workItem from="1636001078267" duration="1693000" />
|
|
119
163
|
</task>
|
|
120
164
|
<task id="LOCAL-00001" summary="code added">
|
|
121
165
|
<created>1626597241055</created>
|
|
@@ -131,7 +175,14 @@
|
|
|
131
175
|
<option name="project" value="LOCAL" />
|
|
132
176
|
<updated>1626598245018</updated>
|
|
133
177
|
</task>
|
|
134
|
-
<
|
|
178
|
+
<task id="LOCAL-00003" summary="version.rb updated">
|
|
179
|
+
<created>1636003537429</created>
|
|
180
|
+
<option name="number" value="00003" />
|
|
181
|
+
<option name="presentableId" value="LOCAL-00003" />
|
|
182
|
+
<option name="project" value="LOCAL" />
|
|
183
|
+
<updated>1636003537429</updated>
|
|
184
|
+
</task>
|
|
185
|
+
<option name="localTasksCounter" value="4" />
|
|
135
186
|
<servers />
|
|
136
187
|
</component>
|
|
137
188
|
<component name="TypeScriptGeneratedFilesManager">
|
|
@@ -153,11 +204,15 @@
|
|
|
153
204
|
<option name="ADD_EXTERNAL_FILES_SILENTLY" value="true" />
|
|
154
205
|
<MESSAGE value="code added" />
|
|
155
206
|
<MESSAGE value="Readme updated" />
|
|
156
|
-
<
|
|
207
|
+
<MESSAGE value="findall days feature" />
|
|
208
|
+
<MESSAGE value="version.rb updated" />
|
|
209
|
+
<option name="LAST_COMMIT_MESSAGE" value="version.rb updated" />
|
|
157
210
|
</component>
|
|
158
211
|
<component name="com.intellij.coverage.CoverageDataManagerImpl">
|
|
159
|
-
<SUITE FILE_PATH="coverage/DayFinder@IRB__DayFinder.rcov" NAME="IRB: DayFinder Coverage Results" MODIFIED="
|
|
212
|
+
<SUITE FILE_PATH="coverage/DayFinder@IRB__DayFinder.rcov" NAME="IRB: DayFinder Coverage Results" MODIFIED="1626789698769" SOURCE_PROVIDER="com.intellij.coverage.DefaultCoverageFileProvider" RUNNER="rcov" COVERAGE_BY_TEST_ENABLED="true" COVERAGE_TRACING_ENABLED="false" WORKING_DIRECTORY="$PROJECT_DIR$" MODULE_NAME="DayFinder" />
|
|
213
|
+
<SUITE FILE_PATH="coverage/rubyprojcts@DayFinder.rcov" NAME="DayFinder Coverage Results" MODIFIED="1636003108088" SOURCE_PROVIDER="com.intellij.coverage.DefaultCoverageFileProvider" RUNNER="rcov" COVERAGE_BY_TEST_ENABLED="true" COVERAGE_TRACING_ENABLED="false" WORKING_DIRECTORY="$PROJECT_DIR$/lib" MODULE_NAME="DayFinder" />
|
|
160
214
|
<SUITE FILE_PATH="coverage/DayFinder@x.rcov" NAME="x Coverage Results" MODIFIED="1626596978455" SOURCE_PROVIDER="com.intellij.coverage.DefaultCoverageFileProvider" RUNNER="rcov" COVERAGE_BY_TEST_ENABLED="true" COVERAGE_TRACING_ENABLED="false" WORKING_DIRECTORY="$USER_HOME$/Desktop" MODULE_NAME="DayFinder" />
|
|
215
|
+
<SUITE FILE_PATH="coverage/rubyprojcts@ruby.rcov" NAME="ruby Coverage Results" MODIFIED="1636001830203" SOURCE_PROVIDER="com.intellij.coverage.DefaultCoverageFileProvider" RUNNER="rcov" COVERAGE_BY_TEST_ENABLED="true" COVERAGE_TRACING_ENABLED="false" WORKING_DIRECTORY="$USER_HOME$/Desktop" MODULE_NAME="DayFinder" />
|
|
161
216
|
<SUITE FILE_PATH="coverage/DayFinder@DayFinder.rcov" NAME="DayFinder Coverage Results" MODIFIED="1626789556515" SOURCE_PROVIDER="com.intellij.coverage.DefaultCoverageFileProvider" RUNNER="rcov" COVERAGE_BY_TEST_ENABLED="true" COVERAGE_TRACING_ENABLED="false" WORKING_DIRECTORY="$PROJECT_DIR$/lib" MODULE_NAME="DayFinder" />
|
|
162
217
|
</component>
|
|
163
218
|
</project>
|
data/DayFinder-0.2.0.gem
ADDED
|
Binary file
|
data/README.md
CHANGED
|
@@ -4,7 +4,7 @@ DayFinder is a ruby gem. It is used to find the weekday of a given date.
|
|
|
4
4
|
|
|
5
5
|
# Syntax
|
|
6
6
|
```ruby
|
|
7
|
-
DayFinder.find(
|
|
7
|
+
DayFinder.find(day,month,year)
|
|
8
8
|
```
|
|
9
9
|
|
|
10
10
|
# Example
|
|
@@ -40,4 +40,4 @@ The gem is available as open source under the terms of the [MIT License](https:/
|
|
|
40
40
|
|
|
41
41
|
## Code of Conduct
|
|
42
42
|
|
|
43
|
-
Everyone interacting in the DayFinder project's codebases, issue trackers, chat rooms and mailing lists is expected to follow the [code of conduct](https://github.com/
|
|
43
|
+
Everyone interacting in the DayFinder project's codebases, issue trackers, chat rooms and mailing lists is expected to follow the [code of conduct](https://github.com/freakflames29/DayFinder/blob/main/CODE_OF_CONDUCT.md).
|
data/lib/DayFinder/version.rb
CHANGED
data/lib/DayFinder.rb
CHANGED
|
@@ -6,17 +6,20 @@ module DayFinder
|
|
|
6
6
|
class Error < StandardError; end
|
|
7
7
|
|
|
8
8
|
# Your code goes here...
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
9
|
+
M31 = [1, 3, 5, 7, 8, 10, 12]
|
|
10
|
+
M30 = [11, 4, 6, 9]
|
|
11
|
+
WEEKDAY = %w[Saturday Sunday Monday Tuesday Wednesday Thursday Friday]
|
|
12
|
+
$week = 0
|
|
13
|
+
|
|
14
|
+
def self.find d, m, year
|
|
15
|
+
month_28 = [2]
|
|
13
16
|
leap = false
|
|
14
17
|
leap = true if ((year % 4).zero? && (year % 100 != 0)) || (year % 400).zero?
|
|
15
18
|
raise "day is invalid" if (m == 2) && (d >= 30)
|
|
16
19
|
raise "month 2 date invalid" if !leap && m == 2 && d >= 29
|
|
17
|
-
raise "Invalid date" if (
|
|
20
|
+
raise "Invalid date" if (M31.include?(m) && d >= 32 && d != 0) || (M30.include?(m) && d >= 31 && d != 0)
|
|
18
21
|
raise "Day is invalid" if d <= 0
|
|
19
|
-
raise "Month invalid " if !
|
|
22
|
+
raise "Month invalid " if !M31.include?(m) && !M30.include?(m) && !month_28.include?(m)
|
|
20
23
|
|
|
21
24
|
if m > 2
|
|
22
25
|
mo = m
|
|
@@ -28,8 +31,43 @@ module DayFinder
|
|
|
28
31
|
c = year / 100
|
|
29
32
|
x = d + (13 * (mo + 1)) / 5 + y + (y / 4) + (c / 4) + 5 * c
|
|
30
33
|
w = x % 7
|
|
31
|
-
|
|
34
|
+
$week = w
|
|
32
35
|
# puts leap
|
|
33
|
-
|
|
36
|
+
WEEKDAY[w]
|
|
37
|
+
# w
|
|
38
|
+
end
|
|
39
|
+
|
|
40
|
+
def self.findAll m, year, day
|
|
41
|
+
leap = true if ((year % 4).zero? && (year % 100 != 0)) || (year % 400).zero?
|
|
42
|
+
if leap and m == 2
|
|
43
|
+
days = 29
|
|
44
|
+
elsif M31.include?(m)
|
|
45
|
+
days = 31
|
|
46
|
+
elsif M30.include?(m)
|
|
47
|
+
days = 30
|
|
48
|
+
else
|
|
49
|
+
days = 28
|
|
50
|
+
end
|
|
51
|
+
find 1, m, year
|
|
52
|
+
dayslist = []
|
|
53
|
+
if WEEKDAY[$week] == day.capitalize
|
|
54
|
+
i = 1
|
|
55
|
+
while (i <= days)
|
|
56
|
+
dayslist << i
|
|
57
|
+
i += 7
|
|
58
|
+
end
|
|
59
|
+
else
|
|
60
|
+
for i in (1..days)
|
|
61
|
+
find i, m, year
|
|
62
|
+
if WEEKDAY[$week] == day.capitalize
|
|
63
|
+
break
|
|
64
|
+
end
|
|
65
|
+
end
|
|
66
|
+
while (i <= days)
|
|
67
|
+
dayslist << i
|
|
68
|
+
i += 7
|
|
69
|
+
end
|
|
70
|
+
end
|
|
71
|
+
dayslist
|
|
34
72
|
end
|
|
35
|
-
end
|
|
73
|
+
end
|
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: DayFinder
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.
|
|
4
|
+
version: 0.3.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Sourav Das
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: exe
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2021-
|
|
11
|
+
date: 2021-11-04 00:00:00.000000000 Z
|
|
12
12
|
dependencies: []
|
|
13
13
|
description: DayFinder gem will return the weekday of a given date.
|
|
14
14
|
email:
|
|
@@ -27,6 +27,7 @@ files:
|
|
|
27
27
|
- ".rubocop.yml"
|
|
28
28
|
- CODE_OF_CONDUCT.md
|
|
29
29
|
- DayFinder-0.1.0.gem
|
|
30
|
+
- DayFinder-0.2.0.gem
|
|
30
31
|
- DayFinder.gemspec
|
|
31
32
|
- Gemfile
|
|
32
33
|
- LICENSE.txt
|
|
@@ -57,7 +58,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
57
58
|
- !ruby/object:Gem::Version
|
|
58
59
|
version: '0'
|
|
59
60
|
requirements: []
|
|
60
|
-
rubygems_version: 3.2.
|
|
61
|
+
rubygems_version: 3.2.22
|
|
61
62
|
signing_key:
|
|
62
63
|
specification_version: 4
|
|
63
64
|
summary: DayFinder gem is used to find the weekday of a given date
|