$ rspec --init
$ guard init
| # frozen_string_literal: true | |
| require 'yard' | |
| require 'rubocop' | |
| desc 'Generate cops metadata in json format' | |
| task generate_cops_json: :yard do | |
| def cops_body_json(config, cop, description, examples, pars, department) |
| command = -> { Dir['tmp/*.json'] } | |
| current = command.call | |
| puts "Started with ", current | |
| while find = command.call | |
| if current != find | |
| files_and_sizes = (find - current).map{|f| [f,File.size(f)]} | |
| puts "#{Time.now} created: #{Hash[files_and_sizes]}" | |
| current = find | |
| end | |
| print '.' |
| require 'concurrent-edge' | |
| class Broadcast | |
| def initialize &block | |
| @channel = {} | |
| @listener = {} | |
| instance_exec(&block) | |
| Concurrent::Channel.go { start_consumer } | |
| end |
| class Parser | |
| def initialize string | |
| @tokens = string.scan(/\(|\)|\w+/) | |
| end | |
| def next_token | |
| @tokens.shift | |
| end | |
| def parse | |
| case token = next_token |
| require 'rubygems' | |
| require 'fast' | |
| def nice_experiment_with(file) | |
| parts = file.split('/') | |
| dir = parts[0..-2] | |
| filename = "experiment_#{parts[-1]}" | |
| File.join(*dir, filename) | |
| end |
| # frozen_string_literal: true | |
| require 'yard' | |
| require 'rubocop' | |
| desc 'Generate docs of all cops departments' | |
| task generate_cops_json: :yard do | |
| def cops_body_json(config, cop, description, examples, pars, department) |
| require '../../fast/lib/fast' | |
| class RenameToSeed < Parser::Rewriter | |
| def on_send(node) | |
| return unless Fast.match?(node, '(send nil :create)') | |
| replace node.loc.selector, 'seed' | |
| super | |
| end | |
| end |
| require '../../fast/lib/fast' | |
| class RenameToSeed < Parser::Rewriter | |
| def on_send(node) | |
| return unless Fast.match?(node, '(send nil :create)') | |
| replace node.loc.selector, 'seed' | |
| super | |
| end | |
| end |
| require '../../fast/lib/fast' | |
| def experimental_spec(file, occurrence) | |
| parts = file.split('/') | |
| dir = parts[0..-2] | |
| filename = "experiment_#{occurrence}_#{__FILE__.split('.').first}_#{parts[-1]}" | |
| File.join(*dir, filename) | |
| end | |
| def experiment(file, expression, replacement, index=nil) |