├── .gitignore ├── .ruby-version ├── Gemfile ├── Gemfile.lock ├── README.md ├── src └── main.rb └── output ├── Test:_Ruby_Programming_BasicsQuizlet-1640203894.html ├── Test:_Learn_Ruby_the_Hard_Way:_Learning_to_Speak_Object_OrientedQuizlet-1640203797.html ├── Test:_Learn_Ruby_The_Hard_Way_-_Command_LineQuizlet-1640203789.html ├── Test:_Ruby_ProgrammingQuizlet-1640203896.html ├── Test:_Ruby_Programming_BasicsQuizlet-1640203892.html └── Test:_Learn_Ruby_the_Hard_Way:_Learning_to_Speak_Object_OrientedQuizlet-1640203795.html /.gitignore: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /.ruby-version: -------------------------------------------------------------------------------- 1 | ruby-3.0.0 2 | -------------------------------------------------------------------------------- /Gemfile: -------------------------------------------------------------------------------- 1 | source "https://rubygems.org" 2 | 3 | gem 'watir' 4 | -------------------------------------------------------------------------------- /Gemfile.lock: -------------------------------------------------------------------------------- 1 | GEM 2 | remote: https://rubygems.org/ 3 | specs: 4 | childprocess (4.1.0) 5 | regexp_parser (2.2.0) 6 | rexml (3.2.5) 7 | rubyzip (2.3.2) 8 | selenium-webdriver (4.1.0) 9 | childprocess (>= 0.5, < 5.0) 10 | rexml (~> 3.2, >= 3.2.5) 11 | rubyzip (>= 1.2.2) 12 | watir (7.1.0) 13 | regexp_parser (>= 1.2, < 3) 14 | selenium-webdriver (~> 4.0) 15 | 16 | PLATFORMS 17 | arm64-darwin-20 18 | 19 | DEPENDENCIES 20 | watir 21 | 22 | BUNDLED WITH 23 | 2.2.3 24 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # whyfund-saver 2 | Whyfund-saver is a Browser Automation tool that allows to download the sets of challenges from http://whyfund.net/ 3 | 4 | # Story 5 | Check out the [Medium](https://medium.com/@grzegorz.smajdor/automating-web-browser-f95adcb89de4) for details. 6 | 7 | Also [watch](https://youtu.be/bBqR6cMRbq4) tool in action. 8 | 9 | 10 | # Motivation 11 | Browsing every test and checking their answers would take a LOT of time. Automation of this process took much shorter time! 12 | 13 | The full story is k 14 | 15 | # Technology 16 | Be able to communicate and send commands to a browser using Watir and simplicity of Ruby was a perfect match 17 | 18 | # How to run 19 | * clone repository 20 | * run `bundle install` inside of the folder 21 | 22 | * run `ruby src/main.rb` to see it in action. 23 | - It will open browser (chrome by default) 24 | - Will go to the page_url defined [here](https://github.com/gs/whyfund-saver/blob/main/src/main.rb#L46) it might work for your subdomain of sets on the `http://whyfund.net (but I did not check it). 25 | - Will read all the links from the page inside of the table 26 | - Will open page one by one and: 27 | - Hide the Ads (from bottom of the page) 28 | - Click on 'Check answers' 29 | - Download the html file and put it into `output` folder 30 | - and repeat 31 | 32 | -------------------------------------------------------------------------------- /src/main.rb: -------------------------------------------------------------------------------- 1 | require 'watir' 2 | 3 | Watir.default_timeout = 0.5 4 | 5 | def get_all_links(browser) 6 | links = [] 7 | tds = browser.tds 8 | tds.each_with_index do |td, i| 9 | begin 10 | p "Checking element #{i+1} / #{tds.length}" 11 | links << td.link.href 12 | rescue 13 | next 14 | end 15 | end 16 | links 17 | end 18 | 19 | def get_site_with_answers(link, browser) 20 | browser.goto link 21 | puts browser.title 22 | browser.execute_script("[...document.querySelectorAll('ins')].map(e => {e.parentNode.removeChild(e)})") 23 | buttons = browser.buttons(class: "large button") 24 | buttons.each do |button| 25 | if button.text == "Check answers" 26 | button.click 27 | end 28 | end 29 | browser 30 | end 31 | 32 | def get_content_and_store_locally(links, browser) 33 | links.each do |link| 34 | current_site = get_site_with_answers(link, browser) 35 | store_file(current_site) 36 | end 37 | end 38 | 39 | def store_file(current_site) 40 | generate_file_name = "output/#{current_site.title.gsub("/", "-").gsub(" | ", "").gsub(" ","_")}-#{Time.now.to_i}.html" 41 | File.open(generate_file_name, 'w') {|f| f.write current_site.html } 42 | end 43 | 44 | def main 45 | browser = Watir::Browser.new 46 | page_url = "http://whyfund.net/RUBY%20Programming/" 47 | 48 | browser.goto page_url 49 | links = get_all_links(browser) 50 | get_content_and_store_locally(links, browser) 51 | 52 | browser.close 53 | end 54 | 55 | 56 | main() 57 | -------------------------------------------------------------------------------- /output/Test:_Ruby_Programming_BasicsQuizlet-1640203894.html: -------------------------------------------------------------------------------- 1 | 2 | 8 | 9 | 10 | 11 | 14 | 15 | Test: Ruby Programming Basics | Quizlet 16 | 17 | 18 | 19 | 20 | 31 | 32 | 33 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 |

This is a Free Service provided by Why Fund Inc. (a 501 C3 NonProfit) We thank you for your donation!

75 | 76 | 77 | 80 | 81 |

82 |

(1. Click on the course Study Set you wish to learn.) (2. If you wish you can click on "Print" and print the test page.) (3. When you want to take a test...click on anyone of the tests for that Study Set.) (4. Click on "Check Answers" and it will score your test and correct your answers.) (5. You can take all the tests as many times as you choose until you get an "A"!) (6. Automated college courses created from lecture notes, class exams, text books, reading materials from many colleges and universities.)

83 |
84 | 85 | 86 |
87 | 88 |
89 | 90 |
91 | 92 | 93 | 94 | 95 | 98 | 99 |
100 | NAME 101 | 102 |
103 | 104 | 110 | 111 |
112 |
113 |
114 |
115 |

F

0%
116 | 117 |
118 | 119 |
120 |

Question types

121 |
    122 |
  • 123 |
  • 124 |
  • 125 |
  • 126 |
127 |
128 |

Start with

129 |
    130 |
  • 131 | 132 | 133 |
  • 134 |
  • 135 | 136 | 137 |
  • 138 |
  • 139 | 140 | 141 |
  • 142 |
143 |
144 |

Question limit

145 |

146 | of 17 available terms

147 | 148 |

149 | 150 |
151 | 152 | 153 | 154 |
155 | 156 | 157 | 158 |
Print test 159 |

17 True/False questions

160 |
    161 |
  1. 162 |

    CommentsA comment is a bit of text that ruby wont run as code. Uses the # to signify

    This is true. You gave no answer.

    163 |
  2. 164 |
  3. 165 |

    StringA word or phrase.

    This is true. You gave no answer.

    166 |
  4. 167 |
  5. 168 |

    printa command that displays a string

    This is true. You gave no answer.

    169 |
  6. 170 |
  7. 171 |

    **Exponentiation 2*3 = 22*2 = 8

    This is true. You gave no answer.

    172 |
  8. 173 |
  9. 174 |

    =begin =endcommands that create multi line comments when placed between them.

    This is true. You gave no answer.

    175 |
  10. 176 |
  11. 177 |

    putsExponentiation 2*3 = 22*2 = 8

    This is false. You gave no answer.

    178 |

    It should be putsa command that displays a string and puts a blank line after the string is displayed.

  12. 179 |
  13. 180 |

    /Division ex. 25/5=5

    This is true. You gave no answer.

    181 |
  14. 182 |
  15. 183 |

    -Multiplication ex. 5*5=25

    This is false. You gave no answer.

    184 |

    It should be -Subtraction ex. 3-2=1.

  16. 185 |
  17. 186 |

    BooleanA comment is a bit of text that ruby wont run as code. Uses the # to signify

    This is false. You gave no answer.

    187 |

    It should be BooleanValue that can be true or false..

  18. 188 |
  19. 189 |

    =Assignment.

    This is true. You gave no answer.

    190 |
  20. 191 |
  21. 192 |

    OperatorA symbol that represents a specific action

    This is true. You gave no answer.

    193 |
  22. 194 |
  23. 195 |

    Methodsabilities that objects have

    This is true. You gave no answer.

    196 |
  24. 197 |
  25. 198 |

    %Subtraction ex. 3-2=1

    This is false. You gave no answer.

    199 |

    It should be %Modulo outputs the remainder left by division
    200 | ex. 25 % 7 = 4
    .

  26. 201 |
  27. 202 |

    *Multiplication ex. 5*5=25

    This is true. You gave no answer.

    203 |
  28. 204 |
  29. 205 |

    VariableA variable only accessible from within the block it is created in.
    206 | They should only contain lower case letters and be separated by underscores _

    This is false. You gave no answer.

    207 |

    It should be VariableA word or name that is assigned a single value with the = operator..

  30. 208 |
  31. 209 |

    Local VariableA variable only accessible from within the block it is created in.
    210 | They should only contain lower case letters and be separated by underscores _

    This is true. You gave no answer.

    211 |
  32. 212 |
  33. 213 |

    +Division ex. 25/5=5

    This is false. You gave no answer.

    214 |

    It should be +Addition ex. 1+1=2.

  34. 215 |

216 | 217 |

218 |
219 | 220 |
221 |
222 |
223 | 224 | 225 | 226 | 227 | 228 | 229 |
230 | 231 | 232 |
233 | 234 | Create Study Set 235 | 236 |
237 |
238 | 245 |
246 |
247 |
248 |
249 | 250 | 251 | 254 | 255 | 256 | -------------------------------------------------------------------------------- /output/Test:_Learn_Ruby_the_Hard_Way:_Learning_to_Speak_Object_OrientedQuizlet-1640203797.html: -------------------------------------------------------------------------------- 1 | 2 | 8 | 9 | 10 | 11 | 14 | 15 | Test: Learn Ruby the Hard Way: Learning to Speak Object Oriented | Quizlet 16 | 17 | 18 | 19 | 20 | 31 | 32 | 33 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 |

This is a Free Service provided by Why Fund Inc. (a 501 C3 NonProfit) We thank you for your donation!

75 | 76 | 77 | 80 | 81 |

82 |

(1. Click on the course Study Set you wish to learn.) (2. If you wish you can click on "Print" and print the test page.) (3. When you want to take a test...click on anyone of the tests for that Study Set.) (4. Click on "Check Answers" and it will score your test and correct your answers.) (5. You can take all the tests as many times as you choose until you get an "A"!) (6. Automated college courses created from lecture notes, class exams, text books, reading materials from many colleges and universities.)

83 |
84 | 85 | 86 |
87 | 88 |
89 | 90 |
91 | 92 | 93 | 94 | 95 | 98 | 99 |
100 | NAME 101 | 102 |
103 | 104 | 110 | 111 |
112 |
113 |
114 |
115 |

F

0%
116 | 117 |
118 | 119 |
120 |

Question types

121 |
    122 |
  • 123 |
  • 124 |
  • 125 |
  • 126 |
127 |
128 |

Start with

129 |
    130 |
  • 131 | 132 | 133 |
  • 134 |
  • 135 | 136 | 137 |
  • 138 |
  • 139 | 140 | 141 |
  • 142 |
143 |
144 |

Question limit

145 |

146 | of 16 available terms

147 | 148 |

149 | 150 |
151 | 152 | 153 | 154 |
155 | 156 | 157 | 158 |
Print test 159 |

16 True/False questions

160 |
    161 |
  1. 162 |

    defHow you define a function inside a class.

    This is true. You gave no answer.

    163 |
  2. 164 |
  3. 165 |

    class X(Y)Tell Ruby to make a new kind of thing.

    This is false. You gave no answer.

    166 |

    It should be class X(Y)"Make a class named X that is-a Y.".

  4. 167 |
  5. 168 |

    inheritanceWhat you get when you tell Ruby to create a class.

    This is false. You gave no answer.

    169 |

    It should be inheritanceThe concept that one class can inherit traits from another class, much like you and your parents..

  6. 170 |
  7. 171 |

    foo.K = Q"From foo get the K attribute and set it to Q."

    This is true. You gave no answer.

    172 |
  8. 173 |
  9. 174 |

    @Inside the functions in a class, @ is an operator for variables in the instance/object being accessed.

    This is true. You gave no answer.

    175 |
  10. 176 |
  11. 177 |

    class X(object) def initialize(J)"class X has-a initialize that takes J parameters."

    This is true. You gave no answer.

    178 |
  12. 179 |
  13. 180 |

    foo = X()"From foo get the K attribute and set it to Q."

    This is false. You gave no answer.

    181 |

    It should be foo = X()"Set foo to an instance of class X.".

  14. 182 |
  15. 183 |

    foo.M(J)"From foo get the M function, and call it with parameters J."

    This is true. You gave no answer.

    184 |
  16. 185 |
  17. 186 |

    class X(object) def M(J)"class X has-a function named M that takes J parameters."

    This is true. You gave no answer.

    187 |
  18. 188 |
  19. 189 |

    attributeTwo meanings: the most basic kind of thing, and any instance of some thing.

    This is false. You gave no answer.

    190 |

    It should be attributeA property classes have that are from composition and are usually variables..

  20. 191 |
  21. 192 |

    is-aA phrase to say that something inherits from another, as in a Salmon is-a Fish.

    This is true. You gave no answer.

    193 |
  22. 194 |
  23. 195 |

    instanceWhat you get when you tell Ruby to create a class.

    This is true. You gave no answer.

    196 |
  24. 197 |
  25. 198 |

    classTell Ruby to make a new kind of thing.

    This is true. You gave no answer.

    199 |
  26. 200 |
  27. 201 |

    objectHow you define a function inside a class.

    This is false. You gave no answer.

    202 |

    It should be objectTwo meanings: the most basic kind of thing, and any instance of some thing..

  28. 203 |
  29. 204 |

    has-aA phrase to say that something is composed of other things or has a trait, as in a Salmon has-a mouth.

    This is true. You gave no answer.

    205 |
  30. 206 |
  31. 207 |

    compositionThe concept that a class can be composed of other classes as parts, much like how a car has wheels.

    This is true. You gave no answer.

    208 |
  32. 209 |

210 | 211 |

212 |
213 | 214 |
215 |
216 |
217 | 218 | 219 | 220 | 221 | 222 | 223 |
224 | 225 | 226 |
227 | 228 | Create Study Set 229 | 230 |
231 |
232 | 239 |
240 |
241 |
242 |
243 | 244 | 245 | 248 | 249 | 250 | -------------------------------------------------------------------------------- /output/Test:_Learn_Ruby_The_Hard_Way_-_Command_LineQuizlet-1640203789.html: -------------------------------------------------------------------------------- 1 | 2 | 8 | 9 | 10 | 11 | 14 | 15 | Test: Learn Ruby The Hard Way - Command Line | Quizlet 16 | 17 | 18 | 19 | 20 | 31 | 32 | 33 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 |

This is a Free Service provided by Why Fund Inc. (a 501 C3 NonProfit) We thank you for your donation!

75 | 76 | 77 | 80 | 81 |

82 |

(1. Click on the course Study Set you wish to learn.) (2. If you wish you can click on "Print" and print the test page.) (3. When you want to take a test...click on anyone of the tests for that Study Set.) (4. Click on "Check Answers" and it will score your test and correct your answers.) (5. You can take all the tests as many times as you choose until you get an "A"!) (6. Automated college courses created from lecture notes, class exams, text books, reading materials from many colleges and universities.)

83 |
84 | 85 | 86 |
87 | 88 |
89 | 90 |
91 | 92 | 93 | 94 | 95 | 98 | 99 |
100 | NAME 101 | 102 |
103 | 104 | 110 | 111 |
112 |
113 |
114 |
115 |

F

0%
116 | 117 |
118 | 119 |
120 |

Question types

121 |
    122 |
  • 123 |
  • 124 |
  • 125 |
  • 126 |
127 |
128 |

Start with

129 |
    130 |
  • 131 | 132 | 133 |
  • 134 |
  • 135 | 136 | 137 |
  • 138 |
  • 139 | 140 | 141 |
  • 142 |
143 |
144 |

Question limit

145 |

146 | of 22 available terms

147 | 148 |

149 | 150 |
151 | 152 | 153 | 154 |
155 | 156 | 157 | 158 |
Print test 159 |

22 True/False questions

160 |
    161 |
  1. 162 |

    grepcopy a file or directory

    This is false. You gave no answer.

    163 |

    It should be grepfind things inside files.

  2. 164 |
  3. 165 |

    popdpop directory

    This is true. You gave no answer.

    166 |
  4. 167 |
  5. 168 |

    pushdprint working directory

    This is false. You gave no answer.

    169 |

    It should be pushdpush directory.

  6. 170 |
  7. 171 |

    xargsexecute arguments

    This is true. You gave no answer.

    172 |
  8. 173 |
  9. 174 |

    apropospop directory

    This is false. You gave no answer.

    175 |

    It should be aproposfind what man page is appropriate.

  10. 176 |
  11. 177 |

    cpcopy a file or directory

    This is true. You gave no answer.

    178 |
  12. 179 |
  13. 180 |

    pwdprint working directory

    This is true. You gave no answer.

    181 |
  14. 182 |
  15. 183 |

    manmove a file or directory

    This is false. You gave no answer.

    184 |

    It should be manread a manual page.

  16. 185 |
  17. 186 |

    echoprint some arguments

    This is true. You gave no answer.

    187 |
  18. 188 |
  19. 189 |

    mvcopy a file or directory

    This is false. You gave no answer.

    190 |

    It should be mvmove a file or directory.

  20. 191 |
  21. 192 |

    cdcopy a file or directory

    This is false. You gave no answer.

    193 |

    It should be cdchange directory.

  22. 194 |
  23. 195 |

    exitexit the shell

    This is true. You gave no answer.

    196 |
  24. 197 |
  25. 198 |

    mkdirremove directory

    This is false. You gave no answer.

    199 |

    It should be mkdirmake directory.

  26. 200 |
  27. 201 |

    catcopy a file or directory

    This is false. You gave no answer.

    202 |

    It should be catprint the whole file.

  28. 203 |
  29. 204 |

    exportexport/set a new environment variable

    This is true. You gave no answer.

    205 |
  30. 206 |
  31. 207 |

    envmove a file or directory

    This is false. You gave no answer.

    208 |

    It should be envlook at your environment.

  32. 209 |
  33. 210 |

    findprint working directory

    This is false. You gave no answer.

    211 |

    It should be findfind files.

  34. 212 |
  35. 213 |

    lesspage through a file

    This is true. You gave no answer.

    214 |
  36. 215 |
  37. 216 |

    rmdirremove directory

    This is true. You gave no answer.

    217 |
  38. 218 |
  39. 219 |

    lslist directory

    This is true. You gave no answer.

    220 |
  40. 221 |
  41. 222 |

    hostnamemy computer's network name

    This is true. You gave no answer.

    223 |
  42. 224 |
  43. 225 |

    sudoDANGER! become super user root DANGER!

    This is true. You gave no answer.

    226 |
  44. 227 |

228 | 229 |

230 |
231 | 232 |
233 |
234 |
235 | 236 | 237 | 238 | 239 | 240 | 241 |
242 | 243 | 244 |
245 | 246 | Create Study Set 247 | 248 |
249 |
250 | 257 |
258 |
259 |
260 |
261 | 262 | 263 | 266 | 267 | 268 | -------------------------------------------------------------------------------- /output/Test:_Ruby_ProgrammingQuizlet-1640203896.html: -------------------------------------------------------------------------------- 1 | 2 | 8 | 9 | 10 | 11 | 14 | 15 | Test: Ruby Programming | Quizlet 16 | 17 | 18 | 19 | 20 | 31 | 32 | 33 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 |

This is a Free Service provided by Why Fund Inc. (a 501 C3 NonProfit) We thank you for your donation!

75 | 76 | 77 | 80 | 81 |

82 |

(1. Click on the course Study Set you wish to learn.) (2. If you wish you can click on "Print" and print the test page.) (3. When you want to take a test...click on anyone of the tests for that Study Set.) (4. Click on "Check Answers" and it will score your test and correct your answers.) (5. You can take all the tests as many times as you choose until you get an "A"!) (6. Automated college courses created from lecture notes, class exams, text books, reading materials from many colleges and universities.)

83 |
84 | 85 | 86 |
87 | 88 |
89 | 90 |
91 | 92 | 93 | 94 | 95 | 98 | 99 |
100 | NAME 101 | 102 |
103 | 104 | 110 | 111 |
112 |
113 |
114 |
115 |

F

0%
116 | 117 |
118 | 119 |
120 |

Question types

121 |
    122 |
  • 123 |
  • 124 |
  • 125 |
  • 126 |
127 |
128 |

Start with

129 |
    130 |
  • 131 | 132 | 133 |
  • 134 |
  • 135 | 136 | 137 |
  • 138 |
  • 139 | 140 | 141 |
  • 142 |
143 |
144 |

Question limit

145 |

146 | of 22 available terms

147 | 148 |

149 | 150 |
151 | 152 | 153 | 154 |
155 | 156 | 157 | 158 |
Print test 159 |

22 True/False questions

160 |
    161 |
  1. 162 |

    rmdirRemove directory

    This is true. You gave no answer.

    163 |
  2. 164 |
  3. 165 |

    lsList directory

    This is true. You gave no answer.

    166 |
  4. 167 |
  5. 168 |

    hostnameDANGER! Become super user root DANGER!

    This is false. You gave no answer.

    169 |

    It should be hostnameMy computers network name.

  6. 170 |
  7. 171 |

    forfilesPage through a file

    This is false. You gave no answer.

    172 |

    It should be forfilesRun a command on lots of files.

  8. 173 |
  9. 174 |

    mvList directory

    This is false. You gave no answer.

    175 |

    It should be mvMove a file or directory.

  10. 176 |
  11. 177 |

    setCopy a file or directory

    This is false. You gave no answer.

    178 |

    It should be setExport/set a new environment variable.

  12. 179 |
  13. 180 |

    helpctrRead a manual page

    This is false. You gave no answer.

    181 |

    It should be helpctrFind what man page is appropriate.

  14. 182 |
  15. 183 |

    moreMove a file or directory

    This is false. You gave no answer.

    184 |

    It should be morePage through a file.

  16. 185 |
  17. 186 |

    echoPrint some argumets

    This is true. You gave no answer.

    187 |
  18. 188 |
  19. 189 |

    pushdPop directory

    This is false. You gave no answer.

    190 |

    It should be pushdPush directory.

  20. 191 |
  21. 192 |

    dir -rRemove directory

    This is false. You gave no answer.

    193 |

    It should be dir -rFind files.

  22. 194 |
  23. 195 |

    mkdirRemove directory

    This is false. You gave no answer.

    196 |

    It should be mkdirMake directory.

  24. 197 |
  25. 198 |

    exitPrint some argumets

    This is false. You gave no answer.

    199 |

    It should be exitExit the shell.

  26. 200 |
  27. 201 |

    pwdPrint working directory

    This is true. You gave no answer.

    202 |
  28. 203 |
  29. 204 |

    typePop directory

    This is false. You gave no answer.

    205 |

    It should be typePrint the whole file.

  30. 206 |
  31. 207 |

    cdCopy a file or directory

    This is false. You gave no answer.

    208 |

    It should be cdChange directory.

  32. 209 |
  33. 210 |

    runasDANGER! Become super user root DANGER!

    This is true. You gave no answer.

    211 |
  34. 212 |
  35. 213 |

    select-stringFind what man page is appropriate

    This is false. You gave no answer.

    214 |

    It should be select-stringFind things inside files.

  36. 215 |
  37. 216 |

    popdPop directory

    This is true. You gave no answer.

    217 |
  38. 218 |
  39. 219 |

    robocopyCopy a file or directory

    This is false. You gave no answer.

    220 |

    It should be robocopyRobust copy.

  40. 221 |
  41. 222 |

    cpChange directory

    This is false. You gave no answer.

    223 |

    It should be cpCopy a file or directory.

  42. 224 |
  43. 225 |

    helpCopy a file or directory

    This is false. You gave no answer.

    226 |

    It should be helpRead a manual page.

  44. 227 |

228 | 229 |

230 |
231 | 232 |
233 |
234 |
235 | 236 | 237 | 238 | 239 | 240 | 241 |
242 | 243 | 244 |
245 | 246 | Create Study Set 247 | 248 |
249 |
250 | 257 |
258 |
259 |
260 |
261 | 262 | 263 | 266 | 267 | 268 | -------------------------------------------------------------------------------- /output/Test:_Ruby_Programming_BasicsQuizlet-1640203892.html: -------------------------------------------------------------------------------- 1 | 2 | 8 | 9 | 10 | 11 | 14 | 15 | Test: Ruby Programming Basics | Quizlet 16 | 17 | 18 | 19 | 20 | 31 | 32 | 33 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 |

This is a Free Service provided by Why Fund Inc. (a 501 C3 NonProfit) We thank you for your donation!

75 | 76 | 77 | 80 | 81 |

82 |

(1. Click on the course Study Set you wish to learn.) (2. If you wish you can click on "Print" and print the test page.) (3. When you want to take a test...click on anyone of the tests for that Study Set.) (4. Click on "Check Answers" and it will score your test and correct your answers.) (5. You can take all the tests as many times as you choose until you get an "A"!) (6. Automated college courses created from lecture notes, class exams, text books, reading materials from many colleges and universities.)

83 |
84 | 85 | 86 |
87 | 88 |
89 | 90 |
91 | 92 | 93 | 94 | 95 | 98 | 99 |
100 | NAME 101 | 102 |
103 | 104 | 110 | 111 |
112 |
113 |
114 |
115 |

F

0%
116 | 117 |
118 | 119 |
120 |

Question types

121 |
    122 |
  • 123 |
  • 124 |
  • 125 |
  • 126 |
127 |
128 |

Start with

129 |
    130 |
  • 131 | 132 | 133 |
  • 134 |
  • 135 | 136 | 137 |
  • 138 |
  • 139 | 140 | 141 |
  • 142 |
143 |
144 |

Question limit

145 |

146 | of 17 available terms

147 | 148 |

149 | 150 |
151 | 152 | 153 | 154 |
155 | 156 | 157 | 158 |
Print test

17 Matching questions

  1. =

    INCORRECT: No answer given

    ANSWER: l Assignment.

  2. =begin =end

    INCORRECT: No answer given

    ANSWER: c commands that create multi line comments when placed between them.

  3. Comments

    INCORRECT: No answer given

    ANSWER: p A comment is a bit of text that ruby wont run as code. Uses the # to signify

  4. Methods

    INCORRECT: No answer given

    ANSWER: i abilities that objects have

  5. %

    INCORRECT: No answer given

    ANSWER: k Modulo outputs the remainder left by division
    159 | ex. 25 % 7 = 4

  6. Boolean

    INCORRECT: No answer given

    ANSWER: o Value that can be true or false.

  7. Local Variable

    INCORRECT: No answer given

    ANSWER: d A variable only accessible from within the block it is created in.
    160 | They should only contain lower case letters and be separated by underscores _

  8. String

    INCORRECT: No answer given

    ANSWER: g A word or phrase.

  9. print

    INCORRECT: No answer given

    ANSWER: f a command that displays a string

  10. Operator

    INCORRECT: No answer given

    ANSWER: m A symbol that represents a specific action

  11. *

    INCORRECT: No answer given

    ANSWER: n Multiplication ex. 5*5=25

  12. +

    INCORRECT: No answer given

    ANSWER: h Addition ex. 1+1=2

  13. /

    INCORRECT: No answer given

    ANSWER: a Division ex. 25/5=5

  14. -

    INCORRECT: No answer given

    ANSWER: q Subtraction ex. 3-2=1

  15. **

    INCORRECT: No answer given

    ANSWER: b Exponentiation 2*3 = 22*2 = 8

  16. puts

    INCORRECT: No answer given

    ANSWER: j a command that displays a string and puts a blank line after the string is displayed

  17. Variable

    INCORRECT: No answer given

    ANSWER: e A word or name that is assigned a single value with the = operator.

  1. a Division ex. 25/5=5
  2. b Exponentiation 2*3 = 22*2 = 8
  3. c commands that create multi line comments when placed between them.
  4. d A variable only accessible from within the block it is created in.
    161 | They should only contain lower case letters and be separated by underscores _
  5. e A word or name that is assigned a single value with the = operator.
  6. f a command that displays a string
  7. g A word or phrase.
  8. h Addition ex. 1+1=2
  9. i abilities that objects have
  10. j a command that displays a string and puts a blank line after the string is displayed
  11. k Modulo outputs the remainder left by division
    162 | ex. 25 % 7 = 4
  12. l Assignment.
  13. m A symbol that represents a specific action
  14. n Multiplication ex. 5*5=25
  15. o Value that can be true or false.
  16. p A comment is a bit of text that ruby wont run as code. Uses the # to signify
  17. q Subtraction ex. 3-2=1

163 | 164 |

165 |
166 | 167 |
168 |
169 |
170 | 171 | 172 | 173 | 174 | 175 | 176 |
177 | 178 | 179 |
180 | 181 | Create Study Set 182 | 183 |
184 |
185 | 192 |
193 |
194 |
195 |
196 | 197 | 198 | 201 | 202 | 203 | -------------------------------------------------------------------------------- /output/Test:_Learn_Ruby_the_Hard_Way:_Learning_to_Speak_Object_OrientedQuizlet-1640203795.html: -------------------------------------------------------------------------------- 1 | 2 | 8 | 9 | 10 | 11 | 14 | 15 | Test: Learn Ruby the Hard Way: Learning to Speak Object Oriented | Quizlet 16 | 17 | 18 | 19 | 20 | 31 | 32 | 33 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 |

This is a Free Service provided by Why Fund Inc. (a 501 C3 NonProfit) We thank you for your donation!

75 | 76 | 77 | 80 | 81 |

82 |

(1. Click on the course Study Set you wish to learn.) (2. If you wish you can click on "Print" and print the test page.) (3. When you want to take a test...click on anyone of the tests for that Study Set.) (4. Click on "Check Answers" and it will score your test and correct your answers.) (5. You can take all the tests as many times as you choose until you get an "A"!) (6. Automated college courses created from lecture notes, class exams, text books, reading materials from many colleges and universities.)

83 |
84 | 85 | 86 |
87 | 88 |
89 | 90 |
91 | 92 | 93 | 94 | 95 | 98 | 99 |
100 | NAME 101 | 102 |
103 | 104 | 110 | 111 |
112 |
113 |
114 |
115 |

F

0%
116 | 117 |
118 | 119 |
120 |

Question types

121 |
    122 |
  • 123 |
  • 124 |
  • 125 |
  • 126 |
127 |
128 |

Start with

129 |
    130 |
  • 131 | 132 | 133 |
  • 134 |
  • 135 | 136 | 137 |
  • 138 |
  • 139 | 140 | 141 |
  • 142 |
143 |
144 |

Question limit

145 |

146 | of 16 available terms

147 | 148 |

149 | 150 |
151 | 152 | 153 | 154 |
155 | 156 | 157 | 158 |
Print test

16 Matching questions

  1. composition

    INCORRECT: No answer given

    ANSWER: d The concept that a class can be composed of other classes as parts, much like how a car has wheels.

  2. has-a

    INCORRECT: No answer given

    ANSWER: b A phrase to say that something is composed of other things or has a trait, as in a Salmon has-a mouth.

  3. instance

    INCORRECT: No answer given

    ANSWER: e What you get when you tell Ruby to create a class.

  4. is-a

    INCORRECT: No answer given

    ANSWER: h A phrase to say that something inherits from another, as in a Salmon is-a Fish.

  5. object

    INCORRECT: No answer given

    ANSWER: f Two meanings: the most basic kind of thing, and any instance of some thing.

  6. inheritance

    INCORRECT: No answer given

    ANSWER: i The concept that one class can inherit traits from another class, much like you and your parents.

  7. class

    INCORRECT: No answer given

    ANSWER: g Tell Ruby to make a new kind of thing.

  8. class X(object) def M(J)

    INCORRECT: No answer given

    ANSWER: m "class X has-a function named M that takes J parameters."

  9. foo = X()

    INCORRECT: No answer given

    ANSWER: a "Set foo to an instance of class X."

  10. foo.K = Q

    INCORRECT: No answer given

    ANSWER: j "From foo get the K attribute and set it to Q."

  11. attribute

    INCORRECT: No answer given

    ANSWER: k A property classes have that are from composition and are usually variables.

  12. foo.M(J)

    INCORRECT: No answer given

    ANSWER: l "From foo get the M function, and call it with parameters J."

  13. class X(Y)

    INCORRECT: No answer given

    ANSWER: p "Make a class named X that is-a Y."

  14. def

    INCORRECT: No answer given

    ANSWER: c How you define a function inside a class.

  15. class X(object) def initialize(J)

    INCORRECT: No answer given

    ANSWER: n "class X has-a initialize that takes J parameters."

  16. @

    INCORRECT: No answer given

    ANSWER: o Inside the functions in a class, @ is an operator for variables in the instance/object being accessed.

  1. a "Set foo to an instance of class X."
  2. b A phrase to say that something is composed of other things or has a trait, as in a Salmon has-a mouth.
  3. c How you define a function inside a class.
  4. d The concept that a class can be composed of other classes as parts, much like how a car has wheels.
  5. e What you get when you tell Ruby to create a class.
  6. f Two meanings: the most basic kind of thing, and any instance of some thing.
  7. g Tell Ruby to make a new kind of thing.
  8. h A phrase to say that something inherits from another, as in a Salmon is-a Fish.
  9. i The concept that one class can inherit traits from another class, much like you and your parents.
  10. j "From foo get the K attribute and set it to Q."
  11. k A property classes have that are from composition and are usually variables.
  12. l "From foo get the M function, and call it with parameters J."
  13. m "class X has-a function named M that takes J parameters."
  14. n "class X has-a initialize that takes J parameters."
  15. o Inside the functions in a class, @ is an operator for variables in the instance/object being accessed.
  16. p "Make a class named X that is-a Y."

159 | 160 |

161 |
162 | 163 |
164 |
165 |
166 | 167 | 168 | 169 | 170 | 171 | 172 |
173 | 174 | 175 |
176 | 177 | Create Study Set 178 | 179 |
180 |
181 | 188 |
189 |
190 |
191 |
192 | 193 | 194 | 197 | 198 | 199 | --------------------------------------------------------------------------------