File tree 3 files changed +16
-14
lines changed
3 files changed +16
-14
lines changed Original file line number Diff line number Diff line change @@ -71,6 +71,7 @@ task :verify_meetups do
71
71
events = validator . events
72
72
dates = events . map { |event | event [ "start_date" ] }
73
73
exit 5 unless dates . sort == dates
74
+ exit 6 if validator . duplicate_events?
74
75
end
75
76
76
77
task :fetch_meetups do
Original file line number Diff line number Diff line change 1549
1549
end_time : 20:00:00 EAT
1550
1550
url : https://www.meetup.com/african_ruby_community/events/301578297
1551
1551
1552
- - name : Columbus Ruby Brigade - Monthly Meetup September 2024
1553
- location : Columbus, OH
1554
- date : 2024-09-16
1555
- start_time : 18:00:00 EDT
1556
- end_time : 20:00:00 EDT
1557
- url : https://www.meetup.com/columbusrb/events/xwwkltygcmbvb
1558
-
1559
1552
- name : Columbus Ruby Brigade - Monthly Meetup September 2024
1560
1553
location : Columbus, OH
1561
1554
date : 2024-09-16
1562
1555
start_time : 18:00:00 EDT
1563
1556
end_time : 20:00:00 EDT
1564
1557
url : https://www.meetup.com/columbusrb/events/303084093
1565
1558
1566
- - name : Miami Ruby Brigade - September 2024
1567
- location : Coral Gables, FL
1568
- date : 2024-09-16
1569
- start_time : 19:00:00 EDT
1570
- end_time : 21:00:00 EDT
1571
- url : https://www.meetup.com/miamirb/events/pdvctsygcmbvb
1572
-
1573
1559
- name : Miami Ruby Brigade - September 2024
1574
1560
location : Coral Gables, FL
1575
1561
date : 2024-09-16
Original file line number Diff line number Diff line change @@ -27,6 +27,17 @@ def validate
27
27
@bonus_keys_error = true
28
28
end
29
29
end
30
+
31
+ if @type == :meetup
32
+ event_groups_by_date = events . map { |event | [ event [ "name" ] . split ( " - " ) . first , event [ "date" ] ] }
33
+
34
+ duplicate_events = event_groups_by_date . tally . select { |group , count | count > 1 }
35
+
36
+ duplicate_events . each do |( group , date ) , count |
37
+ @duplicate_events_error = true
38
+ puts "Meetup Group '#{ group } ' has #{ count } events on #{ date . iso8601 } "
39
+ end
40
+ end
30
41
end
31
42
32
43
def missing_keys?
@@ -37,6 +48,10 @@ def bonus_keys?
37
48
@bonus_keys_error
38
49
end
39
50
51
+ def duplicate_events?
52
+ @duplicate_events_error
53
+ end
54
+
40
55
private
41
56
42
57
def required_keys ( type = @type )
You can’t perform that action at this time.
0 commit comments