import com.google.gson.Gson;
import com.google.gson.reflect.TypeToken;
import com.instructure.canvasapi.model.Enrollment;
import com.instructure.canvasapi.utilities.CanvasRestAdapter;
import junit.framework.Assert;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.robolectric.annotation.Config;
import java.util.List;
@Config(sdk = 17)
@RunWith(RobolectricGradleTestRunner.class)
public class SelfEnrollmentsUnitTest extends Assert {
@Test
public void test1() {
Gson gson = CanvasRestAdapter.getGSONParser();
List<Enrollment> list = gson.fromJson(JSON, new TypeToken<List<Enrollment>>(){}.getType());
assertNotNull(list);
assertTrue(list.size() > 0);
for(Enrollment e : list) {
assertNotNull(e.getType());
assertNotNull(e.getEnrollmentState());
assertNotNull(e.getRole());
assertTrue(e.isObserver() || e.isStudent() || e.isTA() || e.isTeacher());
}
}
///users/self/enrollments
final String JSON = "[\n" +
"{\n" +
"\"associated_user_id\": null,\n" +
"\"course_id\": 1279999,\n" +
"\"course_section_id\": 1486081,\n" +
"\"created_at\": \"2014-03-17T16:36:36Z\",\n" +
"\"end_at\": null,\n" +
"\"id\": 21917612,\n" +
"\"limit_privileges_to_course_section\": false,\n" +
"\"root_account_id\": 99298,\n" +
"\"start_at\": null,\n" +
"\"type\": \"TeacherEnrollment\",\n" +
"\"updated_at\": \"2014-06-16T22:48:18Z\",\n" +
"\"user_id\": 5347622,\n" +
"\"enrollment_state\": \"active\",\n" +
"\"role\": \"TeacherEnrollment\",\n" +
"\"last_activity_at\": \"2014-07-09T18:49:31Z\",\n" +
"\"total_activity_time\": 2042,\n" +
"\"sis_course_id\": null,\n" +
"\"course_integration_id\": null,\n" +
"\"sis_section_id\": null,\n" +
"\"section_integration_id\": null,\n" +
"\"html_url\": \"http://www.dailystormer.com/wp-content/uploads/2014/05/1398802810722.jpeg\",\n" +
"\"user\": {\n" +
"\"id\": 5347622,\n" +
"\"name\": \"noreply@instructure.com\",\n" +
"\"sortable_name\": \"noreply@instructure.com\",\n" +
"\"short_name\": \"noreply@instructure.com\",\n" +
"\"login_id\": \"noreply@instructure.com\"\n" +
"}\n" +
"},\n" +
"{\n" +
"\"associated_user_id\": null,\n" +
"\"course_id\": 833052,\n" +
"\"course_section_id\": 889720,\n" +
"\"created_at\": \"2014-03-17T16:37:33Z\",\n" +
"\"end_at\": null,\n" +
"\"id\": 21917613,\n" +
"\"limit_privileges_to_course_section\": false,\n" +
"\"root_account_id\": 99298,\n" +
"\"start_at\": null,\n" +
"\"type\": \"StudentEnrollment\",\n" +
"\"updated_at\": \"2014-06-23T19:56:18Z\",\n" +
"\"user_id\": 5347622,\n" +
"\"enrollment_state\": \"active\",\n" +
"\"role\": \"StudentEnrollment\",\n" +
"\"last_activity_at\": \"2014-07-09T22:04:48Z\",\n" +
"\"total_activity_time\": 1217,\n" +
"\"grades\": {\n" +
"\"html_url\": \"http://www.dailystormer.com/wp-content/uploads/2014/05/1398802810722.jpeg\",\n" +
"\"current_score\": null,\n" +
"\"final_score\": 0,\n" +
"\"current_grade\": null,\n" +
"\"final_grade\": null\n" +
"},\n" +
"\"sis_course_id\": null,\n" +
"\"course_integration_id\": null,\n" +
"\"sis_section_id\": null,\n" +
"\"section_integration_id\": null,\n" +
"\"html_url\": \"http://www.dailystormer.com/wp-content/uploads/2014/05/1398802810722.jpeg\",\n" +
"\"user\": {\n" +
"\"id\": 5347622,\n" +
"\"name\": \"noreply@instructure.com\",\n" +
"\"sortable_name\": \"noreply@instructure.com\",\n" +
"\"short_name\": \"noreply@instructure.com\",\n" +
"\"login_id\": \"noreply@instructure.com\"\n" +
"}\n" +
"},\n" +
"{\n" +
"\"associated_user_id\": null,\n" +
"\"course_id\": 24219,\n" +
"\"course_section_id\": 31105,\n" +
"\"created_at\": \"2014-03-17T16:37:54Z\",\n" +
"\"end_at\": null,\n" +
"\"id\": 21917614,\n" +
"\"limit_privileges_to_course_section\": false,\n" +
"\"root_account_id\": 99298,\n" +
"\"start_at\": null,\n" +
"\"type\": \"StudentEnrollment\",\n" +
"\"updated_at\": \"2014-06-23T16:27:55Z\",\n" +
"\"user_id\": 5347622,\n" +
"\"enrollment_state\": \"active\",\n" +
"\"role\": \"StudentEnrollment\",\n" +
"\"last_activity_at\": \"2014-07-09T15:35:39Z\",\n" +
"\"total_activity_time\": 4689,\n" +
"\"grades\": {\n" +
"\"html_url\": \"http://www.dailystormer.com/wp-content/uploads/2014/05/1398802810722.jpeg\"\n" +
"},\n" +
"\"sis_course_id\": null,\n" +
"\"course_integration_id\": null,\n" +
"\"sis_section_id\": null,\n" +
"\"section_integration_id\": null,\n" +
"\"html_url\": \"http://www.dailystormer.com/wp-content/uploads/2014/05/1398802810722.jpeg\",\n" +
"\"user\": {\n" +
"\"id\": 5347622,\n" +
"\"name\": \"noreply@instructure.com\",\n" +
"\"sortable_name\": \"noreply@instructure.com\",\n" +
"\"short_name\": \"noreply@instructure.com\",\n" +
"\"login_id\": \"noreply@instructure.com\"\n" +
"}\n" +
"},\n" +
"{\n" +
"\"associated_user_id\": null,\n" +
"\"course_id\": 36376,\n" +
"\"course_section_id\": 986129,\n" +
"\"created_at\": \"2014-03-17T16:38:04Z\",\n" +
"\"end_at\": null,\n" +
"\"id\": 21917615,\n" +
"\"limit_privileges_to_course_section\": false,\n" +
"\"root_account_id\": 99298,\n" +
"\"start_at\": null,\n" +
"\"type\": \"StudentEnrollment\",\n" +
"\"updated_at\": \"2014-06-16T22:48:18Z\",\n" +
"\"user_id\": 5347622,\n" +
"\"enrollment_state\": \"active\",\n" +
"\"role\": \"StudentEnrollment\",\n" +
"\"last_activity_at\": \"2014-07-09T15:53:45Z\",\n" +
"\"total_activity_time\": 0,\n" +
"\"grades\": {\n" +
"\"html_url\": \"http://www.dailystormer.com/wp-content/uploads/2014/05/1398802810722.jpeg\",\n" +
"\"current_score\": null,\n" +
"\"final_score\": 0,\n" +
"\"current_grade\": null,\n" +
"\"final_grade\": null\n" +
"},\n" +
"\"sis_course_id\": null,\n" +
"\"course_integration_id\": null,\n" +
"\"sis_section_id\": null,\n" +
"\"section_integration_id\": null,\n" +
"\"html_url\": \"http://www.dailystormer.com/wp-content/uploads/2014/05/1398802810722.jpeg\",\n" +
"\"user\": {\n" +
"\"id\": 5347622,\n" +
"\"name\": \"noreply@instructure.com\",\n" +
"\"sortable_name\": \"noreply@instructure.com\",\n" +
"\"short_name\": \"noreply@instructure.com\",\n" +
"\"login_id\": \"noreply@instructure.com\"\n" +
"}\n" +
"},\n" +
"{\n" +
"\"associated_user_id\": null,\n" +
"\"course_id\": 1383420,\n" +
"\"course_section_id\": 1586842,\n" +
"\"created_at\": \"2014-06-16T19:21:02Z\",\n" +
"\"end_at\": null,\n" +
"\"id\": 23097825,\n" +
"\"limit_privileges_to_course_section\": false,\n" +
"\"root_account_id\": 99298,\n" +
"\"start_at\": null,\n" +
"\"type\": \"TeacherEnrollment\",\n" +
"\"updated_at\": \"2014-06-16T19:21:13Z\",\n" +
"\"user_id\": 5347622,\n" +
"\"enrollment_state\": \"active\",\n" +
"\"role\": \"TeacherEnrollment\",\n" +
"\"last_activity_at\": \"2014-07-14T16:37:01Z\",\n" +
"\"total_activity_time\": 4381,\n" +
"\"sis_course_id\": null,\n" +
"\"course_integration_id\": null,\n" +
"\"sis_section_id\": null,\n" +
"\"section_integration_id\": null,\n" +
"\"html_url\": \"http://www.dailystormer.com/wp-content/uploads/2014/05/1398802810722.jpeg\",\n" +
"\"user\": {\n" +
"\"id\": 5347622,\n" +
"\"name\": \"noreply@instructure.com\",\n" +
"\"sortable_name\": \"noreply@instructure.com\",\n" +
"\"short_name\": \"noreply@instructure.com\",\n" +
"\"login_id\": \"noreply@instructure.com\"\n" +
"}\n" +
"},\n" +
"{\n" +
"\"associated_user_id\": null,\n" +
"\"course_id\": 1279999,\n" +
"\"course_section_id\": 1486081,\n" +
"\"created_at\": \"2014-06-16T22:48:03Z\",\n" +
"\"end_at\": null,\n" +
"\"id\": 23100952,\n" +
"\"limit_privileges_to_course_section\": false,\n" +
"\"root_account_id\": 99298,\n" +
"\"start_at\": null,\n" +
"\"type\": \"StudentEnrollment\",\n" +
"\"updated_at\": \"2014-06-16T22:48:18Z\",\n" +
"\"user_id\": 5347622,\n" +
"\"enrollment_state\": \"active\",\n" +
"\"role\": \"StudentEnrollment\",\n" +
"\"last_activity_at\": \"2014-06-16T22:48:19Z\",\n" +
"\"total_activity_time\": 0,\n" +
"\"grades\": {\n" +
"\"html_url\": \"http://www.dailystormer.com/wp-content/uploads/2014/05/1398802810722.jpeg\",\n" +
"\"current_score\": null,\n" +
"\"final_score\": null,\n" +
"\"current_grade\": null,\n" +
"\"final_grade\": null\n" +
"},\n" +
"\"sis_course_id\": null,\n" +
"\"course_integration_id\": null,\n" +
"\"sis_section_id\": null,\n" +
"\"section_integration_id\": null,\n" +
"\"html_url\": \"http://www.dailystormer.com/wp-content/uploads/2014/05/1398802810722.jpeg\",\n" +
"\"user\": {\n" +
"\"id\": 5347622,\n" +
"\"name\": \"noreply@instructure.com\",\n" +
"\"sortable_name\": \"noreply@instructure.com\",\n" +
"\"short_name\": \"noreply@instructure.com\",\n" +
"\"login_id\": \"noreply@instructure.com\"\n" +
"}\n" +
"}\n" +
"]";
}