GradeData.java

1
package edu.ucsb.cs156.courses.entities;
2
3
import javax.persistence.Entity;
4
import javax.persistence.GenerationType;
5
import javax.persistence.Id;
6
import javax.persistence.Table;
7
import javax.persistence.UniqueConstraint;
8
import javax.persistence.GeneratedValue;
9
10
import lombok.Builder;
11
import lombok.Data;
12
import lombok.NoArgsConstructor;
13
import lombok.AllArgsConstructor;
14
import lombok.Builder;
15
16
/**
17
 * GradeHistory - Entity for grade history data.  Each object represents one
18
 * row from the CSV files located in this repository:
19
 * <a href="https://github.com/rtora/UCSB_Grades">https://github.com/rtora/UCSB_Grades</a>
20
 * 
21
 * There is a unique constraint on the combination of year, 
22
 * quarter, subjectArea, course, instructor, and grade, since we do not want
23
 * duplicate rows of data for the same course.
24
 */
25
26
@Data
27
@Builder
28
@AllArgsConstructor
29
@NoArgsConstructor
30
@Entity(name = "gradedata")
31
@Table(uniqueConstraints = { @UniqueConstraint(name = "UniqueGradeData", columnNames = { "yyyyq", "course","professor","grade" }) })
32
public class GradeData {
33
    @Id
34
    @GeneratedValue(strategy = GenerationType.IDENTITY)
35
    private Long id;
36
    private String yyyyq;
37
    private String course;
38
    private String professor;
39
    private String grade;
40
    private int count;
41
42
    public String getSubjectArea() {
43 1 1. getSubjectArea : negated conditional → KILLED
        if (course==null)
44 1 1. getSubjectArea : replaced return value with "" for edu/ucsb/cs156/courses/entities/GradeData::getSubjectArea → KILLED
            return null;
45 1 1. getSubjectArea : replaced return value with "" for edu/ucsb/cs156/courses/entities/GradeData::getSubjectArea → KILLED
        return course.substring(0, 8).trim();
46
    }
47
    public String getCourseNum() {
48 1 1. getCourseNum : negated conditional → KILLED
        if (course==null)
49 1 1. getCourseNum : replaced return value with "" for edu/ucsb/cs156/courses/entities/GradeData::getCourseNum → KILLED
            return null;
50 1 1. getCourseNum : replaced return value with "" for edu/ucsb/cs156/courses/entities/GradeData::getCourseNum → KILLED
        return course.substring(8).trim();
51
    }
52
}

Mutations

43

1.1
Location : getSubjectArea
Killed by : edu.ucsb.cs156.courses.entities.GradeDataTests.[engine:junit-jupiter]/[class:edu.ucsb.cs156.courses.entities.GradeDataTests]/[method:test_getSubjectArea_and_getCourseNum_CMPSC_156()]
negated conditional → KILLED

44

1.1
Location : getSubjectArea
Killed by : edu.ucsb.cs156.courses.entities.GradeDataTests.[engine:junit-jupiter]/[class:edu.ucsb.cs156.courses.entities.GradeDataTests]/[method:test_getSubjectArea_and_getCourseNum_null()]
replaced return value with "" for edu/ucsb/cs156/courses/entities/GradeData::getSubjectArea → KILLED

45

1.1
Location : getSubjectArea
Killed by : edu.ucsb.cs156.courses.entities.GradeDataTests.[engine:junit-jupiter]/[class:edu.ucsb.cs156.courses.entities.GradeDataTests]/[method:test_getSubjectArea_and_getCourseNum_CMPSC_156()]
replaced return value with "" for edu/ucsb/cs156/courses/entities/GradeData::getSubjectArea → KILLED

48

1.1
Location : getCourseNum
Killed by : edu.ucsb.cs156.courses.entities.GradeDataTests.[engine:junit-jupiter]/[class:edu.ucsb.cs156.courses.entities.GradeDataTests]/[method:test_getSubjectArea_and_getCourseNum_CMPSC_156()]
negated conditional → KILLED

49

1.1
Location : getCourseNum
Killed by : edu.ucsb.cs156.courses.entities.GradeDataTests.[engine:junit-jupiter]/[class:edu.ucsb.cs156.courses.entities.GradeDataTests]/[method:test_getSubjectArea_and_getCourseNum_null()]
replaced return value with "" for edu/ucsb/cs156/courses/entities/GradeData::getCourseNum → KILLED

50

1.1
Location : getCourseNum
Killed by : edu.ucsb.cs156.courses.entities.GradeDataTests.[engine:junit-jupiter]/[class:edu.ucsb.cs156.courses.entities.GradeDataTests]/[method:test_getSubjectArea_and_getCourseNum_CMPSC_156()]
replaced return value with "" for edu/ucsb/cs156/courses/entities/GradeData::getCourseNum → KILLED

Active mutators

Tests examined


Report generated by PIT 1.7.3