Skip to content

mgoodhart5/enigma

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

67 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Self Assessment

Functionality:

3: Meets Expectations

  • Enigma class encrypt and decrypt methods are implemented
  • Running of the encrypt.rb and decrypt.rb were successful

Object Oriented Programming:

3: Meets Expectations

  • There are 4 classes: Generator, Shift, Rotator, and Enigma

  • Generator generates the random numbers

  • Shift is responsible for creating the actual final shift amounts

  • Rotator has the character map and brings in the shift values to

  • result in the rotated alphabet and associated shift amounts

  • Enigma pulls in all the classes to one place to call the encrypted and

  • decrypted messages

  • There is one method in Shift (keys(random_number)) that is longer

  • than 7 lines. No classes are longer than

  • 100 lines

  • Variable names clearly communicate purpose:

  • example: letter_conversion(character, index, shift_amounts, direction)

  • example: randomizer

Test Driven Development:

3: Meets Expectations

  • Test coverage is 100%, Rakefile implemented
  • git history shows tests written before code

Version Control:

3: Meets Expectations

  • More than 30 commits
  • More than 15 pull requests
  • No more than three commits have multiple pieces of functionality,
  • from my understanding

About

pure ruby encryption/decryption project

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages