From a6da48b4146cb991c734f82fa9b8c26ec882f3d5 Mon Sep 17 00:00:00 2001 From: Justin Hileman Date: Sun, 31 May 2015 08:30:48 -0700 Subject: [PATCH] [split] Move dpaste plugin to oh-my-fish/plugin-dpaste https://github.com/oh-my-fish/plugin-dpaste --- plugins/dpaste/LICENSE | 23 ------ plugins/dpaste/dpaste.fish | 104 ------------------------ plugins/dpaste/tests/helper.fish | 7 -- plugins/dpaste/tests/test_dpaste.fish | 109 -------------------------- 4 files changed, 243 deletions(-) delete mode 100644 plugins/dpaste/LICENSE delete mode 100644 plugins/dpaste/dpaste.fish delete mode 100644 plugins/dpaste/tests/helper.fish delete mode 100755 plugins/dpaste/tests/test_dpaste.fish diff --git a/plugins/dpaste/LICENSE b/plugins/dpaste/LICENSE deleted file mode 100644 index 2bcfcd0..0000000 --- a/plugins/dpaste/LICENSE +++ /dev/null @@ -1,23 +0,0 @@ -The MIT License (MIT) - -Copyright (c) 2014 Roman Inflianskas - -Copyright (c) 2014 Paul Joannon (sprunge.fish) - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. diff --git a/plugins/dpaste/dpaste.fish b/plugins/dpaste/dpaste.fish deleted file mode 100644 index 11fb562..0000000 --- a/plugins/dpaste/dpaste.fish +++ /dev/null @@ -1,104 +0,0 @@ -#!/usr/bin/env fish -# vim: ai ts=2 sw=2 et sts=2 - - -# Just a dpaste (https://github.com/bartTC/dpaste) wrapper for fish-shell -# Roman Inflianskas (rominf) -# Based on fish-sprunge plugin: -# Paul Joannon (paulloz) -# https://github.com/Paulloz/fish-sprunge -# Based on oh-my-zsh's sprunge plugin - - -set __dpaste_expires_choises '(onetime|1|twotimes|2|hour|week|month|never)' - -function __dpaste_set_defaults - set -g __dpaste_url_dpaste_de 'https://dpaste.de/api/?format=url' - set -g __dpaste_keyword_dpaste_de 'content' - set -g __dpaste_url_sprunge_us 'http://sprunge.us/' - set -g __dpaste_keyword_sprunge_us 'sprunge' - - set -q dpaste_site; or set -g dpaste_site 'dpaste.de' - set suffix (echo $dpaste_site | sed "s/\./_/g") - - set -g __dpaste_keyword (eval 'echo $__dpaste_keyword_'$suffix) - set -q __dpaste_keyword; or set -g __dpaste_keyword $__dpaste_keyword_dpaste_de - set -g __dpaste_send_url (eval 'echo $__dpaste_url_'$suffix) - set -q __dpaste_send_url; or set -g __dpaste_send_url $__dpaste_url_dpaste_de - set -g __dpaste_eat_once 0 -end - -function __dpaste_send - function curl - command curl --silent $argv - end - - curl -F "$__dpaste_keyword=<-" $__dpaste_send_url | read -l url - if [ $__dpaste_eat_once = 1 ] - curl $url >/dev/null - end - echo $url -end - -function __dpaste_parse_expires - set expires_spec "-t $__dpaste_expires_choises" - set expires (echo $argv | sed -E "s/.*$expires_spec.*/\1/") - if [ -z (echo $expires | sed -E "s/$__dpaste_expires_choises//") ] - echo $expires | grep -qE '(onetime|1)'; set -g __dpaste_eat_once (and echo 1; or echo 0) - set expires (echo $expires | sed -E 's/(1|2|twotimes)/onetime/;s/hour/3600/;s/week/604800/;s/month/2592000/') - set __dpaste_send_url "$__dpaste_send_url&expires=$expires" - end - echo $argv | sed -E "s/$expires_spec//" | xargs -end - -function __dpaste_help - echo -e \ -"Usage: - dpaste [-t EXPIRES] < README.md - dpaste [-t EXPIRES] README.md - cat README.md | dpaste [-t EXPIRES] - dpaste [-t EXPIRES] \"I \<3 to paste\" - -Options: - -t EXPIRES set snippet expiration time: $__dpaste_expires_choises [default: month] - -Configuration: - You can use this plugin with other dpaste instances. - If you have a dpaste instance on 'example.com' just insert those lines - into your config.fish file: - set __dpaste_url_example_com 'https://example.com/api/?format=url' - set dpaste_site 'example.com' - - You can even use this plugin with sprunge.us. - Note, that sprunge.us doesn't support '-t' option. - set dpaste_site 'sprunge.us'" -end - -function __dpaste_parse_help - begin - contains -- -h $argv - or contains -- --help $argv - end - and __dpaste_help -end - -function dpaste - __dpaste_set_defaults - __dpaste_parse_help $argv - or begin - set argv (__dpaste_parse_expires $argv) - if isatty - if [ -n $argv ] - if [ -f $argv ] - cat $argv - else - echo $argv - end | __dpaste_send - else - __dpaste_help - end - else - __dpaste_send - end - end -end diff --git a/plugins/dpaste/tests/helper.fish b/plugins/dpaste/tests/helper.fish deleted file mode 100644 index 0ac6202..0000000 --- a/plugins/dpaste/tests/helper.fish +++ /dev/null @@ -1,7 +0,0 @@ -set -l fish_tank /usr/local/share/fish-tank/tank.fish -if not test -e $fish_tank - echo 'error: fish-tank is required to run these tests (https://github.com/terlar/fish-tank)' - exit 1 -end - -source $fish_tank diff --git a/plugins/dpaste/tests/test_dpaste.fish b/plugins/dpaste/tests/test_dpaste.fish deleted file mode 100755 index 43c2fad..0000000 --- a/plugins/dpaste/tests/test_dpaste.fish +++ /dev/null @@ -1,109 +0,0 @@ -#!/usr/bin/env fish -# vim: ai ts=2 sw=2 et sts=2 - - -function echo_text - set -g __test_text 'Hello, tests! I am just testing suite for oh-my-fish plugin: https://github.com/bpinto/oh-my-fish/pull/170' - echo -e $__test_text -end - -function curl - command curl --silent $argv -end - -function curl_and_check - assert_equal $argv[2..-1] (curl $argv[1]) -end - -function curl_and_fail - assert_match '.*404 Not found.*' (curl $argv[1]) -end - -function test_dpaste_system - set url (eval $argv[1])/raw - curl_and_check $url (echo_text) - # now it shouldn't be available - curl_and_fail $url -end - -function dpaste_setup - set -g test_dir /tmp/dpaste_test - set -g test_file $test_dir/file - mkdir -p $test_dir - pushd - cd $test_dir - echo_text > $test_file -end - -function dpaste_teardown - rm -rf $test_dir - popd -end - -function suite_dpaste - - function setup - set dpaste_site 'dpaste.de' - __dpaste_set_defaults - end - - function test_dpaste_parse_expires - assert_equal text (__dpaste_parse_expires text) - assert_equal "https://dpaste.de/api/?format=url" $__dpaste_send_url - end - - function test_dpaste_parse_expires_1 - assert_equal text (__dpaste_parse_expires -t 1 text) - assert_equal "https://dpaste.de/api/?format=url&expires=onetime" $__dpaste_send_url - end - - function test_dpaste_parse_expires_hour - assert_equal text (__dpaste_parse_expires -t hour text) - assert_equal "https://dpaste.de/api/?format=url&expires=3600" $__dpaste_send_url - end - - function test_dpaste_parse_expires_never - assert_equal text (__dpaste_parse_expires -t never text) - assert_equal "https://dpaste.de/api/?format=url&expires=never" $__dpaste_send_url - end - - function test_dpaste_system_file_redirect - function dpaste_file_redirect - dpaste -t onetime < /tmp/dpaste_test/file - end - test_dpaste_system dpaste_file_redirect - end - - function test_dpaste_system_file - function dpaste_file - dpaste -t onetime /tmp/dpaste_test/file - end - test_dpaste_system dpaste_file - end - - function test_dpaste_system_stdin - function dpaste_stdin - echo_text | dpaste -t onetime - end - test_dpaste_system dpaste_stdin - end - - function test_dpaste_system_text - function dpaste_text - dpaste -t onetime "$__test_text" - end - test_dpaste_system dpaste_text - end - -end - - -if not set -q tank_running - source (dirname (status -f))/helper.fish - set -g __dpaste_expires_choises - source (dirname (status -f))/../dpaste.fish - - dpaste_setup - tank_run - dpaste_teardown -end