rubocop-discourse 3.0 → 3.0.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: caa33338c84c26b1d2bc6010ca26ab11bd265c96086def2d8e6591fe995b2660
4
- data.tar.gz: f8a7c7e8b0153aeb4fb251155836cc8abdcd58c538d7a8ce42fda403a0489b4a
3
+ metadata.gz: f3d65cb32d6a544fd2b03dee2c2b423d865bf3b9c1957087038beb1ec1de1e08
4
+ data.tar.gz: 7beaaa46315bf22a20a11eed14e1ee8a787cf23026a974be936533cbee6e3da8
5
5
  SHA512:
6
- metadata.gz: bd90fcbefb1c81bb199ef9546e32a62bb7d044853faaf5e9e5445e8d05f819c507e618ce0d546edb67da34d463e098e105580e81a0f48a085d3fbf395f0fa86b
7
- data.tar.gz: c28eddf777f8ac0e00785a21c2ce0ef44891548dc4d00a37ca1ae63d10507db095ec7ac578e6f6eef959c2ac8c7f0a1976dd05a41913de5d6a9b36314d0c3f2c
6
+ metadata.gz: d1126149b306f738ef8874dbe94cd4f9c816fc9b3d50617a1677ce3b1755950e72f21d436e0f6896817c91fcfa044c597ac230c5a37b1c787132d9d1f4c9ac9e
7
+ data.tar.gz: 5b3f747371f9eecd0f26ec04c0158eda78be9539d03a7e1a7a6893b6383f14884a7ae29ea3e858bbd08e32522d04ab637bbcc22d661a8186d2bd12b33a8a96bf
@@ -4,25 +4,20 @@ on:
4
4
  pull_request:
5
5
  push:
6
6
  branches:
7
- - master
8
7
  - main
8
+
9
9
  jobs:
10
10
  build:
11
11
  runs-on: ubuntu-latest
12
12
 
13
13
  steps:
14
- - uses: actions/checkout@v1
14
+ - uses: actions/checkout@v3
15
15
 
16
16
  - name: Setup ruby
17
- uses: actions/setup-ruby@v1
17
+ uses: ruby/setup-ruby@v1
18
18
  with:
19
- ruby-version: 2.6
20
-
21
- - name: Setup bundler
22
- run: gem install bundler
23
-
24
- - name: Setup gems
25
- run: bundle install
19
+ ruby-version: '2.6'
20
+ bundler-cache: true
26
21
 
27
22
  - name: Rubocop
28
23
  run: bundle exec rubocop
@@ -31,12 +26,12 @@ jobs:
31
26
  run: bundle exec rspec spec
32
27
 
33
28
  publish:
34
- if: github.event_name == 'push' && (github.ref == 'refs/heads/main' || github.ref == 'refs/heads/master')
29
+ if: github.event_name == 'push' && github.ref == 'refs/heads/main'
35
30
  needs: build
36
31
  runs-on: ubuntu-latest
37
32
 
38
33
  steps:
39
- - uses: actions/checkout@v2
34
+ - uses: actions/checkout@v3
40
35
 
41
36
  - name: Release Gem
42
37
  uses: discourse/publish-rubygems-action@v2
@@ -37,7 +37,7 @@ module RuboCop
37
37
  private
38
38
 
39
39
  def timestamp_suffix?(property)
40
- property =~ /_at$/
40
+ property.is_a?(Symbol) && property =~ /_at$/
41
41
  end
42
42
 
43
43
  def not_nil?(expression)
@@ -2,7 +2,7 @@
2
2
 
3
3
  Gem::Specification.new do |s|
4
4
  s.name = "rubocop-discourse"
5
- s.version = "3.0"
5
+ s.version = "3.0.1"
6
6
  s.summary = "Custom rubocop cops used by Discourse"
7
7
  s.authors = ["Discourse Team"]
8
8
  s.license = "MIT"
@@ -0,0 +1,27 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'spec_helper'
4
+
5
+ describe RuboCop::Cop::Discourse::TimeEqMatcher, :config do
6
+ subject(:cop) { described_class.new(config) }
7
+
8
+ let(:config) do
9
+ RuboCop::Config.new
10
+ end
11
+
12
+ it "raises an offense if a timestamp is compared using `eq`" do
13
+ inspect_source(<<~RUBY)
14
+ expect(user.created_at).to eq(Time.zone.now)
15
+ RUBY
16
+
17
+ expect(cop.offenses.first.message).to eq(described_class::MSG)
18
+ end
19
+
20
+ it "passes if a timestamp is compared using `eq_time`" do
21
+ inspect_source(<<~RUBY)
22
+ expect(user.created_at).to eq_time(Time.zone.now)
23
+ RUBY
24
+
25
+ expect(cop.offenses).to be_empty
26
+ end
27
+ end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rubocop-discourse
3
3
  version: !ruby/object:Gem::Version
4
- version: '3.0'
4
+ version: 3.0.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Discourse Team
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-09-26 00:00:00.000000000 Z
11
+ date: 2022-12-20 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rubocop
@@ -106,6 +106,7 @@ files:
106
106
  - spec/lib/rubocop/cop/no_mocking_jobs_enqueue_spec.rb
107
107
  - spec/lib/rubocop/cop/no_reset_column_information_migrations_spec.rb
108
108
  - spec/lib/rubocop/cop/only_top_level_multisite_specs_spec.rb
109
+ - spec/lib/rubocop/cop/time_eq_matcher_spec.rb
109
110
  - spec/spec_helper.rb
110
111
  - stree-compat.yml
111
112
  homepage: https://github.com/discourse/rubocop-discourse