Write a Rails 3 application that:
- Uses two separate SMS numbers/accounts with the same provider.
- Sends a SMS from one number to the other, alternating between the two numbers with each send.
- Sends random valid SMS characters of random lengths in each message.
- Receives and logs the receipt of each incoming SMS message. This will need to be done asynchronous of any send activity.
- Runs this test against accounts at [url removed, login to view]
- Clearly separates the test harness code from the SMS-provider code so another provider (such as Twilio) can be easily added.
The application should have a configuration for:
- The accounts to use for the test
- The number of SMS messages to send per second.
- How many seconds to run while sending and receiving SMS messages.
- How many seconds to run after the send/receive mode has completed. The app must continue to receive messages during this time.
When the app completes each a run it reports:
- How many messages it actually sent
- How many messages it actually received
This application does not need a GUI and can run from the command line.