jekyll-steem 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA256:
3
+ metadata.gz: e36dbd5295bfcaf4bcaef07d278c85a3cd695b9c8f6b4beb29ec29ebb36ae656
4
+ data.tar.gz: 4d46548addeeca3d951cf783ef4765a6b2527044629bd185f1ef768d9663a644
5
+ SHA512:
6
+ metadata.gz: d86724aea2f4f0866cae830610222af7c0c19152b112ad4a85490aca8f478b3d4497449337ba544fd81bae3b6ce237e473328cf0330a7d074a236c3b39e936f0
7
+ data.tar.gz: faa9ec2ccd8a2b23f15f288c911c1692910d53099915550cb4d82a30d388b9da8c1e92694fa7246a2f6b01a536e841e344aa9a3d7b29c6f71d2ee1d0b6261767
@@ -0,0 +1,57 @@
1
+ *.gem
2
+ *.rbc
3
+ /.config
4
+ /coverage/
5
+ /InstalledFiles
6
+ /pkg/
7
+ /spec/reports/
8
+ /spec/examples.txt
9
+ /test/tmp/
10
+ /test/version_tmp/
11
+ /tmp/
12
+ /coverage/
13
+
14
+ # Used by dotenv library to load environment variables.
15
+ # .env
16
+
17
+ # Ignore Byebug command history file.
18
+ .byebug_history
19
+
20
+ ## Specific to RubyMotion:
21
+ .dat*
22
+ .repl_history
23
+ build/
24
+ *.bridgesupport
25
+ build-iPhoneOS/
26
+ build-iPhoneSimulator/
27
+
28
+ ## Specific to RubyMotion (use of CocoaPods):
29
+ #
30
+ # We recommend against adding the Pods directory to your .gitignore. However
31
+ # you should judge for yourself, the pros and cons are mentioned at:
32
+ # https://guides.cocoapods.org/using/using-cocoapods.html#should-i-check-the-pods-directory-into-source-control
33
+ #
34
+ # vendor/Pods/
35
+
36
+ ## Documentation cache and generated files:
37
+ /.yardoc/
38
+ /_yardoc/
39
+ /doc/
40
+ /rdoc/
41
+
42
+ ## Environment normalization:
43
+ /.bundle/
44
+ /vendor/bundle
45
+ /lib/bundler/man/
46
+
47
+ # for a library or gem, you might want to ignore these files since the code is
48
+ # intended to run in multiple environments; otherwise, check them in:
49
+ # Gemfile.lock
50
+ # .ruby-version
51
+ # .ruby-gemset
52
+
53
+ # unless supporting rvm < 1.11.0 or doing something fancy, ignore this:
54
+ .rvmrc
55
+
56
+ # Used by RuboCop. Remote config files pulled in from inherit_from directive.
57
+ # .rubocop-https?--*
@@ -0,0 +1,3 @@
1
+ language: ruby
2
+ rvm:
3
+ - 2.4
data/Gemfile ADDED
@@ -0,0 +1,10 @@
1
+ # frozen_string_literal: true
2
+
3
+ source "https://rubygems.org"
4
+ gemspec
5
+
6
+ if ENV["GH_PAGES"]
7
+ gem "github-pages"
8
+ elsif ENV["JEKYLL_VERSION"]
9
+ gem "jekyll", "~> #{ENV["JEKYLL_VERSION"]}"
10
+ end
@@ -0,0 +1,155 @@
1
+ PATH
2
+ remote: .
3
+ specs:
4
+ jekyll-steem (1.0.0)
5
+ steem-ruby (~> 0.9)
6
+
7
+ GEM
8
+ remote: https://rubygems.org/
9
+ specs:
10
+ addressable (2.7.0)
11
+ public_suffix (>= 2.0.2, < 5.0)
12
+ ast (2.4.0)
13
+ base58 (0.2.3)
14
+ bindata (2.4.4)
15
+ bitcoin-ruby (0.0.20)
16
+ eventmachine
17
+ ffi
18
+ scrypt
19
+ colorator (1.1.0)
20
+ concurrent-ruby (1.1.5)
21
+ crack (0.4.3)
22
+ safe_yaml (~> 1.0.0)
23
+ diff-lcs (1.3)
24
+ docile (1.3.2)
25
+ em-websocket (0.5.1)
26
+ eventmachine (>= 0.12.9)
27
+ http_parser.rb (~> 0.6.0)
28
+ eventmachine (1.2.7)
29
+ ffi (1.11.3)
30
+ ffi-compiler (1.0.1)
31
+ ffi (>= 1.0.0)
32
+ rake
33
+ forwardable-extended (2.6.0)
34
+ hashdiff (1.0.0)
35
+ hashie (3.6.0)
36
+ http_parser.rb (0.6.0)
37
+ i18n (1.8.2)
38
+ concurrent-ruby (~> 1.0)
39
+ jaro_winkler (1.5.4)
40
+ jekyll (4.0.0)
41
+ addressable (~> 2.4)
42
+ colorator (~> 1.0)
43
+ em-websocket (~> 0.5)
44
+ i18n (>= 0.9.5, < 2)
45
+ jekyll-sass-converter (~> 2.0)
46
+ jekyll-watch (~> 2.0)
47
+ kramdown (~> 2.1)
48
+ kramdown-parser-gfm (~> 1.0)
49
+ liquid (~> 4.0)
50
+ mercenary (~> 0.3.3)
51
+ pathutil (~> 0.9)
52
+ rouge (~> 3.0)
53
+ safe_yaml (~> 1.0)
54
+ terminal-table (~> 1.8)
55
+ jekyll-sass-converter (2.0.1)
56
+ sassc (> 2.0.1, < 3.0)
57
+ jekyll-watch (2.2.1)
58
+ listen (~> 3.0)
59
+ json (2.3.0)
60
+ kramdown (2.1.0)
61
+ kramdown-parser-gfm (1.1.0)
62
+ kramdown (~> 2.0)
63
+ liquid (4.0.3)
64
+ listen (3.2.1)
65
+ rb-fsevent (~> 0.10, >= 0.10.3)
66
+ rb-inotify (~> 0.9, >= 0.9.10)
67
+ little-plugger (1.1.4)
68
+ logging (2.2.2)
69
+ little-plugger (~> 1.1)
70
+ multi_json (~> 1.10)
71
+ mercenary (0.3.6)
72
+ multi_json (1.14.1)
73
+ parallel (1.19.1)
74
+ parser (2.7.0.2)
75
+ ast (~> 2.4.0)
76
+ pathutil (0.16.2)
77
+ forwardable-extended (~> 2.6)
78
+ public_suffix (4.0.3)
79
+ rainbow (3.0.0)
80
+ rake (13.0.1)
81
+ rb-fsevent (0.10.3)
82
+ rb-inotify (0.10.1)
83
+ ffi (~> 1.0)
84
+ rouge (3.14.0)
85
+ rspec (3.9.0)
86
+ rspec-core (~> 3.9.0)
87
+ rspec-expectations (~> 3.9.0)
88
+ rspec-mocks (~> 3.9.0)
89
+ rspec-core (3.9.1)
90
+ rspec-support (~> 3.9.1)
91
+ rspec-expectations (3.9.0)
92
+ diff-lcs (>= 1.2.0, < 2.0)
93
+ rspec-support (~> 3.9.0)
94
+ rspec-mocks (3.9.1)
95
+ diff-lcs (>= 1.2.0, < 2.0)
96
+ rspec-support (~> 3.9.0)
97
+ rspec-support (3.9.2)
98
+ rubocop (0.71.0)
99
+ jaro_winkler (~> 1.5.1)
100
+ parallel (~> 1.10)
101
+ parser (>= 2.6)
102
+ rainbow (>= 2.2.2, < 4.0)
103
+ ruby-progressbar (~> 1.7)
104
+ unicode-display_width (>= 1.4.0, < 1.7)
105
+ rubocop-jekyll (0.10.0)
106
+ rubocop (>= 0.68.0, < 0.72.0)
107
+ rubocop-performance (~> 1.2)
108
+ rubocop-performance (1.5.2)
109
+ rubocop (>= 0.71.0)
110
+ ruby-progressbar (1.10.1)
111
+ safe_yaml (1.0.5)
112
+ sassc (2.2.1)
113
+ ffi (~> 1.9)
114
+ scrypt (3.0.7)
115
+ ffi-compiler (>= 1.0, < 2.0)
116
+ simplecov (0.17.1)
117
+ docile (~> 1.1)
118
+ json (>= 1.8, < 3)
119
+ simplecov-html (~> 0.10.0)
120
+ simplecov-html (0.10.2)
121
+ steem-ruby (0.9.4)
122
+ base58 (~> 0.2, >= 0.2.3)
123
+ bindata (~> 2.4, >= 2.4.4)
124
+ bitcoin-ruby (~> 0.0, >= 0.0.18)
125
+ ffi (~> 1.9, >= 1.9.23)
126
+ hashie (~> 3.5, >= 3.5.7)
127
+ json (~> 2.1, >= 2.1.0)
128
+ logging (~> 2.2, >= 2.2.0)
129
+ terminal-table (1.8.0)
130
+ unicode-display_width (~> 1.1, >= 1.1.1)
131
+ unicode-display_width (1.6.0)
132
+ vcr (5.0.0)
133
+ webmock (3.7.6)
134
+ addressable (>= 2.3.6)
135
+ crack (>= 0.3.2)
136
+ hashdiff (>= 0.4.0, < 2.0.0)
137
+ yard (0.9.24)
138
+
139
+ PLATFORMS
140
+ ruby
141
+
142
+ DEPENDENCIES
143
+ bundler
144
+ jekyll
145
+ jekyll-steem!
146
+ rake
147
+ rspec
148
+ rubocop-jekyll (~> 0.4)
149
+ simplecov
150
+ vcr
151
+ webmock
152
+ yard
153
+
154
+ BUNDLED WITH
155
+ 2.1.4
data/LICENSE ADDED
@@ -0,0 +1,41 @@
1
+ CC0 1.0 Universal (CC0 1.0)
2
+ Public Domain Dedication
3
+ https://creativecommons.org/publicdomain/zero/1.0/
4
+
5
+ This is a human-readable summary of the Legal Code:
6
+ https://creativecommons.org/publicdomain/zero/1.0/legalcode
7
+
8
+ Disclaimer
9
+
10
+ The Commons Deed is not a legal instrument. It is simply a handy reference for
11
+ understanding the CC0 Legal Code, a human-readable expression of some of its key
12
+ terms. Think of it as the user-friendly interface to the CC0 Legal Code beneath.
13
+ This Deed itself has no legal value, and its contents do not appear in CC0.
14
+ Creative Commons is not a law firm and does not provide legal services.
15
+ Distributing, displaying, or linking to this Commons Deed does not create an
16
+ attorney-client relationship.
17
+
18
+ Creative Commons has not verified the copyright status of any work to which CC0
19
+ has been applied. CC makes no warranties about any work or its copyright status
20
+ in any jurisdiction, and disclaims all liability for all uses of any work.
21
+
22
+ No Copyright
23
+
24
+ The person who associated a work with this deed has dedicated the work to the
25
+ public domain by waiving all of his or her rights to the work worldwide under
26
+ copyright law, including all related and neighboring rights, to the extent
27
+ allowed by law.
28
+
29
+ You can copy, modify, distribute and perform the work, even for commercial
30
+ purposes, all without asking permission. See Other Information below.
31
+
32
+ Other Information
33
+
34
+ * In no way are the patent or trademark rights of any person affected by CC0,
35
+ nor are the rights that other persons may have in the work or in how the work
36
+ is used, such as publicity or privacy rights.
37
+ * Unless expressly stated otherwise, the person who associated a work with this
38
+ deed makes no warranties about the work, and disclaims liability for all uses
39
+ of the work, to the fullest extent permitted by applicable law.
40
+ * When using or citing the work, you should not imply endorsement by the author
41
+ or the affirmer.
@@ -0,0 +1,66 @@
1
+ # Jekyll::Steem
2
+
3
+ Liquid tag for displaying Steem content in Jekyll sites: `{% steem %}`.
4
+
5
+ [![Build Status](https://travis-ci.org/inertia186/jekyll-steem.svg?branch=master)](https://travis-ci.org/inertia186/jekyll-steem)
6
+
7
+ ## Installation
8
+
9
+ Add this line to your application's Gemfile:
10
+
11
+ ```bash
12
+ gem 'jekyll-steem'
13
+ ```
14
+
15
+ And then execute:
16
+
17
+ ```bash
18
+ bundle
19
+ ```
20
+
21
+ Or install it yourself as:
22
+
23
+ ```bash
24
+ gem install jekyll-steem
25
+ ```
26
+
27
+ Then add the following to your site's `_config.yml`:
28
+
29
+ ```yml
30
+ plugins:
31
+ - jekyll-steem
32
+ ```
33
+
34
+ 💡 If you are using a Jekyll version less than 3.5.0, use the `gems` key instead of `plugins`.
35
+
36
+ ## Usage
37
+
38
+ Use the tag as follows in your Jekyll pages, posts and collections:
39
+
40
+ ```liquid
41
+ {% steem author/permlink %}
42
+ ```
43
+
44
+ This will place the associated content on the page.
45
+
46
+ ## Contributing
47
+
48
+ 1. Fork it ( https://github.com/inertia186/jekyll-steem/fork )
49
+ 2. Create your feature branch (`git checkout -b my-new-feature`)
50
+ 3. Commit your changes (`git commit -am 'Add some feature'`)
51
+ 4. Push to the branch (`git push origin my-new-feature`)
52
+ 5. Create a new Pull Request
53
+
54
+ ---
55
+
56
+ <center>
57
+ <img src="https://i.imgur.com/9iXdqM9.png" />
58
+ </center>
59
+
60
+ ## Get in touch!
61
+
62
+ If you're using Jekyll::Steem, I'd love to hear from you. Drop me a line and tell me what you think! I'm [@inertia](https://steemit.com/@inertia) on STEEM.
63
+
64
+ ## License
65
+
66
+ I don't believe in intellectual "property". If you do, consider Jekyll::Steem as licensed under a Creative Commons [![CC0](http://i.creativecommons.org/p/zero/1.0/80x15.png)](http://creativecommons.org/publicdomain/zero/1.0/) License.
@@ -0,0 +1,38 @@
1
+ require 'bundler/gem_tasks'
2
+ require 'rspec/core/rake_task'
3
+ require 'yard'
4
+ require 'jekyll'
5
+ require 'jekyll-steem'
6
+
7
+ RSpec::Core::RakeTask.new(:spec)
8
+
9
+ task default: :spec
10
+
11
+ YARD::Rake::YardocTask.new do |t|
12
+ t.files = ['lib/**/*.rb']
13
+ end
14
+
15
+ namespace :clean do
16
+ desc 'Deletes spec/fixtures/vcr_cassettes/*.yml so they can be rebuilt fresh.'
17
+ task :vcr do |t|
18
+ exec 'rm -v spec/fixtures/vcr_cassettes/*.yml'
19
+ end
20
+ end
21
+
22
+ desc 'Build a new version of the jekyll-steem gem.'
23
+ task :build do
24
+ exec 'gem build jekyll-steem.gemspec'
25
+ end
26
+
27
+ desc "Publish jekyll-steem-#{Jekyll::Steem::VERSION}.gem."
28
+ task :push do
29
+ exec "gem push jekyll-steem-#{Jekyll::Steem::VERSION}.gem"
30
+ end
31
+
32
+ # We're not going to yank on a regular basis, but this is how it's done if you
33
+ # really want a task for that for some reason.
34
+
35
+ # desc 'Yank jekyll-steem-#{Jekyll::Steem::VERSION}.gem.'
36
+ # task :yank do
37
+ # exec "gem yank jekyll-steem -v #{Jekyll::Steem::VERSION}"
38
+ # end
@@ -0,0 +1,35 @@
1
+ # frozen_string_literal: true
2
+
3
+ lib = File.expand_path('lib', __dir__)
4
+
5
+ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
6
+ require 'jekyll-steem/version'
7
+
8
+ Gem::Specification.new do |spec|
9
+ spec.name = 'jekyll-steem'
10
+ spec.version = Jekyll::Steem::VERSION
11
+ spec.authors = ['Anthony Martin']
12
+ spec.email = ['jekyll-steem@martin-studio.com']
13
+ spec.summary = 'Liquid tag for displaying Steem content in Jekyll sites.'
14
+ spec.homepage = 'https://github.com/inertia186/jekyll-steem'
15
+ spec.license = 'CC0-1.0'
16
+
17
+ spec.required_ruby_version = '>= 2.3.0'
18
+
19
+ spec.files = `git ls-files -z`.split("\x0")
20
+ spec.executables = spec.files.grep(%r!^bin/!) { |f| File.basename(f) }
21
+ spec.test_files = spec.files.grep(%r!^(test|spec|features)/!)
22
+ spec.require_paths = ['lib']
23
+
24
+ spec.add_dependency 'steem-ruby', '~> 0.9'
25
+
26
+ spec.add_development_dependency 'bundler'
27
+ spec.add_development_dependency 'jekyll'
28
+ spec.add_development_dependency 'rake'
29
+ spec.add_development_dependency 'rspec'
30
+ spec.add_development_dependency 'rubocop-jekyll', '~> 0.4'
31
+ spec.add_development_dependency 'webmock'
32
+ spec.add_development_dependency 'vcr'
33
+ spec.add_development_dependency 'simplecov'
34
+ spec.add_development_dependency 'yard'
35
+ end
@@ -0,0 +1,9 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'jekyll-steem/version'
4
+ require 'jekyll-steem/steem_tag'
5
+
6
+ module Jekyll
7
+ module Steem
8
+ end
9
+ end
@@ -0,0 +1,90 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'cgi'
4
+ require 'steem'
5
+
6
+ Net::OpenTimeout = Class.new(RuntimeError) unless Net.const_defined?(:OpenTimeout)
7
+ Net::ReadTimeout = Class.new(RuntimeError) unless Net.const_defined?(:ReadTimeout)
8
+
9
+ module Jekyll
10
+ module Steem
11
+
12
+ # Use the tag as follows in your Jekyll pages, posts and collections:
13
+ #
14
+ # {% steem author/permlink %}
15
+ class SteemTag < Liquid::Tag
16
+ def render(context)
17
+ @encoding = context.registers[:site].config['encoding'] || 'utf-8'
18
+ @settings = context.registers[:site].config['steem']
19
+
20
+ if (tag_contents = determine_arguments(@markup.strip))
21
+ steem_slug = tag_contents[0]
22
+
23
+ steem_tag(steem_slug)
24
+ else
25
+ raise ArgumentError, <<~ERROR
26
+ Syntax error in tag 'steem' while parsing the following markup:
27
+ #{@markup}
28
+ Valid syntax:
29
+ {% steem author/permlink %}
30
+
31
+ ERROR
32
+ end
33
+ end
34
+ private
35
+ def determine_arguments(input)
36
+ return unless input =~ /@?[^\/]+\/[^\/]+/i
37
+
38
+ [input]
39
+ end
40
+
41
+ def steem_tag(steem_slug)
42
+ steem_slug = steem_slug.split('@').last
43
+ steem_slug = steem_slug.split('/')
44
+ author = steem_slug[0]
45
+ permlink = steem_slug[1..-1].join('/')
46
+ permlink = permlink.split('?').first
47
+ permlink = permlink.split('#').first
48
+ api = ::Steem::CondenserApi.new
49
+
50
+ api.get_content(author, permlink) do |content|
51
+ body = content.body
52
+ metadata = JSON[content.json_metadata] rescue nil || {}
53
+ canonical_url = metadata.fetch('canonical_url', "https://steemit.com/@#{author}/#{permlink}")
54
+
55
+ # This will normalize image hoster proxy URLs that the author copied
56
+ # from another post.
57
+
58
+ body = body.gsub(/https:\/\/steemitimages.com\/[0-9]+x0\/https:\/\//, 'https://')
59
+
60
+ # Although it works on steemit.com and many other markdown interpretors,
61
+ # kramdown doesn't like this, so we have to fix it:
62
+ #
63
+ # <div>
64
+ # This *won't* work.
65
+ # </div>
66
+ #
67
+ # See: https://stackoverflow.blog/2008/06/25/three-markdown-gotcha/
68
+
69
+ body = body.gsub(/<([^\/].+)>(.+)<\/\1>/m) do
70
+ match = Regexp.last_match
71
+ html = Kramdown::Document.new(match[2]).to_html
72
+
73
+ "<#{match[1]}>#{html.gsub("\n", "<br />")}</#{match[1]}>"
74
+ end
75
+
76
+ body + <<~DONE
77
+ \n<hr />
78
+ <p>
79
+ See: <a href="#{canonical_url}">#{content.title}</a>
80
+ by
81
+ <a href="https://steemit.com/@#{author}">@#{author}</a>
82
+ </p>
83
+ DONE
84
+ end
85
+ end
86
+ end
87
+ end
88
+ end
89
+
90
+ Liquid::Template.register_tag('steem', Jekyll::Steem::SteemTag)
@@ -0,0 +1,7 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Jekyll
4
+ module Steem
5
+ VERSION = '1.0.0'
6
+ end
7
+ end
@@ -0,0 +1,133 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: post
5
+ uri: https://api.steemit.com/
6
+ body:
7
+ encoding: UTF-8
8
+ string: '{"jsonrpc":"2.0","id":1,"method":"jsonrpc.get_methods","params":{}}'
9
+ headers:
10
+ Content-Type:
11
+ - application/json; charset=utf-8
12
+ User-Agent:
13
+ - steem-ruby/0.9.4
14
+ Accept-Encoding:
15
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
16
+ Accept:
17
+ - "*/*"
18
+ response:
19
+ status:
20
+ code: 200
21
+ message: OK
22
+ headers:
23
+ Date:
24
+ - Wed, 15 Jan 2020 21:26:11 GMT
25
+ Content-Type:
26
+ - application/json
27
+ Transfer-Encoding:
28
+ - chunked
29
+ Connection:
30
+ - keep-alive
31
+ Server:
32
+ - nginx
33
+ X-Jussi-Request-Id:
34
+ - '000461044445868916'
35
+ X-Amzn-Trace-Id:
36
+ - Root=1-5e1f8373-ab1da9ba572dea3c4f8555e0
37
+ Access-Control-Allow-Origin:
38
+ - "*"
39
+ Access-Control-Allow-Methods:
40
+ - GET, POST, OPTIONS
41
+ Access-Control-Allow-Headers:
42
+ - DNT,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Content-Range,Range
43
+ Strict-Transport-Security:
44
+ - max-age=31557600; includeSubDomains; preload
45
+ Content-Security-Policy:
46
+ - upgrade-insecure-requests
47
+ body:
48
+ encoding: ASCII-8BIT
49
+ string: '{"jsonrpc":"2.0","result":["account_by_key_api.get_key_references","block_api.get_block","block_api.get_block_header","condenser_api.broadcast_block","condenser_api.broadcast_transaction","condenser_api.broadcast_transaction_synchronous","condenser_api.find_proposals","condenser_api.get_account_count","condenser_api.get_account_history","condenser_api.get_account_references","condenser_api.get_account_reputations","condenser_api.get_account_votes","condenser_api.get_accounts","condenser_api.get_active_votes","condenser_api.get_active_witnesses","condenser_api.get_block","condenser_api.get_block_header","condenser_api.get_blog","condenser_api.get_blog_authors","condenser_api.get_blog_entries","condenser_api.get_chain_properties","condenser_api.get_comment_discussions_by_payout","condenser_api.get_config","condenser_api.get_content","condenser_api.get_content_replies","condenser_api.get_conversion_requests","condenser_api.get_current_median_history_price","condenser_api.get_discussions_by_active","condenser_api.get_discussions_by_author_before_date","condenser_api.get_discussions_by_blog","condenser_api.get_discussions_by_cashout","condenser_api.get_discussions_by_children","condenser_api.get_discussions_by_comments","condenser_api.get_discussions_by_created","condenser_api.get_discussions_by_feed","condenser_api.get_discussions_by_hot","condenser_api.get_discussions_by_promoted","condenser_api.get_discussions_by_trending","condenser_api.get_discussions_by_votes","condenser_api.get_dynamic_global_properties","condenser_api.get_escrow","condenser_api.get_expiring_vesting_delegations","condenser_api.get_feed","condenser_api.get_feed_entries","condenser_api.get_feed_history","condenser_api.get_follow_count","condenser_api.get_followers","condenser_api.get_following","condenser_api.get_hardfork_version","condenser_api.get_key_references","condenser_api.get_market_history","condenser_api.get_market_history_buckets","condenser_api.get_next_scheduled_hardfork","condenser_api.get_open_orders","condenser_api.get_ops_in_block","condenser_api.get_order_book","condenser_api.get_owner_history","condenser_api.get_post_discussions_by_payout","condenser_api.get_potential_signatures","condenser_api.get_reblogged_by","condenser_api.get_recent_trades","condenser_api.get_recovery_request","condenser_api.get_replies_by_last_update","condenser_api.get_required_signatures","condenser_api.get_reward_fund","condenser_api.get_savings_withdraw_from","condenser_api.get_savings_withdraw_to","condenser_api.get_state","condenser_api.get_tags_used_by_author","condenser_api.get_ticker","condenser_api.get_trade_history","condenser_api.get_transaction","condenser_api.get_transaction_hex","condenser_api.get_trending_tags","condenser_api.get_version","condenser_api.get_vesting_delegations","condenser_api.get_volume","condenser_api.get_withdraw_routes","condenser_api.get_witness_by_account","condenser_api.get_witness_count","condenser_api.get_witness_schedule","condenser_api.get_witnesses","condenser_api.get_witnesses_by_vote","condenser_api.list_proposal_votes","condenser_api.list_proposals","condenser_api.lookup_account_names","condenser_api.lookup_accounts","condenser_api.lookup_witness_accounts","condenser_api.verify_account_authority","condenser_api.verify_authority","database_api.find_account_recovery_requests","database_api.find_accounts","database_api.find_change_recovery_account_requests","database_api.find_comments","database_api.find_decline_voting_rights_requests","database_api.find_escrows","database_api.find_limit_orders","database_api.find_owner_histories","database_api.find_proposals","database_api.find_savings_withdrawals","database_api.find_sbd_conversion_requests","database_api.find_vesting_delegation_expirations","database_api.find_vesting_delegations","database_api.find_votes","database_api.find_withdraw_vesting_routes","database_api.find_witnesses","database_api.get_active_witnesses","database_api.get_config","database_api.get_current_price_feed","database_api.get_dynamic_global_properties","database_api.get_feed_history","database_api.get_hardfork_properties","database_api.get_order_book","database_api.get_potential_signatures","database_api.get_required_signatures","database_api.get_reward_funds","database_api.get_transaction_hex","database_api.get_version","database_api.get_witness_schedule","database_api.list_account_recovery_requests","database_api.list_accounts","database_api.list_change_recovery_account_requests","database_api.list_comments","database_api.list_decline_voting_rights_requests","database_api.list_escrows","database_api.list_limit_orders","database_api.list_owner_histories","database_api.list_proposal_votes","database_api.list_proposals","database_api.list_savings_withdrawals","database_api.list_sbd_conversion_requests","database_api.list_vesting_delegation_expirations","database_api.list_vesting_delegations","database_api.list_votes","database_api.list_withdraw_vesting_routes","database_api.list_witness_votes","database_api.list_witnesses","database_api.verify_account_authority","database_api.verify_authority","database_api.verify_signatures","jsonrpc.get_methods","jsonrpc.get_signature","market_history_api.get_market_history","market_history_api.get_market_history_buckets","market_history_api.get_order_book","market_history_api.get_recent_trades","market_history_api.get_ticker","market_history_api.get_trade_history","market_history_api.get_volume","network_broadcast_api.broadcast_block","network_broadcast_api.broadcast_transaction","rc_api.find_rc_accounts","rc_api.get_resource_params","rc_api.get_resource_pool","reputation_api.get_account_reputations"],"id":1}'
50
+ http_version:
51
+ recorded_at: Wed, 15 Jan 2020 21:26:11 GMT
52
+ - request:
53
+ method: post
54
+ uri: https://api.steemit.com/
55
+ body:
56
+ encoding: UTF-8
57
+ string: '{"jsonrpc":"2.0","id":2,"method":"condenser_api.get_content","params":["inertia","kinda-spooky"]}'
58
+ headers:
59
+ Content-Type:
60
+ - application/json; charset=utf-8
61
+ User-Agent:
62
+ - steem-ruby/0.9.4
63
+ Accept-Encoding:
64
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
65
+ Accept:
66
+ - "*/*"
67
+ Host:
68
+ - api.steemit.com
69
+ Content-Length:
70
+ - '67'
71
+ response:
72
+ status:
73
+ code: 200
74
+ message: OK
75
+ headers:
76
+ Date:
77
+ - Wed, 15 Jan 2020 21:26:12 GMT
78
+ Content-Type:
79
+ - application/json
80
+ Transfer-Encoding:
81
+ - chunked
82
+ Connection:
83
+ - keep-alive
84
+ Server:
85
+ - nginx
86
+ X-Jussi-Request-Id:
87
+ - '000681047553775662'
88
+ X-Amzn-Trace-Id:
89
+ - Root=1-5e1f8374-38a1e53074995c4c7c4a002c
90
+ Access-Control-Allow-Origin:
91
+ - "*"
92
+ Access-Control-Allow-Methods:
93
+ - GET, POST, OPTIONS
94
+ Access-Control-Allow-Headers:
95
+ - DNT,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Content-Range,Range
96
+ Strict-Transport-Security:
97
+ - max-age=31557600; includeSubDomains; preload
98
+ Content-Security-Policy:
99
+ - upgrade-insecure-requests
100
+ body:
101
+ encoding: ASCII-8BIT
102
+ string: '{"jsonrpc":"2.0","result":{"id":13324169,"author":"inertia","permlink":"kinda-spooky","category":"governance","parent_author":"","parent_permlink":"governance","title":"Kinda
103
+ Spooky","body":"Late Monday night (pacific), we were observing the hardfork
104
+ witness majority ...\n\n![](https:\/\/steemitimages.com\/DQmejoQtUkGCt6ZePSrbxmu5ydbFVB3MZzSkxz312Cj94Z3\/image.png)\n\nAt
105
+ the time, the witnesses had not quite reached 17 of 20 adoption, required
106
+ for the blockchain to consider it a majority.\n\nEarly yesterday (also pacific
107
+ time shown), 0.19.2 finally had a majority (20 days after release).\n\n![](https:\/\/steemitimages.com\/DQmVbEojDqG88CmvDgk6Q47MVsGw7CRPmJQWCnCxeiTMYNN\/image.png)\n\nYou
108
+ can also see this data on [steemd.com](https:\/\/steemd.com\/fales).\n\nSo
109
+ here''s the spooky part. *Poloniex enabled their STEEM wallets the same day
110
+ 0.19.2 got a majority.*\n\n---\n\n#### Hypotesis\n\n*There was something in
111
+ 0.19.2 that Poloniex believed they needed in order to safely enable STEEM
112
+ wallets.*\n\nPoloniex claimed they needed STEEM development to address *something*
113
+ before they could enable STEEM wallets. It was obvious that STEEM development
114
+ was doing everything they could, including creating a [definitive guide on
115
+ running an exchange node (published 20 days ago)](https:\/\/steemit.com\/steem\/@steemitdev\/how-to-set-up-a-steem-exchange-node-in-60-minutes-or-less).\n\nBut
116
+ none of this was enough for Poloniex. Then, the day enough witnesses adopt
117
+ 0.19.2, Poloniex enables.\n\n#### Null-Hypothesis\n\n*There is no way witness
118
+ majority had anything to do with Poloniex''s independent decision to disable
119
+ STEEM wallets for 2 solid months.*\n\nThe fact that it happened on the same
120
+ day is just an amazing coincidence. It''s not like there was any specific
121
+ threat to Poloniex from 0.19.1. Not only that but whatever it was that 0.19.2
122
+ addressed, the changes were enabled even while the majority was not reached.\n\n**Furthermore,
123
+ there''s no way witnesses who delayed the update were indirectly locking up
124
+ funds on Poloniex.**\n---\n <center><a href=\"http:\/\/steemspeak.com\"><img
125
+ src=\"http:\/\/i.imgur.com\/qPLkj22.png\"><\/a><\/center>\n ---\n","json_metadata":"{\"tags\":[\"governance\",\"voting\",\"steemit\",\"witnessvoting-engagement\",\"polonix\"],\"image\":[\"https:\/\/steemitimages.com\/DQmejoQtUkGCt6ZePSrbxmu5ydbFVB3MZzSkxz312Cj94Z3\/image.png\",\"https:\/\/steemitimages.com\/DQmVbEojDqG88CmvDgk6Q47MVsGw7CRPmJQWCnCxeiTMYNN\/image.png\"],\"links\":[\"https:\/\/steemd.com\/fales\",\"https:\/\/steemit.com\/steem\/@steemitdev\/how-to-set-up-a-steem-exchange-node-in-60-minutes-or-less\"],\"app\":\"steemit\/0.1\",\"format\":\"markdown\"}","last_update":"2017-09-20T17:16:00","created":"2017-09-20T15:37:03","active":"2017-10-01T01:39:39","last_payout":"2017-09-27T15:37:03","depth":0,"children":25,"net_rshares":0,"abs_rshares":0,"vote_rshares":0,"children_abs_rshares":"4506095752","cashout_time":"1969-12-31T23:59:59","max_cashout_time":"1969-12-31T23:59:59","total_vote_weight":0,"reward_weight":10000,"total_payout_value":"38.639
126
+ SBD","curator_payout_value":"6.796 SBD","author_rewards":35711,"net_votes":114,"root_author":"inertia","root_permlink":"kinda-spooky","max_accepted_payout":"1000000.000
127
+ SBD","percent_steem_dollars":10000,"allow_replies":true,"allow_votes":true,"allow_curation_rewards":true,"beneficiaries":[],"url":"\/governance\/@inertia\/kinda-spooky","root_title":"Kinda
128
+ Spooky","pending_payout_value":"0.000 SBD","total_pending_payout_value":"0.000
129
+ STEEM","active_votes":[{"voter":"fminerten","weight":133571,"rshares":"1120470569986","percent":1500,"reputation":0,"time":"2017-09-20T19:15:57"},{"voter":"steempty","weight":66804,"rshares":"560397105558","percent":1500,"reputation":0,"time":"2017-09-20T19:15:54"},{"voter":"berkah","weight":8576,"rshares":"36583319431","percent":1500,"reputation":0,"time":"2017-09-20T16:06:33"},{"voter":"sandra","weight":3621,"rshares":"15421171152","percent":900,"reputation":0,"time":"2017-09-20T16:06:36"},{"voter":"ihashfury","weight":0,"rshares":"5862709303","percent":520,"reputation":0,"time":"2017-09-20T19:15:06"},{"voter":"rossco99","weight":839,"rshares":"7036651310","percent":2000,"reputation":0,"time":"2017-09-20T19:16:15"},{"voter":"jason","weight":3604,"rshares":"15294881820","percent":621,"reputation":0,"time":"2017-09-20T16:06:42"},{"voter":"boatymcboatface","weight":32318,"rshares":"271101418046","percent":2000,"reputation":0,"time":"2017-09-20T19:16:15"},{"voter":"proctologic","weight":1221,"rshares":"5123022984","percent":500,"reputation":0,"time":"2017-09-20T17:16:57"},{"voter":"tuck-fheman","weight":58409,"rshares":"489970350861","percent":10000,"reputation":0,"time":"2017-09-20T22:32:51"},{"voter":"jchch","weight":9456,"rshares":"79322788505","percent":2000,"reputation":0,"time":"2017-09-20T22:25:51"},{"voter":"ilanaakoundi","weight":8402,"rshares":"70485338967","percent":2000,"reputation":0,"time":"2017-09-20T22:25:45"},{"voter":"pnc","weight":11968,"rshares":"51051783350","percent":1500,"reputation":0,"time":"2017-09-20T16:06:33"},{"voter":"makishart","weight":5185,"rshares":"26963028595","percent":3600,"reputation":0,"time":"2017-09-20T15:49:09"},{"voter":"kingscrown","weight":43459,"rshares":"219838340577","percent":2000,"reputation":0,"time":"2017-09-20T19:15:03"},{"voter":"teamsteem","weight":551921,"rshares":"2403037936506","percent":1500,"reputation":0,"time":"2017-09-20T16:05:57"},{"voter":"daycrypter","weight":2886,"rshares":"24212952509","percent":10000,"reputation":0,"time":"2017-09-20T21:53:00"},{"voter":"theshell","weight":4682,"rshares":"39275629023","percent":2000,"reputation":0,"time":"2017-09-20T19:16:15"},{"voter":"pangur-ban","weight":96,"rshares":805773367,"percent":2000,"reputation":0,"time":"2017-09-20T22:25:45"},{"voter":"raphaelom","weight":90,"rshares":1780025649,"percent":10000,"reputation":0,"time":"2017-09-20T15:40:15"},{"voter":"bacchist","weight":4675,"rshares":"39216182547","percent":2000,"reputation":0,"time":"2017-09-20T22:26:18"},{"voter":"lauralemons","weight":731,"rshares":3118895722,"percent":750,"reputation":0,"time":"2017-09-20T16:06:33"},{"voter":"hitmeasap","weight":255,"rshares":1091799762,"percent":750,"reputation":0,"time":"2017-09-20T16:06:33"},{"voter":"matt-a","weight":549143,"rshares":"3705523812670","percent":10000,"reputation":0,"time":"2017-09-20T15:52:21"},{"voter":"elyaque","weight":33315,"rshares":"169374125263","percent":2000,"reputation":0,"time":"2017-09-20T16:01:48"},{"voter":"vi1son","weight":28681,"rshares":"120295168880","percent":10000,"reputation":0,"time":"2017-09-20T16:11:06"},{"voter":"mrwang","weight":3234,"rshares":"19755193475","percent":2000,"reputation":0,"time":"2017-09-20T15:57:39"},{"voter":"gikitiki","weight":1519,"rshares":"6880153787","percent":2500,"reputation":0,"time":"2017-09-20T16:04:51"},{"voter":"inertia","weight":0,"rshares":"884730287399","percent":0,"reputation":0,"time":"2017-10-29T02:56:48"},{"voter":"konti","weight":5044,"rshares":"21155560473","percent":5000,"reputation":0,"time":"2017-09-20T16:26:00"},{"voter":"social","weight":0,"rshares":0,"percent":10000,"reputation":0,"time":"2018-10-23T21:16:24"},{"voter":"greenman","weight":97902,"rshares":"452906036779","percent":2500,"reputation":0,"time":"2017-09-20T15:50:39"},{"voter":"webdeals","weight":6209,"rshares":"38682572910","percent":1000,"reputation":0,"time":"2017-09-20T15:57:15"},{"voter":"greymass","weight":2581,"rshares":"21652671891","percent":2000,"reputation":0,"time":"2017-09-20T22:25:45"},{"voter":"dirty.hera","weight":142,"rshares":1190256606,"percent":2000,"reputation":0,"time":"2017-09-20T22:25:45"},{"voter":"dez1337","weight":3964,"rshares":"33254730463","percent":5000,"reputation":0,"time":"2017-09-21T05:09:48"},{"voter":"letc","weight":28,"rshares":551629079,"percent":1000,"reputation":0,"time":"2017-09-20T15:40:15"},{"voter":"toxichan","weight":521,"rshares":"4370521779","percent":2000,"reputation":0,"time":"2017-09-20T22:25:48"},{"voter":"kurtbeil","weight":40281,"rshares":"337906176667","percent":10000,"reputation":0,"time":"2017-09-24T17:03:03"},{"voter":"lamech-m","weight":654,"rshares":2793873129,"percent":1500,"reputation":0,"time":"2017-09-20T16:06:33"},{"voter":"ats-david","weight":299236,"rshares":"2510167891553","percent":2000,"reputation":0,"time":"2017-09-20T22:24:24"},{"voter":"richardcrill","weight":37715,"rshares":"158188362295","percent":5000,"reputation":0,"time":"2017-09-20T16:24:30"},{"voter":"holoz0r","weight":2676,"rshares":"11220196163","percent":3500,"reputation":0,"time":"2017-09-20T17:17:00"},{"voter":"dan-bn","weight":15254,"rshares":"127957981481","percent":2000,"reputation":0,"time":"2017-09-20T22:25:45"},{"voter":"abh12345","weight":1706,"rshares":"7274195043","percent":1500,"reputation":0,"time":"2017-09-20T16:06:33"},{"voter":"littlescribe","weight":1890,"rshares":"15860387402","percent":2000,"reputation":0,"time":"2017-09-20T22:25:48"},{"voter":"burnin","weight":1605,"rshares":"13459546342","percent":2000,"reputation":0,"time":"2017-09-20T22:25:48"},{"voter":"bestoftherest","weight":269,"rshares":2251828966,"percent":2000,"reputation":0,"time":"2017-09-20T22:25:48"},{"voter":"abdullar","weight":285686,"rshares":"2396501773044","percent":3000,"reputation":0,"time":"2017-09-23T16:58:39"},{"voter":"ninkhisibir","weight":297,"rshares":2493234454,"percent":2000,"reputation":0,"time":"2017-09-20T22:25:51"},{"voter":"sunscape","weight":3167,"rshares":"19684523492","percent":2000,"reputation":0,"time":"2017-09-20T15:57:18"},{"voter":"supergoodliving","weight":1758,"rshares":"14747530914","percent":2000,"reputation":0,"time":"2017-09-20T22:25:51"},{"voter":"crowdfundedwhale","weight":11339,"rshares":"49033719508","percent":1200,"reputation":0,"time":"2017-09-20T16:06:09"},{"voter":"teamhumble","weight":1565,"rshares":"6563171428","percent":2000,"reputation":0,"time":"2017-09-20T16:22:27"},{"voter":"ourlifestory","weight":456,"rshares":3824453610,"percent":1600,"reputation":0,"time":"2017-09-20T22:25:51"},{"voter":"seablue","weight":8993,"rshares":"37718748050","percent":2000,"reputation":0,"time":"2017-09-20T17:17:57"},{"voter":"khalilalfamahera","weight":4022,"rshares":"33741369667","percent":10000,"reputation":0,"time":"2017-09-22T11:53:48"},{"voter":"writingamigo","weight":240,"rshares":2015518605,"percent":2000,"reputation":0,"time":"2017-09-20T19:16:15"},{"voter":"steemcollator","weight":1985,"rshares":"16645469185","percent":10000,"reputation":0,"time":"2017-09-21T01:13:36"},{"voter":"estonia","weight":33280,"rshares":"160449906282","percent":10000,"reputation":0,"time":"2017-09-20T16:03:09"},{"voter":"mathworksheets","weight":6615,"rshares":"55490712355","percent":10000,"reputation":0,"time":"2017-09-22T00:11:27"},{"voter":"inber","weight":21903,"rshares":"91864666750","percent":10000,"reputation":0,"time":"2017-09-20T18:16:45"},{"voter":"darth-azrael","weight":1304,"rshares":"5467901272","percent":1300,"reputation":0,"time":"2017-09-20T16:08:39"},{"voter":"steemcenterwiki","weight":1086,"rshares":"6525610438","percent":10000,"reputation":0,"time":"2017-09-20T15:58:00"},{"voter":"kotturinn","weight":2450,"rshares":"19271713006","percent":1500,"reputation":0,"time":"2017-09-20T15:53:03"},{"voter":"darth-cryptic","weight":213,"rshares":971717265,"percent":1300,"reputation":0,"time":"2017-09-20T16:04:42"},{"voter":"fortified","weight":3621,"rshares":"30373311546","percent":3000,"reputation":0,"time":"2017-09-20T23:24:45"},{"voter":"ackza","weight":0,"rshares":0,"percent":100,"reputation":0,"time":"2018-01-11T03:50:27"},{"voter":"aismor","weight":112,"rshares":670252740,"percent":10000,"reputation":0,"time":"2017-09-20T15:58:06"},{"voter":"hammadakhtar","weight":157,"rshares":940767757,"percent":1000,"reputation":0,"time":"2017-09-20T15:58:09"},{"voter":"nomi2233","weight":38,"rshares":1519697852,"percent":10000,"reputation":0,"time":"2017-09-20T15:38:39"},{"voter":"greenstar","weight":1491,"rshares":"6363309792","percent":1500,"reputation":0,"time":"2017-09-20T16:06:33"},{"voter":"nedkelly","weight":329,"rshares":1380108555,"percent":2000,"reputation":0,"time":"2017-09-20T17:18:03"},{"voter":"luckyjack","weight":329,"rshares":1380919078,"percent":2000,"reputation":0,"time":"2017-09-20T17:17:51"},{"voter":"sacred-agent","weight":1019,"rshares":"12102688676","percent":1100,"reputation":0,"time":"2017-09-20T15:42:21"},{"voter":"manuel78","weight":14,"rshares":61370527,"percent":100,"reputation":0,"time":"2017-09-20T16:11:36"},{"voter":"mandagoi","weight":1658,"rshares":"7026937915","percent":1000,"reputation":0,"time":"2017-09-20T16:06:45"},{"voter":"jamesallen","weight":2780,"rshares":"11658864977","percent":2000,"reputation":0,"time":"2017-09-20T17:17:48"},{"voter":"followbtcnews","weight":382,"rshares":3206155670,"percent":500,"reputation":0,"time":"2017-09-20T19:20:36"},{"voter":"gktown","weight":10,"rshares":81873510,"percent":10000,"reputation":0,"time":"2017-09-20T21:23:18"},{"voter":"nrg","weight":337,"rshares":1513196022,"percent":10000,"reputation":0,"time":"2017-09-20T16:05:06"},{"voter":"hqmafa420","weight":444,"rshares":3723148264,"percent":2000,"reputation":0,"time":"2017-09-20T22:25:51"},{"voter":"joha09sohi","weight":298,"rshares":2502523792,"percent":10000,"reputation":0,"time":"2017-09-21T11:36:39"},{"voter":"musiclover","weight":877,"rshares":3677807231,"percent":2000,"reputation":0,"time":"2017-09-20T17:17:54"},{"voter":"anacristinasilva","weight":1804,"rshares":"15135802899","percent":10000,"reputation":0,"time":"2017-09-20T19:22:33"},{"voter":"hadimemories","weight":37,"rshares":2487525624,"percent":10000,"reputation":0,"time":"2017-09-20T15:38:00"},{"voter":"saithe","weight":734,"rshares":4255884597,"percent":10000,"reputation":0,"time":"2017-09-20T15:58:45"},{"voter":"gamblor","weight":51,"rshares":216832000,"percent":3500,"reputation":0,"time":"2017-09-20T17:17:30"},{"voter":"stefen","weight":226,"rshares":3792141139,"percent":10000,"reputation":0,"time":"2017-09-20T15:40:48"},{"voter":"cryptopie","weight":1222,"rshares":"10248699159","percent":6000,"reputation":0,"time":"2017-09-21T15:14:21"},{"voter":"spl","weight":10801,"rshares":"90608029768","percent":10000,"reputation":0,"time":"2017-09-20T22:32:15"},{"voter":"themarkymark","weight":1248,"rshares":"10471473692","percent":10000,"reputation":0,"time":"2017-09-20T20:48:39"},{"voter":"macchiata","weight":326,"rshares":2738910985,"percent":10000,"reputation":0,"time":"2017-09-21T00:07:54"},{"voter":"thegoldenphoenix","weight":476,"rshares":2742031845,"percent":10000,"reputation":0,"time":"2017-09-20T15:58:54"},{"voter":"irwanumpal","weight":183,"rshares":784347255,"percent":1500,"reputation":0,"time":"2017-09-20T16:06:33"},{"voter":"muliaeko","weight":3,"rshares":441816040,"percent":10000,"reputation":0,"time":"2017-09-20T15:37:33"},{"voter":"duekie","weight":22,"rshares":92096969,"percent":10000,"reputation":0,"time":"2017-09-20T16:08:51"},{"voter":"beet","weight":2668,"rshares":"11191208608","percent":3500,"reputation":0,"time":"2017-09-20T17:17:03"},{"voter":"sacredwriter","weight":13,"rshares":57178044,"percent":2000,"reputation":0,"time":"2017-09-20T17:18:00"},{"voter":"spotlight","weight":358,"rshares":2197578566,"percent":1000,"reputation":0,"time":"2017-09-20T15:57:33"},{"voter":"turymenecier","weight":15,"rshares":64271059,"percent":3000,"reputation":0,"time":"2017-09-20T16:07:51"},{"voter":"anilmehta00","weight":8,"rshares":95440330,"percent":10000,"reputation":0,"time":"2017-09-20T15:42:30"},{"voter":"sargento","weight":315,"rshares":1321716335,"percent":10000,"reputation":0,"time":"2017-09-20T16:40:00"},{"voter":"toannguyen6895","weight":85,"rshares":599724418,"percent":5093,"reputation":0,"time":"2017-09-20T15:55:03"},{"voter":"antilena","weight":162,"rshares":1013843035,"percent":10000,"reputation":0,"time":"2017-09-20T15:57:09"},{"voter":"coingyan","weight":216,"rshares":1814221301,"percent":10000,"reputation":0,"time":"2017-09-20T20:39:57"},{"voter":"necromortis","weight":212,"rshares":887362087,"percent":3500,"reputation":0,"time":"2017-09-20T17:17:33"},{"voter":"xoxois","weight":38,"rshares":313323087,"percent":10000,"reputation":0,"time":"2017-09-20T19:32:42"},{"voter":"zinia","weight":191,"rshares":911088623,"percent":10000,"reputation":0,"time":"2017-09-20T16:03:30"},{"voter":"pariza","weight":22,"rshares":951843751,"percent":10000,"reputation":0,"time":"2017-09-20T15:38:33"},{"voter":"asatu","weight":17,"rshares":118299578,"percent":10000,"reputation":0,"time":"2017-09-20T15:56:06"},{"voter":"iamfrog","weight":236,"rshares":1086678337,"percent":10000,"reputation":0,"time":"2017-09-20T16:04:27"},{"voter":"fredikotov","weight":220,"rshares":1011998223,"percent":10000,"reputation":0,"time":"2017-09-20T16:04:27"},{"voter":"jepik","weight":221,"rshares":1016453110,"percent":10000,"reputation":0,"time":"2017-09-20T16:04:27"},{"voter":"dreamm","weight":194,"rshares":893668391,"percent":10000,"reputation":0,"time":"2017-09-20T16:04:27"},{"voter":"codewithcheese","weight":1327,"rshares":"5565958659","percent":10000,"reputation":0,"time":"2017-09-20T17:38:00"}],"replies":[],"author_reputation":"212108740601791","promoted":"0.000
130
+ STEEM","body_length":0,"reblogged_by":[]},"id":2}'
131
+ http_version:
132
+ recorded_at: Wed, 15 Jan 2020 21:26:12 GMT
133
+ recorded_with: VCR 5.0.0
@@ -0,0 +1,79 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: post
5
+ uri: https://api.steemit.com/
6
+ body:
7
+ encoding: UTF-8
8
+ string: '{"jsonrpc":"2.0","id":3,"method":"condenser_api.get_content","params":["stemgeeks","177-000-stem-burned-and-stem-miner-price-increase-in-2020"]}'
9
+ headers:
10
+ Content-Type:
11
+ - application/json; charset=utf-8
12
+ User-Agent:
13
+ - steem-ruby/0.9.4
14
+ Accept-Encoding:
15
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
16
+ Accept:
17
+ - "*/*"
18
+ Host:
19
+ - api.steemit.com
20
+ Content-Length:
21
+ - '97'
22
+ response:
23
+ status:
24
+ code: 200
25
+ message: OK
26
+ headers:
27
+ Date:
28
+ - Wed, 15 Jan 2020 21:26:12 GMT
29
+ Content-Type:
30
+ - application/json
31
+ Transfer-Encoding:
32
+ - chunked
33
+ Connection:
34
+ - keep-alive
35
+ Server:
36
+ - nginx
37
+ X-Jussi-Request-Id:
38
+ - '000447081631059699'
39
+ X-Amzn-Trace-Id:
40
+ - Root=1-5e1f8374-8456f716282007bbc26e80eb
41
+ Access-Control-Allow-Origin:
42
+ - "*"
43
+ Access-Control-Allow-Methods:
44
+ - GET, POST, OPTIONS
45
+ Access-Control-Allow-Headers:
46
+ - DNT,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Content-Range,Range
47
+ Strict-Transport-Security:
48
+ - max-age=31557600; includeSubDomains; preload
49
+ Content-Security-Policy:
50
+ - upgrade-insecure-requests
51
+ body:
52
+ encoding: ASCII-8BIT
53
+ string: '{"jsonrpc":"2.0","result":{"id":82905992,"author":"stemgeeks","permlink":"177-000-stem-burned-and-stem-miner-price-increase-in-2020","category":"hive-163521","parent_author":"","parent_permlink":"hive-163521","title":"177,000
54
+ STEM Burned & STEM Miner price increase in 2020.","body":"<center>![](https:\/\/cdn.steemitimages.com\/DQmWfQdaKD1K1T69KW6uNFLmZKYuHZcF8BtEaa8sZxEmETM\/image.png)<\/center>\n\nAs
55
+ we have done since the beginning, we burned another 10% chunk of the STEM
56
+ sell wall. This burn was for **177,000 STEM tokens**. This reduces the sell
57
+ wall to **1,603,000 STEM** from the original 2,500,00 STEM.\n\nhttps:\/\/i.imgur.com\/vj1cQBI.png\n\nWe
58
+ also burned 4B STEM tokens in the beginning to drastically reduce the max
59
+ supply to a reasonable level.\n\nAs promised, we will continue to burn @stemgeeks
60
+ author rewards and @stemcuration curation rewards.\n\nhttps:\/\/i.imgur.com\/ngbHf5t.png\n\nI
61
+ have seen a few users use the **burn for promotion functionality**. Just
62
+ send STEM token to @null with the post you want to promote in the memo field
63
+ and you will increase your posts ranking on trending.\n\nWe have burned over
64
+ 4B tokens out of the 5B max supply.\n\nSTEM Miner tokens have been drastically
65
+ reduced as well and are only available in limited qualities. Starting January
66
+ 1st, 2020, the STEM Miner token **will go up 33% to 20 STEEM**. There is
67
+ a very limited supply of STEM Miner tokens available as the vast majority
68
+ of them have been burned. More will be slowly added to the market based on
69
+ performance over the next 4 days period to the price increase.\n\nSTEM Miners
70
+ are one of the lowest supply Miner tokens available.\n\n**There are only 4
71
+ days to get STEM Miner tokens for 15 STEEM.**","json_metadata":"{\"tags\":[\"stemgeeks\",\"steemleo\",\"palnet\",\"neoxian\",\"burn\",\"stemtoken\",\"stem\"],\"users\":[\"stemgeeks\",\"stemcuration\",\"null\"],\"image\":[\"https:\/\/cdn.steemitimages.com\/DQmWfQdaKD1K1T69KW6uNFLmZKYuHZcF8BtEaa8sZxEmETM\/image.png\",\"https:\/\/i.imgur.com\/vj1cQBI.png\",\"https:\/\/i.imgur.com\/ngbHf5t.png\"],\"app\":\"stemgeeks\/0.1\",\"format\":\"markdown\",\"canonical_url\":\"https:\/\/stemgeeks.net\/@stemgeeks\/177-000-stem-burned-and-stem-miner-price-increase-in-2020\"}","last_update":"2019-12-27T11:48:42","created":"2019-12-27T11:48:42","active":"2020-01-13T14:34:18","last_payout":"2020-01-03T11:48:42","depth":0,"children":4,"net_rshares":0,"abs_rshares":0,"vote_rshares":0,"children_abs_rshares":0,"cashout_time":"1969-12-31T23:59:59","max_cashout_time":"1969-12-31T23:59:59","total_vote_weight":0,"reward_weight":10000,"total_payout_value":"2.214
72
+ SBD","curator_payout_value":"1.686 SBD","author_rewards":11235,"net_votes":77,"root_author":"stemgeeks","root_permlink":"177-000-stem-burned-and-stem-miner-price-increase-in-2020","max_accepted_payout":"1000000.000
73
+ SBD","percent_steem_dollars":0,"allow_replies":true,"allow_votes":true,"allow_curation_rewards":true,"beneficiaries":[],"url":"\/hive-163521\/@stemgeeks\/177-000-stem-burned-and-stem-miner-price-increase-in-2020","root_title":"177,000
74
+ STEM Burned & STEM Miner price increase in 2020.","pending_payout_value":"0.000
75
+ SBD","total_pending_payout_value":"0.000 STEEM","active_votes":[{"voter":"inertia","weight":37289,"rshares":"208858210072","percent":10000,"reputation":0,"time":"2019-12-27T11:53:36"},{"voter":"remlaps","weight":4554,"rshares":"35469282477","percent":10000,"reputation":0,"time":"2020-01-02T00:54:30"},{"voter":"shadowspub","weight":613,"rshares":"4700714095","percent":450,"reputation":0,"time":"2019-12-27T11:52:15"},{"voter":"slider2990","weight":1548,"rshares":"11872534273","percent":10000,"reputation":0,"time":"2019-12-27T16:21:51"},{"voter":"zorg67","weight":162,"rshares":1250950520,"percent":10000,"reputation":0,"time":"2019-12-28T06:23:42"},{"voter":"isaria","weight":136683,"rshares":"774687253921","percent":10000,"reputation":0,"time":"2019-12-27T11:53:54"},{"voter":"apoloo1","weight":201,"rshares":"20230767497","percent":9000,"reputation":0,"time":"2019-12-27T11:48:48"},{"voter":"edkarnie","weight":5633,"rshares":"41413363664","percent":1000,"reputation":0,"time":"2019-12-27T15:12:12"},{"voter":"exe8422","weight":253,"rshares":1190562777,"percent":500,"reputation":0,"time":"2019-12-27T11:50:51"},{"voter":"hope-on-fire","weight":42969,"rshares":"310850381184","percent":8100,"reputation":0,"time":"2019-12-27T13:17:39"},{"voter":"jesus.christ","weight":79,"rshares":450314666,"percent":500,"reputation":0,"time":"2019-12-27T11:53:33"},{"voter":"themarkymark","weight":708989,"rshares":"2920882293480","percent":1500,"reputation":0,"time":"2019-12-27T11:52:00"},{"voter":"leveragetrading","weight":56,"rshares":311810935,"percent":7100,"reputation":0,"time":"2019-12-27T11:53:33"},{"voter":"ragnarokdel","weight":586,"rshares":"4542367162","percent":10000,"reputation":0,"time":"2019-12-28T01:55:42"},{"voter":"buildawhale","weight":1065678,"rshares":"6826501859899","percent":1500,"reputation":0,"time":"2019-12-27T11:52:12"},{"voter":"robertoueti","weight":234,"rshares":1486507865,"percent":300,"reputation":0,"time":"2019-12-27T11:53:00"},{"voter":"storysharing","weight":519,"rshares":4024332195,"percent":10000,"reputation":0,"time":"2019-12-28T06:57:36"},{"voter":"tute","weight":18,"rshares":142147152,"percent":10000,"reputation":0,"time":"2019-12-29T04:28:42"},{"voter":"mytechtrail","weight":5886,"rshares":"45538253282","percent":2500,"reputation":0,"time":"2019-12-28T00:54:15"},{"voter":"upmyvote","weight":2210,"rshares":"11735882089","percent":1500,"reputation":0,"time":"2019-12-27T11:52:09"},{"voter":"abitcoinskeptic","weight":12927,"rshares":"94689512171","percent":1500,"reputation":0,"time":"2019-12-27T14:38:39"},{"voter":"microbot","weight":1500,"rshares":"8647897207","percent":5000,"reputation":0,"time":"2019-12-27T11:50:27"},{"voter":"casberp","weight":1267,"rshares":"8210512970","percent":100,"reputation":0,"time":"2019-12-27T11:52:54"},{"voter":"steemflagrewards","weight":552899,"rshares":"3564943400284","percent":9747,"reputation":0,"time":"2019-12-27T12:00:18"},{"voter":"marcus0alameda","weight":2799,"rshares":"21618766464","percent":10000,"reputation":0,"time":"2019-12-27T17:20:45"},{"voter":"stmdev","weight":0,"rshares":147616074,"percent":100,"reputation":0,"time":"2019-12-27T11:48:45"},{"voter":"tonimontana","weight":10,"rshares":2015156338,"percent":10000,"reputation":0,"time":"2019-12-27T11:48:45"},{"voter":"mynotsofitlife","weight":130,"rshares":834285916,"percent":1000,"reputation":0,"time":"2019-12-27T11:52:57"},{"voter":"steemgridcoin","weight":184,"rshares":1422604286,"percent":10000,"reputation":0,"time":"2019-12-28T01:55:45"},{"voter":"davidesimoncini","weight":69,"rshares":536257023,"percent":1500,"reputation":0,"time":"2019-12-27T18:24:12"},{"voter":"enforcer48","weight":7350,"rshares":"57084133455","percent":1500,"reputation":0,"time":"2019-12-29T14:20:36"},{"voter":"raggypoo","weight":140,"rshares":1084085191,"percent":10000,"reputation":0,"time":"2019-12-28T01:55:45"},{"voter":"montycashmusic","weight":994,"rshares":"7727470428","percent":10000,"reputation":0,"time":"2019-12-31T10:32:09"},{"voter":"lupafilotaxia","weight":3609,"rshares":"19952681521","percent":3500,"reputation":0,"time":"2019-12-27T11:53:54"},{"voter":"gordonramzy","weight":2174,"rshares":"16646808870","percent":10000,"reputation":0,"time":"2019-12-27T16:21:51"},{"voter":"jessica.steem","weight":2103,"rshares":"16151576061","percent":10000,"reputation":0,"time":"2019-12-27T16:21:51"},{"voter":"remlaps-lite","weight":2029,"rshares":"14807785125","percent":10000,"reputation":0,"time":"2019-12-27T13:34:24"},{"voter":"laissez-faire","weight":1,"rshares":90470760,"percent":10000,"reputation":0,"time":"2019-12-27T11:48:51"},{"voter":"balticbadger","weight":10162,"rshares":"78260568532","percent":5000,"reputation":0,"time":"2019-12-27T16:28:06"},{"voter":"steempope","weight":54,"rshares":418738241,"percent":7000,"reputation":0,"time":"2019-12-27T18:05:51"},{"voter":"bluerobo","weight":5417,"rshares":"38809067151","percent":10000,"reputation":0,"time":"2019-12-27T12:01:12"},{"voter":"swiftcash","weight":3978,"rshares":"22348667280","percent":500,"reputation":0,"time":"2019-12-27T11:53:33"},{"voter":"swiftbot","weight":102,"rshares":578146708,"percent":500,"reputation":0,"time":"2019-12-27T11:53:33"},{"voter":"tramelibre","weight":824,"rshares":"6392857263","percent":10000,"reputation":0,"time":"2019-12-28T12:42:21"},{"voter":"louis.random","weight":85,"rshares":616984729,"percent":10000,"reputation":0,"time":"2019-12-27T14:00:06"},{"voter":"sonomori609","weight":128,"rshares":982471074,"percent":10000,"reputation":0,"time":"2019-12-27T16:21:51"},{"voter":"kharma.scribbles","weight":0,"rshares":0,"percent":225,"reputation":0,"time":"2019-12-27T21:49:33"},{"voter":"paolo.senegal","weight":2091,"rshares":"16050864632","percent":10000,"reputation":0,"time":"2019-12-27T16:21:51"},{"voter":"coredump","weight":0,"rshares":51435270,"percent":300,"reputation":0,"time":"2019-12-27T11:48:45"},{"voter":"onespringday","weight":162,"rshares":1258572047,"percent":1000,"reputation":0,"time":"2019-12-28T05:44:48"},{"voter":"haxxdump","weight":0,"rshares":138967094,"percent":500,"reputation":0,"time":"2019-12-27T11:48:45"},{"voter":"quantumdeveloper","weight":315,"rshares":2421360185,"percent":5000,"reputation":0,"time":"2019-12-27T16:21:51"},{"voter":"maruskina","weight":2022,"rshares":"15492072107","percent":5000,"reputation":0,"time":"2019-12-27T16:21:51"},{"voter":"nalacanecorso","weight":154,"rshares":1170602586,"percent":10000,"reputation":0,"time":"2019-12-27T16:21:51"},{"voter":"golden.future","weight":947,"rshares":"6919067352","percent":1000,"reputation":0,"time":"2019-12-27T13:39:21"},{"voter":"r-pal","weight":5,"rshares":129087282,"percent":3000,"reputation":0,"time":"2019-12-27T11:49:06"},{"voter":"leovoter","weight":8,"rshares":878621396,"percent":5000,"reputation":0,"time":"2019-12-27T11:48:48"},{"voter":"mindtrap-leo","weight":0,"rshares":109375417,"percent":596,"reputation":0,"time":"2019-12-27T11:48:45"},{"voter":"cn-leo","weight":18,"rshares":133739480,"percent":200,"reputation":0,"time":"2019-12-27T13:28:24"},{"voter":"stemgeeks","weight":1023,"rshares":"5940115676","percent":3000,"reputation":0,"time":"2019-12-27T11:55:45"},{"voter":"stemcuration","weight":198,"rshares":1144340696,"percent":3000,"reputation":0,"time":"2019-12-27T11:55:54"},{"voter":"zaku-pal","weight":48,"rshares":1082118926,"percent":3000,"reputation":0,"time":"2019-12-27T11:49:09"},{"voter":"naha.stem","weight":59,"rshares":346863233,"percent":10000,"reputation":0,"time":"2019-12-27T11:55:48"},{"voter":"abh12345.stem","weight":170,"rshares":1215412429,"percent":10000,"reputation":0,"time":"2019-12-27T12:26:30"},{"voter":"johnhtims.stem","weight":116,"rshares":975889606,"percent":10000,"reputation":0,"time":"2019-12-27T11:49:54"},{"voter":"r-stem","weight":0,"rshares":0,"percent":10000,"reputation":0,"time":"2019-12-27T11:49:06"},{"voter":"btc4breackfast","weight":2218,"rshares":"16369868857","percent":10000,"reputation":0,"time":"2019-12-27T16:21:48"},{"voter":"brustem","weight":60,"rshares":346894450,"percent":10000,"reputation":0,"time":"2019-12-27T11:53:57"},{"voter":"curation.stem","weight":0,"rshares":0,"percent":7500,"reputation":0,"time":"2019-12-27T11:53:39"},{"voter":"deflacion","weight":0,"rshares":0,"percent":200,"reputation":0,"time":"2019-12-27T11:51:51"},{"voter":"golife","weight":22,"rshares":127141749,"percent":10000,"reputation":0,"time":"2019-12-27T11:58:51"},{"voter":"stem.alfa","weight":61,"rshares":471161146,"percent":10000,"reputation":0,"time":"2019-12-27T23:11:54"},{"voter":"alby2","weight":1482,"rshares":"10935844226","percent":10000,"reputation":0,"time":"2019-12-27T16:21:48"},{"voter":"stemd","weight":0,"rshares":199000837,"percent":10000,"reputation":0,"time":"2019-12-27T11:48:45"},{"voter":"tonimontana.leo","weight":0,"rshares":131998242,"percent":597,"reputation":0,"time":"2019-12-27T11:48:45"},{"voter":"tonimontana.neo","weight":0,"rshares":45538585,"percent":243,"reputation":0,"time":"2019-12-27T11:48:45"},{"voter":"thebilpcointrain","weight":0,"rshares":66358209,"percent":100,"reputation":0,"time":"2019-12-27T11:48:51"},{"voter":"bilpcoin.pay","weight":4,"rshares":193006914,"percent":100,"reputation":0,"time":"2019-12-27T11:48:57"},{"voter":"yggdrasil.laguna","weight":44,"rshares":338038797,"percent":7000,"reputation":0,"time":"2019-12-27T17:53:12"},{"voter":"dw-gr6or116408o","weight":9,"rshares":68072267,"percent":10000,"reputation":0,"time":"2019-12-30T11:06:24"},{"voter":"riccc96","weight":4102,"rshares":"30329642415","percent":10000,"reputation":0,"time":"2019-12-27T16:21:48"},{"voter":"cd-stem","weight":75,"rshares":541752484,"percent":10000,"reputation":0,"time":"2019-12-27T12:26:36"},{"voter":"pecoshop","weight":232,"rshares":1716194314,"percent":10000,"reputation":0,"time":"2019-12-27T16:21:48"},{"voter":"meuhva","weight":0,"rshares":0,"percent":-1000,"reputation":0,"time":"2019-12-28T18:07:45"},{"voter":"stem.curate","weight":5234,"rshares":"38569643460","percent":10000,"reputation":0,"time":"2019-12-27T16:21:45"},{"voter":"drilom","weight":0,"rshares":-9219173,"percent":-1000,"reputation":0,"time":"2019-12-28T22:40:21"},{"voter":"boomalex","weight":82152,"rshares":"618205032370","percent":10000,"reputation":0,"time":"2019-12-27T16:21:48"},{"voter":"neoxvoter","weight":8,"rshares":78906310,"percent":150,"reputation":0,"time":"2019-12-27T11:49:45"},{"voter":"dolcesalato1981","weight":72,"rshares":554368315,"percent":8000,"reputation":0,"time":"2019-12-27T16:21:51"},{"voter":"bilpcoinpower","weight":32,"rshares":236572904,"percent":800,"reputation":0,"time":"2019-12-27T14:38:48"},{"voter":"toni.pal","weight":0,"rshares":0,"percent":394,"reputation":0,"time":"2019-12-27T11:48:45"}],"replies":[],"author_reputation":"16894731453767","promoted":"0.000
76
+ STEEM","body_length":0,"reblogged_by":[]},"id":3}'
77
+ http_version:
78
+ recorded_at: Wed, 15 Jan 2020 21:26:12 GMT
79
+ recorded_with: VCR 5.0.0
@@ -0,0 +1,62 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'simplecov'
4
+
5
+ SimpleCov.start
6
+ SimpleCov.merge_timeout 3600
7
+
8
+ TEST_DIR = __dir__
9
+ TMP_DIR = File.expand_path('../tmp', TEST_DIR)
10
+
11
+ require 'webmock'
12
+ require 'vcr'
13
+ require 'cgi'
14
+ require 'jekyll'
15
+ require File.expand_path('../lib/jekyll-steem.rb', TEST_DIR)
16
+
17
+ Jekyll.logger.log_level = :error
18
+
19
+ VCR.configure do |config|
20
+ config.cassette_library_dir = 'spec/fixtures/vcr_cassettes'
21
+ config.hook_into :webmock
22
+ end
23
+
24
+ RSpec.configure do |config|
25
+ config.run_all_when_everything_filtered = true
26
+ config.filter_run :focus
27
+ config.order = 'random'
28
+
29
+ def tmp_dir(*files)
30
+ File.join(TMP_DIR, *files)
31
+ end
32
+
33
+ def source_dir(*files)
34
+ tmp_dir('source', *files)
35
+ end
36
+
37
+ def dest_dir(*files)
38
+ tmp_dir('dest', *files)
39
+ end
40
+
41
+ def doc_with_content(_content, opts = {})
42
+ my_site = site(opts)
43
+ Jekyll::Document.new(source_dir('_test/doc.md'), { :site => my_site, :collection => collection(my_site) })
44
+ end
45
+
46
+ def collection(site, label = 'test')
47
+ Jekyll::Collection.new(site, label)
48
+ end
49
+
50
+ def site(opts = {})
51
+ conf = Jekyll::Utils.deep_merge_hashes(Jekyll::Configuration::DEFAULTS, opts.merge({
52
+ 'source' => source_dir,
53
+ 'destination' => dest_dir,
54
+ }))
55
+ Jekyll::Site.new(conf)
56
+ end
57
+
58
+ def fixture(name)
59
+ path = File.expand_path 'fixtures/#{name}.json', __dir__
60
+ File.open(path).read
61
+ end
62
+ end
@@ -0,0 +1,44 @@
1
+ require 'spec_helper'
2
+
3
+ describe(Jekyll::Steem::SteemTag) do
4
+ let(:doc) { doc_with_content(content) }
5
+ let(:content) { "{% steem #{slug} %}" }
6
+ let(:output) do
7
+ doc.content = content
8
+ doc.output = Jekyll::Renderer.new(doc.site, doc).run
9
+ end
10
+
11
+ context 'valid slug' do
12
+ context 'with author and permlink' do
13
+ let(:slug) { 'inertia/kinda-spooky' }
14
+
15
+ it 'produces the correct paragraph' do
16
+ VCR.use_cassette('valid_slug_content') do
17
+ expect(output).to include('Late Monday night (pacific), we were observing the hardfork witness majority')
18
+ expect(output).to include('https://steemit.com/@inertia/kinda-spooky')
19
+ end
20
+ end
21
+ end
22
+
23
+ context 'with author and permlink providing canonical url' do
24
+ let(:slug) { 'stemgeeks/177-000-stem-burned-and-stem-miner-price-increase-in-2020' }
25
+
26
+ it 'produces the correct paragraph' do
27
+ VCR.use_cassette('valid_slug_content_with_canonical_url') do
28
+ expect(output).to include('As we have done since the beginning, we burned another 10% chunk of the STEM sell wall.')
29
+ expect(output).to include('https://stemgeeks.net/@stemgeeks/177-000-stem-burned-and-stem-miner-price-increase-in-2020')
30
+ end
31
+ end
32
+ end
33
+ end
34
+
35
+ context 'invalid slug' do
36
+ context 'no slug present' do
37
+ let(:slug) { '' }
38
+
39
+ it 'raises an error' do
40
+ expect(-> { output }).to raise_error(ArgumentError)
41
+ end
42
+ end
43
+ end
44
+ end
metadata ADDED
@@ -0,0 +1,203 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: jekyll-steem
3
+ version: !ruby/object:Gem::Version
4
+ version: 1.0.0
5
+ platform: ruby
6
+ authors:
7
+ - Anthony Martin
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2020-01-15 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: steem-ruby
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: '0.9'
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: '0.9'
27
+ - !ruby/object:Gem::Dependency
28
+ name: bundler
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ">="
32
+ - !ruby/object:Gem::Version
33
+ version: '0'
34
+ type: :development
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - ">="
39
+ - !ruby/object:Gem::Version
40
+ version: '0'
41
+ - !ruby/object:Gem::Dependency
42
+ name: jekyll
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - ">="
46
+ - !ruby/object:Gem::Version
47
+ version: '0'
48
+ type: :development
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - ">="
53
+ - !ruby/object:Gem::Version
54
+ version: '0'
55
+ - !ruby/object:Gem::Dependency
56
+ name: rake
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - ">="
60
+ - !ruby/object:Gem::Version
61
+ version: '0'
62
+ type: :development
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - ">="
67
+ - !ruby/object:Gem::Version
68
+ version: '0'
69
+ - !ruby/object:Gem::Dependency
70
+ name: rspec
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - ">="
74
+ - !ruby/object:Gem::Version
75
+ version: '0'
76
+ type: :development
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - ">="
81
+ - !ruby/object:Gem::Version
82
+ version: '0'
83
+ - !ruby/object:Gem::Dependency
84
+ name: rubocop-jekyll
85
+ requirement: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - "~>"
88
+ - !ruby/object:Gem::Version
89
+ version: '0.4'
90
+ type: :development
91
+ prerelease: false
92
+ version_requirements: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - "~>"
95
+ - !ruby/object:Gem::Version
96
+ version: '0.4'
97
+ - !ruby/object:Gem::Dependency
98
+ name: webmock
99
+ requirement: !ruby/object:Gem::Requirement
100
+ requirements:
101
+ - - ">="
102
+ - !ruby/object:Gem::Version
103
+ version: '0'
104
+ type: :development
105
+ prerelease: false
106
+ version_requirements: !ruby/object:Gem::Requirement
107
+ requirements:
108
+ - - ">="
109
+ - !ruby/object:Gem::Version
110
+ version: '0'
111
+ - !ruby/object:Gem::Dependency
112
+ name: vcr
113
+ requirement: !ruby/object:Gem::Requirement
114
+ requirements:
115
+ - - ">="
116
+ - !ruby/object:Gem::Version
117
+ version: '0'
118
+ type: :development
119
+ prerelease: false
120
+ version_requirements: !ruby/object:Gem::Requirement
121
+ requirements:
122
+ - - ">="
123
+ - !ruby/object:Gem::Version
124
+ version: '0'
125
+ - !ruby/object:Gem::Dependency
126
+ name: simplecov
127
+ requirement: !ruby/object:Gem::Requirement
128
+ requirements:
129
+ - - ">="
130
+ - !ruby/object:Gem::Version
131
+ version: '0'
132
+ type: :development
133
+ prerelease: false
134
+ version_requirements: !ruby/object:Gem::Requirement
135
+ requirements:
136
+ - - ">="
137
+ - !ruby/object:Gem::Version
138
+ version: '0'
139
+ - !ruby/object:Gem::Dependency
140
+ name: yard
141
+ requirement: !ruby/object:Gem::Requirement
142
+ requirements:
143
+ - - ">="
144
+ - !ruby/object:Gem::Version
145
+ version: '0'
146
+ type: :development
147
+ prerelease: false
148
+ version_requirements: !ruby/object:Gem::Requirement
149
+ requirements:
150
+ - - ">="
151
+ - !ruby/object:Gem::Version
152
+ version: '0'
153
+ description:
154
+ email:
155
+ - jekyll-steem@martin-studio.com
156
+ executables: []
157
+ extensions: []
158
+ extra_rdoc_files: []
159
+ files:
160
+ - ".gitignore"
161
+ - ".travis.yml"
162
+ - Gemfile
163
+ - Gemfile.lock
164
+ - LICENSE
165
+ - README.md
166
+ - Rakefile
167
+ - jekyll-steem.gemspec
168
+ - lib/jekyll-steem.rb
169
+ - lib/jekyll-steem/steem_tag.rb
170
+ - lib/jekyll-steem/version.rb
171
+ - spec/fixtures/vcr_cassettes/valid_slug_content.yml
172
+ - spec/fixtures/vcr_cassettes/valid_slug_content_with_canonical_url.yml
173
+ - spec/spec_helper.rb
174
+ - spec/steem_tag_spec.rb
175
+ homepage: https://github.com/inertia186/jekyll-steem
176
+ licenses:
177
+ - CC0-1.0
178
+ metadata: {}
179
+ post_install_message:
180
+ rdoc_options: []
181
+ require_paths:
182
+ - lib
183
+ required_ruby_version: !ruby/object:Gem::Requirement
184
+ requirements:
185
+ - - ">="
186
+ - !ruby/object:Gem::Version
187
+ version: 2.3.0
188
+ required_rubygems_version: !ruby/object:Gem::Requirement
189
+ requirements:
190
+ - - ">="
191
+ - !ruby/object:Gem::Version
192
+ version: '0'
193
+ requirements: []
194
+ rubyforge_project:
195
+ rubygems_version: 2.7.10
196
+ signing_key:
197
+ specification_version: 4
198
+ summary: Liquid tag for displaying Steem content in Jekyll sites.
199
+ test_files:
200
+ - spec/fixtures/vcr_cassettes/valid_slug_content.yml
201
+ - spec/fixtures/vcr_cassettes/valid_slug_content_with_canonical_url.yml
202
+ - spec/spec_helper.rb
203
+ - spec/steem_tag_spec.rb