Skip to content
Snippets Groups Projects
Commit aa6d1863 authored by jvanboxtel@wisc.edu's avatar jvanboxtel@wisc.edu
Browse files

Code style updates to remaining files

parent 2a82f66e
No related branches found
No related tags found
No related merge requests found
Showing
with 484 additions and 449 deletions
...@@ -3,25 +3,25 @@ ...@@ -3,25 +3,25 @@
@import 'degree-planner/shared/course-item/course-item.component.scss'; @import 'degree-planner/shared/course-item/course-item.component.scss';
header { header {
position: absolute; position: absolute;
top: 0; top: 0;
left: 0; left: 0;
width: 100%; width: 100%;
height: 112px; height: 112px;
background-color: teal; background-color: teal;
} }
main { main {
position: absolute; position: absolute;
top: 112px; top: 112px;
left: 0; left: 0;
bottom: 0; bottom: 0;
right: 0; right: 0;
overflow: hidden; overflow: hidden;
} }
#course-search-sidenav { #course-search-sidenav {
max-width: 360px; max-width: 360px;
min-width: 360px; min-width: 360px;
height: 100vh; height: 100vh;
} }
\ No newline at end of file
...@@ -10,44 +10,48 @@ import { AppComponent } from './app.component'; ...@@ -10,44 +10,48 @@ import { AppComponent } from './app.component';
import { SidenavService } from './core/service/sidenav.service'; import { SidenavService } from './core/service/sidenav.service';
const routes: Routes = [ const routes: Routes = [
{ {
path: '', path: '',
loadChildren: './degree-planner/degree-planner.module#DegreePlannerModule' loadChildren: './degree-planner/degree-planner.module#DegreePlannerModule',
} },
]; ];
@Component({ @Component({
template: '<div>lazy-loaded</div>' template: '<div>lazy-loaded</div>',
}) })
class LazyComponent { } class LazyComponent {}
@NgModule({ @NgModule({
imports: [RouterModule], imports: [RouterModule],
declarations: [LazyComponent] declarations: [LazyComponent],
}) })
class LazyModule { } class LazyModule {}
describe('AppComponent', () => { describe('AppComponent', () => {
beforeEach(async(() => { beforeEach(async(() => {
TestBed.configureTestingModule({ TestBed.configureTestingModule({
imports: [ CoreModule, SharedModule, RouterModule,BrowserAnimationsModule, RouterTestingModule.withRoutes(routes)], imports: [
schemas: [ NO_ERRORS_SCHEMA ], CoreModule,
providers: [ SidenavService ], SharedModule,
declarations: [ RouterModule,
AppComponent BrowserAnimationsModule,
], RouterTestingModule.withRoutes(routes),
}).compileComponents(); ],
})); schemas: [NO_ERRORS_SCHEMA],
it('should create the app', async(() => { providers: [SidenavService],
const fixture = TestBed.createComponent(AppComponent); declarations: [AppComponent],
const app = fixture.debugElement.componentInstance; }).compileComponents();
expect(app).toBeTruthy(); }));
})); it('should create the app', async(() => {
const fixture = TestBed.createComponent(AppComponent);
const app = fixture.debugElement.componentInstance;
expect(app).toBeTruthy();
}));
it('should render title in a router-outlet tag', async(() => { it('should render title in a router-outlet tag', async(() => {
const fixture = TestBed.createComponent(AppComponent); const fixture = TestBed.createComponent(AppComponent);
fixture.detectChanges(); fixture.detectChanges();
const compiled = fixture.debugElement.nativeElement; const compiled = fixture.debugElement.nativeElement;
expect(compiled.querySelector('router-outlet').textContent).toBeDefined(); expect(compiled.querySelector('router-outlet').textContent).toBeDefined();
})); }));
}); });
import { DegreePlannerApiService } from './degree-planner/services/api.service';
import { FormBuilder, FormGroup } from '@angular/forms';
import { SidenavService } from './core/service/sidenav.service';
import { Component, ViewChild, OnInit } from '@angular/core'; import { Component, ViewChild, OnInit } from '@angular/core';
import { MatSidenav } from '@angular/material'; import { MatSidenav, MatDialog } from '@angular/material';
import { ActivatedRoute } from '@angular/router';
import { Observable } from 'rxjs'; import { Observable } from 'rxjs';
import { debounceTime, switchMap, tap } from 'rxjs/operators'; import {
import { MatDialog } from '@angular/material'; FormBuilder,
import { CourseDetailsDialogComponent } from './degree-planner/dialogs/course-details-dialog/course-details-dialog.component'; FormGroup,
import { ErrorStateMatcher } from '@angular/material/core'; FormControl,
import { FormControl, FormGroupDirective, NgForm, Validators } from '@angular/forms'; Validators,
} from '@angular/forms';
import { DegreePlannerApiService } from '@app/degree-planner/services/api.service';
import { SidenavService } from '@app/core/service/sidenav.service';
import { CourseDetailsDialogComponent } from '@app/degree-planner/dialogs/course-details-dialog/course-details-dialog.component';
@Component({ @Component({
selector: 'cse-root', selector: 'cse-root',
templateUrl: './app.component.html', templateUrl: './app.component.html',
styleUrls: ['./app.component.scss'] styleUrls: ['./app.component.scss'],
}) })
export class AppComponent implements OnInit { export class AppComponent implements OnInit {
coursesData$: any; coursesData$: any;
selectedDegreePlan: number; selectedDegreePlan: number;
courses: Observable<any>; courses: Observable<any>;
coursesForm: FormGroup; coursesForm: FormGroup;
coursesInput = {}; coursesInput = {};
@ViewChild('rightAddCourse') public rightAddCourse: MatSidenav; @ViewChild('rightAddCourse') public rightAddCourse: MatSidenav;
constructor( constructor(
public dialog: MatDialog, public dialog: MatDialog,
private route: ActivatedRoute, private sidenavService: SidenavService,
private sidenavService: SidenavService, private fb: FormBuilder,
private fb: FormBuilder, private api: DegreePlannerApiService,
private api: DegreePlannerApiService) { ) {
this.coursesInput = new FormControl('', [Validators.required]); this.coursesInput = new FormControl('', [Validators.required]);
this.selectedDegreePlan = 520224; this.selectedDegreePlan = 520224;
this.coursesForm = this.fb.group({ this.coursesForm = this.fb.group({
coursesInput: null coursesInput: null,
}); });
// Uncomment following code when working on Course Search form in +Add Course // Uncomment following code when working on Course Search form in +Add Course
// It will need to be modified to fix error: TS2531: Object is possibly 'null' // It will need to be modified to fix error: TS2531: Object is possibly 'null'
// this.courses = this.coursesForm.get('coursesInput').valueChanges // this.courses = this.coursesForm.get('coursesInput').valueChanges
// .pipe( // .pipe(
// debounceTime(300), // debounceTime(300),
// switchMap(value => this.api.autocomplete(value)), // switchMap(value => this.api.autocomplete(value)),
// tap(x => console.log( x)) // tap(x => console.log( x))
// ); // );
} }
ngOnInit() { ngOnInit() {
this.sidenavService.setSidenav(this.rightAddCourse); this.sidenavService.setSidenav(this.rightAddCourse);
} }
openCourseDetailsDialog(course) { openCourseDetailsDialog(course) {
this.api.getCourseDetails(course.payload.subject.subjectCode, course.payload.courseId) this.api
.subscribe(courseDetails => { .getCourseDetails(
const dialogRef = this.dialog.open(CourseDetailsDialogComponent, { course.payload.subject.subjectCode,
data: { courseDetails: courseDetails } course.payload.courseId,
}); )
.subscribe(courseDetails => {
const dialogRef = this.dialog.open(CourseDetailsDialogComponent, {
data: { courseDetails: courseDetails },
}); });
} });
}
} }
document.addEventListener('WebComponentsReady', function() { document.addEventListener('WebComponentsReady', function() {
const customEvent = new CustomEvent('myuw-login', { const customEvent = new CustomEvent('myuw-login', {
detail: { detail: {
person: { person: {
// 'firstName': 'Bucky' // 'firstName': 'Bucky'
} },
} },
}); });
document.dispatchEvent(customEvent); document.dispatchEvent(customEvent);
}); });
...@@ -19,29 +19,26 @@ import { MatAutocompleteModule } from '@angular/material/autocomplete'; ...@@ -19,29 +19,26 @@ import { MatAutocompleteModule } from '@angular/material/autocomplete';
import { CourseDetailsDialogComponent } from './degree-planner/dialogs/course-details-dialog/course-details-dialog.component'; import { CourseDetailsDialogComponent } from './degree-planner/dialogs/course-details-dialog/course-details-dialog.component';
@NgModule({ @NgModule({
imports: [ imports: [
StoreModule.forRoot({ StoreModule.forRoot({
degreePlanner: degreePlannerReducer degreePlanner: degreePlannerReducer,
}), }),
EffectsModule.forRoot([DegreePlanEffects, NoteEffects]), EffectsModule.forRoot([DegreePlanEffects, NoteEffects]),
BrowserModule, BrowserModule,
BrowserAnimationsModule, BrowserAnimationsModule,
HttpClientModule, HttpClientModule,
CoreModule, CoreModule,
SharedModule, SharedModule,
AppRoutingModule, AppRoutingModule,
MatAutocompleteModule, MatAutocompleteModule,
StoreDevtoolsModule.instrument({ StoreDevtoolsModule.instrument({
maxAge: 5 maxAge: 5,
}), }),
], ],
declarations: [ declarations: [AppComponent, HeaderComponent],
AppComponent, entryComponents: [CourseDetailsDialogComponent],
HeaderComponent providers: [SidenavService],
], bootstrap: [AppComponent],
entryComponents: [CourseDetailsDialogComponent], schemas: [CUSTOM_ELEMENTS_SCHEMA],
providers: [ SidenavService ],
bootstrap: [ AppComponent ],
schemas: [ CUSTOM_ELEMENTS_SCHEMA ]
}) })
export class AppModule {} export class AppModule {}
#plans-container { #plans-container {
height: calc(100vh - 112px); height: calc(100vh - 112px);
} }
mat-sidenav { mat-sidenav {
width: 340px; width: 340px;
} }
#menu-toggle-btn { #menu-toggle-btn {
position: absolute; position: absolute;
right: 0px; right: 0px;
top: 20px; top: 20px;
border-radius: 50% 0 0 50%; border-radius: 50% 0 0 50%;
padding: 8px; padding: 8px;
background-color: #F0F0F0; background-color: #f0f0f0;
} }
.degree-plan-selector { .degree-plan-selector {
...@@ -40,11 +40,11 @@ mat-sidenav { ...@@ -40,11 +40,11 @@ mat-sidenav {
} }
@media screen and (max-width: 600px) { @media screen and (max-width: 600px) {
#menu-toggle-btn { #menu-toggle-btn {
position: relative; position: relative;
top: 0; top: 0;
right: 0; right: 0;
border-radius: 50%; border-radius: 50%;
padding: 12px; padding: 12px;
} }
} }
\ No newline at end of file
...@@ -11,27 +11,32 @@ import { DegreePlannerComponent } from './degree-planner.component'; ...@@ -11,27 +11,32 @@ import { DegreePlannerComponent } from './degree-planner.component';
import { HttpClientModule } from '@angular/common/http'; import { HttpClientModule } from '@angular/common/http';
import { MAT_DIALOG_DATA } from '@angular/material'; import { MAT_DIALOG_DATA } from '@angular/material';
describe('DegreePlannerComponent', () => { describe('DegreePlannerComponent', () => {
let component: DegreePlannerComponent; let component: DegreePlannerComponent;
let fixture: ComponentFixture<DegreePlannerComponent>; let fixture: ComponentFixture<DegreePlannerComponent>;
beforeEach(async(() => { beforeEach(async(() => {
TestBed.configureTestingModule({ TestBed.configureTestingModule({
imports: [RouterTestingModule, HttpClientModule, CoreModule, SharedModule, BrowserAnimationsModule], imports: [
declarations: [DegreePlannerComponent], RouterTestingModule,
providers: [SidenavService, { provide: MAT_DIALOG_DATA }], HttpClientModule,
schemas: [NO_ERRORS_SCHEMA] CoreModule,
}).compileComponents(); SharedModule,
})); BrowserAnimationsModule,
],
declarations: [DegreePlannerComponent],
providers: [SidenavService, { provide: MAT_DIALOG_DATA }],
schemas: [NO_ERRORS_SCHEMA],
}).compileComponents();
}));
beforeEach(() => { beforeEach(() => {
fixture = TestBed.createComponent(DegreePlannerComponent); fixture = TestBed.createComponent(DegreePlannerComponent);
component = fixture.componentInstance; component = fixture.componentInstance;
fixture.detectChanges(); fixture.detectChanges();
}); });
it('should create', () => { it('should create', () => {
expect(component).toBeTruthy(); expect(component).toBeTruthy();
}); });
}); });
#note-content { #note-content {
margin-top: 1.8em; margin-top: 1.8em;
mat-form-field { mat-form-field {
display: block; display: block;
} }
} }
#delete-note-section { #delete-note-section {
border-top: 1px solid #b7b7b7; border-top: 1px solid #b7b7b7;
padding-top: 1em; padding-top: 1em;
} }
\ No newline at end of file
...@@ -5,28 +5,40 @@ import { SharedModule } from '@app/shared/shared.module'; ...@@ -5,28 +5,40 @@ import { SharedModule } from '@app/shared/shared.module';
import { CoreModule } from '@app/core/core.module'; import { CoreModule } from '@app/core/core.module';
import { HttpClientModule } from '@angular/common/http'; import { HttpClientModule } from '@angular/common/http';
import { NotesDialogComponent } from './notes-dialog.component'; import { NotesDialogComponent } from './notes-dialog.component';
import { MAT_DIALOG_DATA, MatDialogRef, MatInputModule } from '@angular/material'; import {
MAT_DIALOG_DATA,
MatDialogRef,
MatInputModule,
} from '@angular/material';
describe('NotesDialogComponent', () => { describe('NotesDialogComponent', () => {
let component: NotesDialogComponent; let component: NotesDialogComponent;
let fixture: ComponentFixture<NotesDialogComponent>; let fixture: ComponentFixture<NotesDialogComponent>;
beforeEach(async(() => { beforeEach(async(() => {
TestBed.configureTestingModule({ TestBed.configureTestingModule({
imports: [HttpClientModule, CoreModule, SharedModule, MatInputModule, BrowserAnimationsModule], imports: [
providers: [{ provide: MAT_DIALOG_DATA, useValue: {} }, { provide: MatDialogRef, useValue: {} }], HttpClientModule,
declarations: [ NotesDialogComponent ] CoreModule,
}) SharedModule,
.compileComponents(); MatInputModule,
})); BrowserAnimationsModule,
],
providers: [
{ provide: MAT_DIALOG_DATA, useValue: {} },
{ provide: MatDialogRef, useValue: {} },
],
declarations: [NotesDialogComponent],
}).compileComponents();
}));
beforeEach(() => { beforeEach(() => {
fixture = TestBed.createComponent(NotesDialogComponent); fixture = TestBed.createComponent(NotesDialogComponent);
component = fixture.componentInstance; component = fixture.componentInstance;
fixture.detectChanges(); fixture.detectChanges();
}); });
it('should create', () => { it('should create', () => {
expect(component).toBeTruthy(); expect(component).toBeTruthy();
}); });
}); });
.dialog-text {
.dialog-text { color: #7e7e7e;
color: #7e7e7e; font-size: 16px;
font-size: 16px; margin-top: 1.2em;
margin-top: 1.2em; }
}
\ No newline at end of file
...@@ -3,23 +3,22 @@ import { async, ComponentFixture, TestBed } from '@angular/core/testing'; ...@@ -3,23 +3,22 @@ import { async, ComponentFixture, TestBed } from '@angular/core/testing';
import { RemoveCourseConfirmDialogComponent } from './remove-course-confirm-dialog.component'; import { RemoveCourseConfirmDialogComponent } from './remove-course-confirm-dialog.component';
describe('RemoveCourseConfirmDialogComponent', () => { describe('RemoveCourseConfirmDialogComponent', () => {
let component: RemoveCourseConfirmDialogComponent; let component: RemoveCourseConfirmDialogComponent;
let fixture: ComponentFixture<RemoveCourseConfirmDialogComponent>; let fixture: ComponentFixture<RemoveCourseConfirmDialogComponent>;
beforeEach(async(() => { beforeEach(async(() => {
TestBed.configureTestingModule({ TestBed.configureTestingModule({
declarations: [ RemoveCourseConfirmDialogComponent ] declarations: [RemoveCourseConfirmDialogComponent],
}) }).compileComponents();
.compileComponents(); }));
}));
beforeEach(() => { beforeEach(() => {
fixture = TestBed.createComponent(RemoveCourseConfirmDialogComponent); fixture = TestBed.createComponent(RemoveCourseConfirmDialogComponent);
component = fixture.componentInstance; component = fixture.componentInstance;
fixture.detectChanges(); fixture.detectChanges();
}); });
it('should create', () => { it('should create', () => {
expect(component).toBeTruthy(); expect(component).toBeTruthy();
}); });
}); });
#favorite-container { #favorite-container {
padding: 20px 0 0px 0; padding: 20px 0 0px 0;
margin-top: 0px; margin-top: 0px;
border-top: 1px solid rgba(0, 0, 0, 0.54); border-top: 1px solid rgba(0, 0, 0, 0.54);
} }
.cdk-drop-list-dragging { .cdk-drop-list-dragging {
position: relative; position: relative;
&:after { &:after {
content: 'Save course for later'; content: 'Save course for later';
position: absolute; position: absolute;
top: 0; top: 0;
right: 0; right: 0;
bottom: 0; bottom: 0;
left: 0; left: 0;
background-color:white; background-color: white;
border: dashed 2px #2879A8; border: dashed 2px #2879a8;
color: #2879A8; color: #2879a8;
font-weight: bold; font-weight: bold;
text-transform: uppercase; text-transform: uppercase;
border-radius: 5px; border-radius: 5px;
display: flex; display: flex;
align-items: center; align-items: center;
justify-content: center; justify-content: center;
} }
} }
\ No newline at end of file
...@@ -8,24 +8,24 @@ import { SavedForLaterContainerComponent } from './favorites-container.component ...@@ -8,24 +8,24 @@ import { SavedForLaterContainerComponent } from './favorites-container.component
import { CourseItemComponent } from '../shared/course-item/course-item.component'; import { CourseItemComponent } from '../shared/course-item/course-item.component';
describe('SavedForLaterContainerComponent', () => { describe('SavedForLaterContainerComponent', () => {
let component: SavedForLaterContainerComponent; let component: SavedForLaterContainerComponent;
let fixture: ComponentFixture<SavedForLaterContainerComponent>; let fixture: ComponentFixture<SavedForLaterContainerComponent>;
beforeEach(async(() => { beforeEach(async(() => {
TestBed.configureTestingModule({ TestBed.configureTestingModule({
imports: [HttpClientModule, CoreModule, SharedModule, DragDropModule], imports: [HttpClientModule, CoreModule, SharedModule, DragDropModule],
providers: [], providers: [],
declarations: [SavedForLaterContainerComponent, CourseItemComponent] declarations: [SavedForLaterContainerComponent, CourseItemComponent],
}).compileComponents(); }).compileComponents();
})); }));
beforeEach(() => { beforeEach(() => {
fixture = TestBed.createComponent(SavedForLaterContainerComponent); fixture = TestBed.createComponent(SavedForLaterContainerComponent);
component = fixture.componentInstance; component = fixture.componentInstance;
fixture.detectChanges(); fixture.detectChanges();
}); });
it('should create', () => { it('should create', () => {
expect(component).toBeTruthy(); expect(component).toBeTruthy();
}); });
}); });
.course-item { .course-item {
position: relative; position: relative;
display: block; display: block;
width: 100%; width: 100%;
padding: 8px; padding: 8px;
box-sizing: border-box; box-sizing: border-box;
border: solid 1px #FDFDFD; border: solid 1px #fdfdfd;
background-color: #FDFDFD; background-color: #fdfdfd;
border-radius: 5px; border-radius: 5px;
font-family: "Helvetica Neue", Georgia, Helvetica, Arial, sans-serif; font-family: 'Helvetica Neue', Georgia, Helvetica, Arial, sans-serif;
font-size: 14px; font-size: 14px;
margin-bottom: 8px; margin-bottom: 8px;
box-shadow: 0 1px 3px 1px rgba(0, 0, 0, .1); box-shadow: 0 1px 3px 1px rgba(0, 0, 0, 0.1);
transition: border-color .25s ease, box-shadow .25s ease; transition: border-color 0.25s ease, box-shadow 0.25s ease;
cursor: pointer; cursor: pointer;
&:hover { &:hover {
border-color: #0679A8; border-color: #0679a8;
box-shadow: 0 1px 5px 1px rgba(0, 0, 0, .25); box-shadow: 0 1px 5px 1px rgba(0, 0, 0, 0.25);
} }
&.disabled { &.disabled {
background-color: #dee1e2; background-color: #dee1e2;
border-color: #dee1e2; border-color: #dee1e2;
box-shadow: none; box-shadow: none;
.course-credits, .course-credits,
.course-number, .course-number,
.course-title { .course-title {
font-weight: bold; font-weight: bold;
}
} }
}
p { p {
margin: 0; margin: 0;
padding: 0; padding: 0;
} }
.mat-icon { .mat-icon {
border-radius: 50%; border-radius: 50%;
text-align: center; text-align: center;
font-size: 18px; font-size: 18px;
line-height: 1.4; line-height: 1.4;
&:hover, &:focus { &:hover,
background: #dadee0; &:focus {
} background: #dadee0;
} }
}
} }
.course-number, .course-number,
.course-credits { .course-credits {
display: inline-block; display: inline-block;
} }
.course-number { .course-number {
font-weight: bold; font-weight: bold;
font-size: 16px; font-size: 16px;
display: inline-block; display: inline-block;
} }
.icon-number-wrapper { .icon-number-wrapper {
display: flex; display: flex;
align-items: center; align-items: center;
} }
.not-offered { .not-offered {
.course-number, .course-number,
.course-credits, .course-credits,
.course-title { .course-title {
text-decoration: line-through; text-decoration: line-through;
opacity: .5; opacity: 0.5;
} }
} }
button.mat-menu-item { button.mat-menu-item {
text-transform: none !important; text-transform: none !important;
} }
@media screen and (max-width: 957px) { @media screen and (max-width: 957px) {
.mat-icon { .mat-icon {
padding: 0.5em; padding: 0.5em;
margin-bottom: 0.5em; margin-bottom: 0.5em;
} }
} }
...@@ -10,55 +10,60 @@ import { CoreModule } from '@app/core/core.module'; ...@@ -10,55 +10,60 @@ import { CoreModule } from '@app/core/core.module';
import { CourseItemComponent } from './course-item.component'; import { CourseItemComponent } from './course-item.component';
describe('CourseItemComponent', () => { describe('CourseItemComponent', () => {
let component: CourseItemComponent; let component: CourseItemComponent;
let fixture: ComponentFixture<CourseItemComponent>; let fixture: ComponentFixture<CourseItemComponent>;
beforeEach(async(() => { beforeEach(async(() => {
TestBed.configureTestingModule({ TestBed.configureTestingModule({
imports: [RouterTestingModule, BrowserAnimationsModule, CoreModule, SharedModule], imports: [
declarations: [CourseItemComponent], RouterTestingModule,
schemas: [NO_ERRORS_SCHEMA] BrowserAnimationsModule,
}) CoreModule,
.compileComponents(); SharedModule,
})); ],
declarations: [CourseItemComponent],
schemas: [NO_ERRORS_SCHEMA],
}).compileComponents();
}));
beforeEach(() => { beforeEach(() => {
fixture = TestBed.createComponent(CourseItemComponent); fixture = TestBed.createComponent(CourseItemComponent);
component = fixture.componentInstance; component = fixture.componentInstance;
const course: Course = { const course: Course = {
'id': null, id: null,
'courseId': '022973', courseId: '022973',
'termCode': null, termCode: null,
'topicId': 0, topicId: 0,
'title': 'A Wisconsin Experience Seminar', title: 'A Wisconsin Experience Seminar',
'subjectCode': '270', subjectCode: '270',
'catalogNumber': '125', catalogNumber: '125',
'credits': 0, credits: 0,
'creditMin': 0, creditMin: 0,
'creditMax': 0, creditMax: 0,
'grade': 'A', subject: '',
'classNumber': '53611', grade: 'A',
'courseOrder': 0, classNumber: '53611',
'honors': null, courseOrder: 0,
'waitlist': null, honors: 'N',
'relatedClassNumber1': null, waitlist: 'N',
'relatedClassNumber2': null, relatedClassNumber1: null,
'classPermissionNumber': null, relatedClassNumber2: null,
'sessionCode': null, classPermissionNumber: null,
'validationResults': [], sessionCode: null,
'enrollmentResults': [], validationResults: [],
'pendingEnrollments': [], enrollmentResults: [],
'details': null, pendingEnrollments: [],
'classMeetings': null, details: null,
'enrollmentOptions': null, classMeetings: null,
'packageEnrollmentStatus': null, enrollmentOptions: null,
'creditRange': null packageEnrollmentStatus: null,
}; creditRange: null,
component.course = course; };
fixture.detectChanges(); component.course = course;
}); fixture.detectChanges();
});
it('should create', () => { it('should create', () => {
expect(component).toBeTruthy(); expect(component).toBeTruthy();
}); });
}); });
...@@ -2,53 +2,53 @@ ...@@ -2,53 +2,53 @@
@import 'assets/material-theme.scss'; @import 'assets/material-theme.scss';
#sidenav-container { #sidenav-container {
height: 100vh; height: 100vh;
.mat-expansion-panel { .mat-expansion-panel {
border-radius: 0px; border-radius: 0px;
overflow: visible; overflow: visible;
} }
h3 { h3 {
font-weight: 400; font-weight: 400;
} }
} }
#menu-items-container { #menu-items-container {
div { div {
border-top: 1px solid rgba(0, 0, 0, 0.54); border-top: 1px solid rgba(0, 0, 0, 0.54);
padding-top: 20px; padding-top: 20px;
} }
} }
.sidenav-link-btn { .sidenav-link-btn {
width: 90%; width: 90%;
text-align: left; text-align: left;
border: 1px solid #b7b7b7; border: 1px solid #b7b7b7;
border-radius: 4px; border-radius: 4px;
padding: 1px 10px; padding: 1px 10px;
text-transform: uppercase; text-transform: uppercase;
color: map-get($uw-primary, 500); color: map-get($uw-primary, 500);
font-weight: 500; font-weight: 500;
margin-bottom: 6px !important; margin-bottom: 6px !important;
.material-icons { .material-icons {
padding-right: 8px; padding-right: 8px;
} }
} }
#course-key-list { #course-key-list {
list-style-type: none; list-style-type: none;
padding: 20px 0 0px 0; padding: 20px 0 0px 0;
margin-top: 0px; margin-top: 0px;
border-top: 1px solid rgba(0, 0, 0, 0.54); border-top: 1px solid rgba(0, 0, 0, 0.54);
li { li {
position: relative; position: relative;
display: flex; display: flex;
align-items: center; align-items: center;
padding-bottom: 12px; padding-bottom: 12px;
padding-left: 1em; padding-left: 1em;
.material-icons { .material-icons {
margin-right: 8px; margin-right: 8px;
font-size: 16px; font-size: 16px;
}
} }
} }
\ No newline at end of file }
...@@ -9,25 +9,29 @@ import { CoreModule } from '@app/core/core.module'; ...@@ -9,25 +9,29 @@ import { CoreModule } from '@app/core/core.module';
import { SidenavMenuItemComponent } from './sidenav-menu-item.component'; import { SidenavMenuItemComponent } from './sidenav-menu-item.component';
describe('SidenavMenuItemComponent', () => { describe('SidenavMenuItemComponent', () => {
let component: SidenavMenuItemComponent; let component: SidenavMenuItemComponent;
let fixture: ComponentFixture<SidenavMenuItemComponent>; let fixture: ComponentFixture<SidenavMenuItemComponent>;
beforeEach(async(() => { beforeEach(async(() => {
TestBed.configureTestingModule({ TestBed.configureTestingModule({
imports: [RouterTestingModule, BrowserAnimationsModule, CoreModule, SharedModule], imports: [
declarations: [SidenavMenuItemComponent], RouterTestingModule,
schemas: [NO_ERRORS_SCHEMA] BrowserAnimationsModule,
}) CoreModule,
.compileComponents(); SharedModule,
})); ],
declarations: [SidenavMenuItemComponent],
schemas: [NO_ERRORS_SCHEMA],
}).compileComponents();
}));
beforeEach(() => { beforeEach(() => {
fixture = TestBed.createComponent(SidenavMenuItemComponent); fixture = TestBed.createComponent(SidenavMenuItemComponent);
component = fixture.componentInstance; component = fixture.componentInstance;
fixture.detectChanges(); fixture.detectChanges();
}); });
it('should create', () => { it('should create', () => {
expect(component).toBeTruthy(); expect(component).toBeTruthy();
}); });
}); });
...@@ -13,38 +13,44 @@ import { PlannedTerm } from '@app/core/models/planned-term'; ...@@ -13,38 +13,44 @@ import { PlannedTerm } from '@app/core/models/planned-term';
import { SidenavService } from '@app/core/service/sidenav.service'; import { SidenavService } from '@app/core/service/sidenav.service';
describe('TermContainerComponent', () => { describe('TermContainerComponent', () => {
let termComponent: TermContainerComponent; let termComponent: TermContainerComponent;
let fixture: ComponentFixture<TermContainerComponent>; let fixture: ComponentFixture<TermContainerComponent>;
beforeEach(async(() => { beforeEach(async(() => {
TestBed.configureTestingModule({ TestBed.configureTestingModule({
imports: [RouterTestingModule, HttpClientModule, CoreModule, SharedModule], imports: [
declarations: [TermContainerComponent], RouterTestingModule,
providers: [SidenavService], HttpClientModule,
schemas: [NO_ERRORS_SCHEMA] CoreModule,
}) SharedModule,
.compileComponents(); ],
})); declarations: [TermContainerComponent],
providers: [SidenavService],
schemas: [NO_ERRORS_SCHEMA],
}).compileComponents();
}));
beforeEach(() => { beforeEach(() => {
fixture = TestBed.createComponent(TermContainerComponent); fixture = TestBed.createComponent(TermContainerComponent);
termComponent = fixture.componentInstance; termComponent = fixture.componentInstance;
const term: PlannedTerm = { const term: PlannedTerm = {
termCode: '1194', termCode: '1194',
note: undefined, note: undefined,
courses: [] courses: [],
}; };
termComponent.term = term; termComponent.term = term;
const notes: Note[] = [{ const notes: Note[] = [
id: 323, {
termCode: '1174', id: 323,
note: 'teset' termCode: '1174',
}]; note: 'teset',
},
];
fixture.detectChanges(); fixture.detectChanges();
}); });
it('should create', () => { it('should create', () => {
expect(termComponent).toBeTruthy(); expect(termComponent).toBeTruthy();
}); });
}); });
export const environment = { export const environment = {
production: true, production: true,
version: '0.0.1' version: '0.0.1',
}; };
...@@ -3,8 +3,8 @@ ...@@ -3,8 +3,8 @@
// The list of file replacements can be found in `angular.json`. // The list of file replacements can be found in `angular.json`.
export const environment = { export const environment = {
production: false, production: false,
version: 'DEV' version: 'DEV',
}; };
/* /*
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment