stenographer-rails 0.7.1 → 0.7.3

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: c67e266ab2b46c1a18820226a6d36dd4da88656c62a7976419b9787def179d14
4
- data.tar.gz: 8bd983e4670a9fe0462367de180263a0bade7254c0e7e2b6c3898ee16c48f8a8
3
+ metadata.gz: 9569df4342b93462a3ad7412320593843ac5c8c6807934f776743272a8e896f6
4
+ data.tar.gz: 4c3c1b56e7de42ae40ae7bbc5376785d24200b5313cf924fb16158795dfb56c8
5
5
  SHA512:
6
- metadata.gz: 5cbc528bd37bf11abc7148dff643e33b0fb1368d7e5748d2418c8087e2ed2d5012cfc086acc7294f6c54fbb8c7bb568b459a94bab379156f78d390acf4273e5d
7
- data.tar.gz: fde27712c6194f984f6dcf58e564015d1f974cf0a191a1cbce524e1584644db36874c0ba2b7393170d7b5d79786e4aaa04567ac5390eca50e909b877ee3e4249
6
+ metadata.gz: b0b3b81b330d10a940c93f3f67f323b209073c4a5b2816104fc4458a5f222407e9c8e36fb8643bcd9ee27ecd6ea1abea1e14de96b36015aa55592fcee9f4f22c
7
+ data.tar.gz: 6f1de9a55d19aac8584bfaf857a7b2a7da4504dd43ce7821577a6335cdf3964b7cf18b48d585cedf1e78717b892b9eb3c41858a48331f8c612594a89f3297132
data/README.md CHANGED
@@ -5,7 +5,7 @@ has a unique id shared across branches, it will also manage grouping changes by
5
5
  ## Usage
6
6
  To create a new item:
7
7
  ```ruby
8
- Stenography::Change.create(message: 'My Change', change_type: 'new/improved/fixed', visible: true, environments: 'production', tracker_ids: '#12345', source: '{}')
8
+ Stenographer::Change.create(message: 'My Change', change_type: 'new/improved/fixed', visible: true, environments: 'production', tracker_ids: '#12345', source: '{}')
9
9
  ```
10
10
  It's advised to store the source so you can parse it again later if needed.
11
11
 
@@ -21,8 +21,9 @@ module Stenographer
21
21
  end
22
22
  end
23
23
 
24
- def to_markdown
25
- Stenographer.markdown_renderer.render(message).html_safe
24
+ def to_markdown(truncate: nil)
25
+ msg = truncate ? message.truncate(truncate) : message
26
+ Stenographer.markdown_renderer.render(msg).html_safe
26
27
  end
27
28
 
28
29
  def matches_filters(output = nil)
@@ -25,7 +25,7 @@
25
25
  <tr>
26
26
  <td><%= link_to(change.id, admin_change_path(change.id)) %></td>
27
27
  <td><%= change.created_at.strftime('%Y/%m/%d') %></td>
28
- <td title="<%= change.message %>"><%= change.message.truncate(80) %></td>
28
+ <td title="<%= change.message %>"><%= change.to_markdown(truncate: 80) %></td>
29
29
  <td><%= change.visible.to_s %></td>
30
30
  <td><%= change.change_type.present? ? change.change_type.titleize : 'General'%></td>
31
31
  <td>
@@ -45,4 +45,4 @@
45
45
  <%= will_paginate @changes, renderer: BulmaPagination::Rails %>
46
46
  </div>
47
47
  </div>
48
- </section>
48
+ </section>
@@ -1,7 +1,7 @@
1
1
  class CreateStenographerLinks < ActiveRecord::Migration[5.2]
2
2
  def change
3
3
  create_table :stenographer_links do |t|
4
- t.string :url
4
+ t.string :url, null: false
5
5
  t.string :description
6
6
 
7
7
  t.timestamps
@@ -8,7 +8,7 @@ require 'citrus'
8
8
  require 'http'
9
9
  require 'omniauth'
10
10
  require 'omniauth-slack'
11
- require 'sass-rails'
11
+ require 'sassc-rails'
12
12
 
13
13
  require 'stenographer/engine'
14
14
  require 'stenographer/inputs/base_input'
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Stenographer
4
- VERSION = '0.7.1'
4
+ VERSION = '0.7.3'
5
5
  end
@@ -3,8 +3,8 @@
3
3
  describe Stenographer::ChangesController, type: :controller do
4
4
  routes { Stenographer::Engine.routes }
5
5
 
6
- let!(:first_change) { create(:change, created_at: 2.weeks.ago, environments: 'env1') }
7
- let!(:newer_change) { create(:change, created_at: 1.week.ago, environments: 'env2') }
6
+ let!(:first_change) { create(:change, created_at: 2.weeks.ago, environments: 'env1', visible: true) }
7
+ let!(:newer_change) { create(:change, created_at: 1.week.ago, environments: 'env2', visible: true) }
8
8
  let!(:hidden_change) { create(:change, visible: false) }
9
9
 
10
10
  describe '#create' do
@@ -68,7 +68,7 @@ describe Stenographer::ChangesController, type: :controller do
68
68
  index_action
69
69
  end
70
70
 
71
- it 'created at desc' do
71
+ it 'orders by created_at, descending' do
72
72
  expect(assigns(:changes)).to match_array([newer_change, first_change])
73
73
  end
74
74
  end
@@ -2,7 +2,7 @@
2
2
 
3
3
  FactoryBot.define do
4
4
  factory :authentication, class: Stenographer::Authentication do
5
- provider { Faker::Pokemon.name }
5
+ provider { Faker::Games::Pokemon.name }
6
6
  uid { Faker::Crypto.md5 }
7
7
  credentials { { token: '1234' }.to_json }
8
8
  end
@@ -5,7 +5,7 @@ FactoryBot.define do
5
5
  message { Faker::HitchhikersGuideToTheGalaxy.quote }
6
6
  visible { Faker::Boolean.boolean }
7
7
  change_type { Stenographer::Change::VALID_CHANGE_TYPES.sample }
8
- environments { Faker::StarWars.planet }
8
+ environments { Faker::Movies::StarWars.planet }
9
9
  tracker_ids { '#56789' }
10
10
  source { '{}' }
11
11
  end
@@ -3,6 +3,6 @@
3
3
  FactoryBot.define do
4
4
  factory :link, class: Stenographer::Link do
5
5
  url { Faker::Internet.url }
6
- description { Faker::Community.quotes }
6
+ description { Faker::TvShows::Community.quotes }
7
7
  end
8
8
  end
@@ -70,10 +70,19 @@ describe Stenographer::Change, type: :model do
70
70
  end
71
71
 
72
72
  describe '#to_markdown' do
73
+ let(:change) { create(:change, message: '# hello nice friends') }
74
+
73
75
  it 'translates its message to markdown' do
74
- change = create(:change, message: '# hello')
76
+ expect(change.to_markdown.strip).to eq('<h1>hello nice friends</h1>')
77
+ end
78
+
79
+ it 'truncates the message before conversion if a truncate length is given' do
80
+ expect(change.to_markdown(truncate: 10).strip).to eq('<h1>hello...</h1>')
81
+ end
75
82
 
76
- expect(change.to_markdown.strip).to eq('<h1>hello</h1>')
83
+ it 'does not break if truncation creates incomplete markdown' do
84
+ change.update!(message: '[a link](https://google.com)')
85
+ expect(change.to_markdown(truncate: 10)).to eq "<p>[a link...</p>\n"
77
86
  end
78
87
  end
79
88
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: stenographer-rails
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.7.1
4
+ version: 0.7.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Michael Carey
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2018-12-05 00:00:00.000000000 Z
11
+ date: 2019-05-02 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: citrus
@@ -109,33 +109,33 @@ dependencies:
109
109
  - !ruby/object:Gem::Version
110
110
  version: '3.4'
111
111
  - !ruby/object:Gem::Dependency
112
- name: sass
112
+ name: sassc
113
113
  requirement: !ruby/object:Gem::Requirement
114
114
  requirements:
115
115
  - - "~>"
116
116
  - !ruby/object:Gem::Version
117
- version: '3.4'
117
+ version: '2.0'
118
118
  type: :runtime
119
119
  prerelease: false
120
120
  version_requirements: !ruby/object:Gem::Requirement
121
121
  requirements:
122
122
  - - "~>"
123
123
  - !ruby/object:Gem::Version
124
- version: '3.4'
124
+ version: '2.0'
125
125
  - !ruby/object:Gem::Dependency
126
- name: sass-rails
126
+ name: sassc-rails
127
127
  requirement: !ruby/object:Gem::Requirement
128
128
  requirements:
129
129
  - - "~>"
130
130
  - !ruby/object:Gem::Version
131
- version: '5.0'
131
+ version: '2.1'
132
132
  type: :runtime
133
133
  prerelease: false
134
134
  version_requirements: !ruby/object:Gem::Requirement
135
135
  requirements:
136
136
  - - "~>"
137
137
  - !ruby/object:Gem::Version
138
- version: '5.0'
138
+ version: '2.1'
139
139
  - !ruby/object:Gem::Dependency
140
140
  name: will_paginate
141
141
  requirement: !ruby/object:Gem::Requirement
@@ -1210,8 +1210,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
1210
1210
  - !ruby/object:Gem::Version
1211
1211
  version: '0'
1212
1212
  requirements: []
1213
- rubyforge_project:
1214
- rubygems_version: 2.7.8
1213
+ rubygems_version: 3.0.1
1215
1214
  signing_key:
1216
1215
  specification_version: 4
1217
1216
  summary: Better Changelogs