Disallow free verified course modes

Description

*Background:* The verification workflow assumes that all verified courses will have a price. Free verified course modes cause a 404 when the user attempts to enroll or upgrade.

This pull request adds a validation check to the `CourseMode` model to check that a price has been set if the mode is set to `validation` or `professional`.

*Testing:* Create a `CourseMode` instance in the django admin with mode `verified` and price 0.

Expected: fails with a validation error
Previous behaviour: accepted. Attempt to upgrade to verified course results in 404:

<img width="870" alt="screen shot 2016-01-29 at 13 58 47" src="https://cloud.githubusercontent.com/assets/793379/12669187/1c3097be-c691-11e5-92be-87d34e3d4a52.png">

Click 'Upgrade to Verified':

<img width="632" alt="screen shot 2016-01-29 at 13 59 35" src="https://cloud.githubusercontent.com/assets/793379/12669188/1c362256-c691-11e5-942d-13ae65067e10.png">

Activity

Show:
Alison Hodges
October 17, 2016, 6:54 PM

Doc on ecomm doesn't go to this level of detail. Removing documentation label, my assumption is that the UI indicates the required fields and that an error message appears if you do not supply all required values.

Simon Chen
April 13, 2016, 11:53 AM

Second attempt merged

Renzo Lucioni
April 7, 2016, 3:05 PM
Renzo Lucioni
March 23, 2016, 8:21 PM

we lost track of this. It's been near the top of our backlog but hasn't been picked up. can we make sure one of our subteams looks at this OSPR in the next sprint?

Joel Barciauskas
March 23, 2016, 8:15 PM

Bump - any idea when your team might get a chance to take a look at this?

Done

Assignee

Simon Chen

Reporter

Edx Admin [Administrator]

Contributor Name

Omar Khan

Repo

edx/edx-platform

Customer

Epic Link

None

OSCM Assignee

None

Platform Map Area (Levels 1 &amp; 2)

None

Platform Map Area (Levels 3 &amp; 4)

None

Blended Hour Utilization Percentage

None

edX Theme

None

edX Squad

None

Github Lines Added

None

Github Lines Deleted

None

Story Points

2

Priority

Unset