countries_cli 0.1.2 → 0.1.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/Country.gemspec +0 -1
- data/Gemfile.lock +1 -7
- data/README.md +64 -20
- data/lib/Country/cli.rb +10 -7
- data/lib/Country/country.rb +2 -4
- data/lib/Country/version.rb +1 -1
- data/lib/Country.rb +0 -1
- metadata +2 -16
    
        checksums.yaml
    CHANGED
    
    | @@ -1,7 +1,7 @@ | |
| 1 1 | 
             
            ---
         | 
| 2 2 | 
             
            SHA1:
         | 
| 3 | 
            -
              metadata.gz:  | 
| 4 | 
            -
              data.tar.gz:  | 
| 3 | 
            +
              metadata.gz: 0e4fe91fa1cc1758dd9f5b65556abd1f33d98598
         | 
| 4 | 
            +
              data.tar.gz: a3324a90bdd6b57b933aa9e063b21d3f2b91d636
         | 
| 5 5 | 
             
            SHA512:
         | 
| 6 | 
            -
              metadata.gz:  | 
| 7 | 
            -
              data.tar.gz:  | 
| 6 | 
            +
              metadata.gz: 65c06e1f51f62f5def5f7a9672ba88557f68baa6b123d18af094803fb3eced80293b0613e121ff866eb90174a35e965462019276560f63c69b11c2a023db91bd
         | 
| 7 | 
            +
              data.tar.gz: 426c9b77df96057edf66b65ba3c36188c37d698f42183a5e3a7a32a646741c6534fd3f184b558fa3d039d946420d42ccfffdb33707623d4aa8acea08a186cf74
         | 
    
        data/Country.gemspec
    CHANGED
    
    | @@ -39,7 +39,6 @@ Gem::Specification.new do |spec| | |
| 39 39 | 
             
              spec.add_development_dependency "bundler", "~> 1.17"
         | 
| 40 40 | 
             
              spec.add_development_dependency "rake", "~> 10.0"
         | 
| 41 41 | 
             
              spec.add_development_dependency "rspec", "~> 3.0"
         | 
| 42 | 
            -
              spec.add_development_dependency "pry"
         | 
| 43 42 | 
             
              spec.add_development_dependency "gem-release"
         | 
| 44 43 |  | 
| 45 44 | 
             
            end
         | 
    
        data/Gemfile.lock
    CHANGED
    
    | @@ -1,18 +1,13 @@ | |
| 1 1 | 
             
            PATH
         | 
| 2 2 | 
             
              remote: .
         | 
| 3 3 | 
             
              specs:
         | 
| 4 | 
            -
                countries_cli (0.1. | 
| 4 | 
            +
                countries_cli (0.1.3)
         | 
| 5 5 |  | 
| 6 6 | 
             
            GEM
         | 
| 7 7 | 
             
              remote: https://rubygems.org/
         | 
| 8 8 | 
             
              specs:
         | 
| 9 | 
            -
                coderay (1.1.2)
         | 
| 10 9 | 
             
                diff-lcs (1.3)
         | 
| 11 10 | 
             
                gem-release (2.0.1)
         | 
| 12 | 
            -
                method_source (0.9.2)
         | 
| 13 | 
            -
                pry (0.12.2)
         | 
| 14 | 
            -
                  coderay (~> 1.1.0)
         | 
| 15 | 
            -
                  method_source (~> 0.9.0)
         | 
| 16 11 | 
             
                rake (10.5.0)
         | 
| 17 12 | 
             
                rspec (3.8.0)
         | 
| 18 13 | 
             
                  rspec-core (~> 3.8.0)
         | 
| @@ -35,7 +30,6 @@ DEPENDENCIES | |
| 35 30 | 
             
              bundler (~> 1.17)
         | 
| 36 31 | 
             
              countries_cli!
         | 
| 37 32 | 
             
              gem-release
         | 
| 38 | 
            -
              pry
         | 
| 39 33 | 
             
              rake (~> 10.0)
         | 
| 40 34 | 
             
              rspec (~> 3.0)
         | 
| 41 35 |  | 
    
        data/README.md
    CHANGED
    
    | @@ -1,43 +1,87 @@ | |
| 1 | 
            -
            #  | 
| 1 | 
            +
            # countries_cli
         | 
| 2 2 |  | 
| 3 | 
            -
             | 
| 3 | 
            +
            A CLI of countries based on the REST Countries API. It allows you to look for information on countries based on population, region, currency, subregion, name, capital, and language.
         | 
| 4 4 |  | 
| 5 | 
            -
             | 
| 5 | 
            +
            ## Getting Started
         | 
| 6 6 |  | 
| 7 | 
            -
             | 
| 7 | 
            +
            These instructions will get you a copy of the project up and running on your local machine for development and testing purposes. See deployment for notes on how to deploy the project on a live system.
         | 
| 8 8 |  | 
| 9 | 
            -
             | 
| 9 | 
            +
            ### Prerequisites
         | 
| 10 10 |  | 
| 11 | 
            -
             | 
| 12 | 
            -
             | 
| 11 | 
            +
            What things you need to install the software and how to install them
         | 
| 12 | 
            +
             | 
| 13 | 
            +
            ```
         | 
| 14 | 
            +
            Give examples
         | 
| 13 15 | 
             
            ```
         | 
| 14 16 |  | 
| 15 | 
            -
             | 
| 17 | 
            +
            ### Installing
         | 
| 16 18 |  | 
| 17 | 
            -
             | 
| 19 | 
            +
            A step by step series of examples that tell you how to get a development env running
         | 
| 18 20 |  | 
| 19 | 
            -
             | 
| 21 | 
            +
            Say what the step will be
         | 
| 20 22 |  | 
| 21 | 
            -
             | 
| 23 | 
            +
            ```
         | 
| 24 | 
            +
            Give the example
         | 
| 25 | 
            +
            ```
         | 
| 22 26 |  | 
| 23 | 
            -
             | 
| 27 | 
            +
            And repeat
         | 
| 28 | 
            +
             | 
| 29 | 
            +
            ```
         | 
| 30 | 
            +
            until finished
         | 
| 31 | 
            +
            ```
         | 
| 24 32 |  | 
| 25 | 
            -
             | 
| 33 | 
            +
            End with an example of getting some data out of the system or using it for a little demo
         | 
| 26 34 |  | 
| 27 | 
            -
            ##  | 
| 35 | 
            +
            ## Running the tests
         | 
| 36 | 
            +
             | 
| 37 | 
            +
            Explain how to run the automated tests for this system
         | 
| 38 | 
            +
             | 
| 39 | 
            +
            ### Break down into end to end tests
         | 
| 40 | 
            +
             | 
| 41 | 
            +
            Explain what these tests test and why
         | 
| 42 | 
            +
             | 
| 43 | 
            +
            ```
         | 
| 44 | 
            +
            Give an example
         | 
| 45 | 
            +
            ```
         | 
| 28 46 |  | 
| 29 | 
            -
             | 
| 47 | 
            +
            ### And coding style tests
         | 
| 30 48 |  | 
| 31 | 
            -
             | 
| 49 | 
            +
            Explain what these tests test and why
         | 
| 50 | 
            +
             | 
| 51 | 
            +
            ```
         | 
| 52 | 
            +
            Give an example
         | 
| 53 | 
            +
            ```
         | 
| 54 | 
            +
             | 
| 55 | 
            +
            ## Deployment
         | 
| 56 | 
            +
             | 
| 57 | 
            +
            Add additional notes about how to deploy this on a live system
         | 
| 58 | 
            +
             | 
| 59 | 
            +
            ## Built With
         | 
| 60 | 
            +
             | 
| 61 | 
            +
            * [Dropwizard](http://www.dropwizard.io/1.0.2/docs/) - The web framework used
         | 
| 62 | 
            +
            * [Maven](https://maven.apache.org/) - Dependency Management
         | 
| 63 | 
            +
            * [ROME](https://rometools.github.io/rome/) - Used to generate RSS Feeds
         | 
| 32 64 |  | 
| 33 65 | 
             
            ## Contributing
         | 
| 34 66 |  | 
| 35 | 
            -
             | 
| 67 | 
            +
            Please read [CONTRIBUTING.md](https://gist.github.com/PurpleBooth/b24679402957c63ec426) for details on our code of conduct, and the process for submitting pull requests to us.
         | 
| 68 | 
            +
             | 
| 69 | 
            +
            ## Versioning
         | 
| 70 | 
            +
             | 
| 71 | 
            +
            We use [SemVer](http://semver.org/) for versioning. For the versions available, see the [tags on this repository](https://github.com/your/project/tags). 
         | 
| 72 | 
            +
             | 
| 73 | 
            +
            ## Authors
         | 
| 74 | 
            +
             | 
| 75 | 
            +
            * **Billie Thompson** - *Initial work* - [PurpleBooth](https://github.com/PurpleBooth)
         | 
| 76 | 
            +
             | 
| 77 | 
            +
            See also the list of [contributors](https://github.com/your/project/contributors) who participated in this project.
         | 
| 36 78 |  | 
| 37 79 | 
             
            ## License
         | 
| 38 80 |  | 
| 39 | 
            -
             | 
| 81 | 
            +
            This project is licensed under the MIT License - see the [LICENSE.md](LICENSE.md) file for details
         | 
| 40 82 |  | 
| 41 | 
            -
            ##  | 
| 83 | 
            +
            ## Acknowledgments
         | 
| 42 84 |  | 
| 43 | 
            -
             | 
| 85 | 
            +
            * Hat tip to anyone whose code was used
         | 
| 86 | 
            +
            * Inspiration
         | 
| 87 | 
            +
            * etc
         | 
    
        data/lib/Country/cli.rb
    CHANGED
    
    | @@ -1,5 +1,4 @@ | |
| 1 1 | 
             
            require_relative 'country'
         | 
| 2 | 
            -
            require 'pry'
         | 
| 3 2 | 
             
            require 'open-uri'
         | 
| 4 3 | 
             
            require 'json'
         | 
| 5 4 | 
             
            # CLI Controller
         | 
| @@ -55,14 +54,14 @@ class Country::CLI | |
| 55 54 |  | 
| 56 55 | 
             
                def display_options 
         | 
| 57 56 | 
             
                    puts "Enter an option (1-12): "
         | 
| 58 | 
            -
                    puts "1.  | 
| 57 | 
            +
                    puts "1. Display all country names"
         | 
| 59 58 | 
             
                    puts "2. Search country by name"
         | 
| 60 | 
            -
                    puts "3. Search  | 
| 59 | 
            +
                    puts "3. Search country by suffix"
         | 
| 61 60 | 
             
                    puts "4. Search countries with given currency name"
         | 
| 62 61 | 
             
                    puts "5. Search countries with given currency symbol"
         | 
| 63 62 | 
             
                    puts "6. Search countries with given language"
         | 
| 64 63 | 
             
                    puts "7. Search countries with certain population"
         | 
| 65 | 
            -
                    puts "8.  | 
| 64 | 
            +
                    puts "8. Display all countries sorted by population(ascending or descending)"
         | 
| 66 65 | 
             
                    puts "9. Search by capital"
         | 
| 67 66 | 
             
                    puts "10. Search by region"
         | 
| 68 67 | 
             
                    puts "11. Search by subregion"
         | 
| @@ -79,6 +78,7 @@ class Country::CLI | |
| 79 78 | 
             
                    country = Country::COUNTRY.search_by_name(input)
         | 
| 80 79 | 
             
                    if country
         | 
| 81 80 | 
             
                        country.info
         | 
| 81 | 
            +
                        puts "\n"
         | 
| 82 82 | 
             
                    else 
         | 
| 83 83 | 
             
                        puts "Invalid name. Please list all the countries and choose a name from there."
         | 
| 84 84 | 
             
                    end 
         | 
| @@ -90,6 +90,7 @@ class Country::CLI | |
| 90 90 | 
             
                    country = Country::COUNTRY.search_by_suffix(input)
         | 
| 91 91 | 
             
                    if country
         | 
| 92 92 | 
             
                        country.info
         | 
| 93 | 
            +
                        puts "\n"
         | 
| 93 94 | 
             
                    else 
         | 
| 94 95 | 
             
                        puts "Country with given suffix not found."
         | 
| 95 96 | 
             
                    end 
         | 
| @@ -141,8 +142,8 @@ class Country::CLI | |
| 141 142 | 
             
                    puts "Greater(g) than or lower(l) than?"
         | 
| 142 143 | 
             
                    input = gets.chomp
         | 
| 143 144 |  | 
| 144 | 
            -
                    if input.downcase == "l" || input.downcase == "lower" || input.downcase == "g" || input.downcase == "greater" || input.downcase == "h" || input. | 
| 145 | 
            -
                        puts "Enter population: "
         | 
| 145 | 
            +
                    if input.downcase == "l" || input.downcase == "lower" || input.downcase == "g" || input.downcase == "greater" || input.downcase == "h" || input.downcase == "higher"
         | 
| 146 | 
            +
                        puts "Enter population (ex: 10000): "
         | 
| 146 147 | 
             
                        population = gets.chomp.to_i
         | 
| 147 148 | 
             
                        countries = Country::COUNTRY.search_all_with_population(input, population)
         | 
| 148 149 | 
             
                        if countries.count > 0
         | 
| @@ -151,7 +152,7 @@ class Country::CLI | |
| 151 152 | 
             
                                puts "\n"
         | 
| 152 153 | 
             
                            end 
         | 
| 153 154 | 
             
                        else 
         | 
| 154 | 
            -
                            puts "No countries with  | 
| 155 | 
            +
                            puts "No countries with the specified population were found."
         | 
| 155 156 | 
             
                        end
         | 
| 156 157 | 
             
                    else
         | 
| 157 158 | 
             
                        puts "Wrong input. Please try again.\n"
         | 
| @@ -166,6 +167,7 @@ class Country::CLI | |
| 166 167 | 
             
                        countries_sorted = Country::COUNTRY.all.sort{|country1, country2| country2.population <=> country1.population}
         | 
| 167 168 | 
             
                        countries_sorted.each do |country|
         | 
| 168 169 | 
             
                            country.info
         | 
| 170 | 
            +
                            puts "\n"
         | 
| 169 171 | 
             
                        end 
         | 
| 170 172 | 
             
                    elsif input == "a" 
         | 
| 171 173 | 
             
                        countries_sorted = Country::COUNTRY.all.sort{|country1, country2| country1.population <=> country2.population}
         | 
| @@ -185,6 +187,7 @@ class Country::CLI | |
| 185 187 | 
             
                    country = Country::COUNTRY.search_by_capital(input)
         | 
| 186 188 | 
             
                    if country
         | 
| 187 189 | 
             
                        country.info
         | 
| 190 | 
            +
                        puts "\n"
         | 
| 188 191 | 
             
                    else 
         | 
| 189 192 | 
             
                        puts "Invalid capital. Please enter a valid capital."
         | 
| 190 193 | 
             
                    end
         | 
    
        data/lib/Country/country.rb
    CHANGED
    
    | @@ -6,7 +6,6 @@ class Country::COUNTRY | |
| 6 6 |  | 
| 7 7 | 
             
                def initialize(attr_hash)
         | 
| 8 8 | 
             
                    attr_hash.each do |attribute, value|
         | 
| 9 | 
            -
                        # binding.pry
         | 
| 10 9 | 
             
                        if self.respond_to?(attribute)
         | 
| 11 10 | 
             
                            self.send(("#{attribute}="), value)
         | 
| 12 11 | 
             
                        end
         | 
| @@ -28,14 +27,13 @@ class Country::COUNTRY | |
| 28 27 | 
             
                end 
         | 
| 29 28 |  | 
| 30 29 | 
             
                def self.all_country_names
         | 
| 31 | 
            -
                    # binding.pry
         | 
| 32 30 | 
             
                    self.all.each_with_index do |country, i|
         | 
| 33 31 | 
             
                        puts "#{i+1}. #{country.name}" 
         | 
| 34 32 | 
             
                    end
         | 
| 35 33 | 
             
                end
         | 
| 36 34 |  | 
| 37 35 | 
             
                def self.search_by_name(name)
         | 
| 38 | 
            -
                    self.all.detect{|country| country.name == name}
         | 
| 36 | 
            +
                    self.all.detect{|country| country.name.downcase == name.downcase}
         | 
| 39 37 | 
             
                end 
         | 
| 40 38 |  | 
| 41 39 | 
             
                def info
         | 
| @@ -50,7 +48,7 @@ class Country::COUNTRY | |
| 50 48 | 
             
                end 
         | 
| 51 49 |  | 
| 52 50 | 
             
                def self.search_by_suffix(suffix)
         | 
| 53 | 
            -
                    self.all.detect{|country| country.name.match(/^(#{suffix})/)}
         | 
| 51 | 
            +
                    self.all.detect{|country| country.name.downcase.match(/^(#{suffix.downcase})/)}
         | 
| 54 52 | 
             
                end 
         | 
| 55 53 |  | 
| 56 54 | 
             
                def self.search_all_with_currency_symbol(currency_symbol)
         | 
    
        data/lib/Country/version.rb
    CHANGED
    
    
    
        data/lib/Country.rb
    CHANGED
    
    
    
        metadata
    CHANGED
    
    | @@ -1,14 +1,14 @@ | |
| 1 1 | 
             
            --- !ruby/object:Gem::Specification
         | 
| 2 2 | 
             
            name: countries_cli
         | 
| 3 3 | 
             
            version: !ruby/object:Gem::Version
         | 
| 4 | 
            -
              version: 0.1. | 
| 4 | 
            +
              version: 0.1.3
         | 
| 5 5 | 
             
            platform: ruby
         | 
| 6 6 | 
             
            authors:
         | 
| 7 7 | 
             
            - Kenneth Young Castro
         | 
| 8 8 | 
             
            autorequire: 
         | 
| 9 9 | 
             
            bindir: bin
         | 
| 10 10 | 
             
            cert_chain: []
         | 
| 11 | 
            -
            date: 2019-01- | 
| 11 | 
            +
            date: 2019-01-06 00:00:00.000000000 Z
         | 
| 12 12 | 
             
            dependencies:
         | 
| 13 13 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 14 14 | 
             
              name: bundler
         | 
| @@ -52,20 +52,6 @@ dependencies: | |
| 52 52 | 
             
                - - "~>"
         | 
| 53 53 | 
             
                  - !ruby/object:Gem::Version
         | 
| 54 54 | 
             
                    version: '3.0'
         | 
| 55 | 
            -
            - !ruby/object:Gem::Dependency
         | 
| 56 | 
            -
              name: pry
         | 
| 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 55 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 70 56 | 
             
              name: gem-release
         | 
| 71 57 | 
             
              requirement: !ruby/object:Gem::Requirement
         |