summaryrefslogtreecommitdiff
path: root/spec/activity_spec.lua
diff options
context:
space:
mode:
Diffstat (limited to 'spec/activity_spec.lua')
-rw-r--r--spec/activity_spec.lua43
1 files changed, 43 insertions, 0 deletions
diff --git a/spec/activity_spec.lua b/spec/activity_spec.lua
new file mode 100644
index 0000000..08160fa
--- /dev/null
+++ b/spec/activity_spec.lua
@@ -0,0 +1,43 @@
+local activity = require "activity"
+
+describe("Days in a year", function()
+ it("should support regular years", function()
+ assert.are.equal(365, activity.days(1970))
+ assert.are.equal(365, activity.days(2001))
+ end)
+
+ it("should support lean years", function()
+ assert.are.equal(366, activity.days(2004))
+ assert.are.equal(366, activity.days(1980))
+ end)
+
+ it("should support *00 years", function()
+ assert.are.equal(366, activity.days(2000))
+ assert.are.equal(365, activity.days(2100))
+ assert.are.equal(365, activity.days(2200))
+ assert.are.equal(365, activity.days(2300))
+ assert.are.equal(366, activity.days(2400))
+ end)
+end)
+
+describe("This year is", function()
+ local this_year = os.date "%Y" -- Quite useless test
+
+ it(tostring(this_year), function()
+ assert.are.equal(this_year, activity.this_year())
+ end)
+end)
+
+describe("First week day of", function()
+ it("2023 is Sunday", function()
+ assert.are.equal(1, activity.first_week_day(2023))
+ end)
+
+ it("2022 is Saturday", function()
+ assert.are.equal(7, activity.first_week_day(2022))
+ end)
+
+ it("2020 is Saturday", function()
+ assert.are.equal(4, activity.first_week_day(2020))
+ end)
+end)