From ffe6553990a7350b08ceddc3a80d702e81746542 Mon Sep 17 00:00:00 2001 From: Marcel Haag Date: Sun, 14 Feb 2021 20:00:38 +0100 Subject: [PATCH] Added Header, Project Model, Service, Controller and Testdata --- security-c4po-angular/angular.json | 2 + .../src/app/app-routing.module.ts | 9 +- .../src/app/app.component.html | 21 ++-- .../src/app/app.component.scss | 15 +++ .../src/app/app.component.spec.ts | 2 + .../src/app/app.component.ts | 17 +-- security-c4po-angular/src/app/app.module.ts | 8 +- .../app/dashboard/dashboard-routing.module.ts | 16 +++ .../app/dashboard/dashboard.component.html | 1 + .../app/dashboard/dashboard.component.scss | 0 .../app/dashboard/dashboard.component.spec.ts | 25 ++++ .../src/app/dashboard/dashboard.component.ts | 17 +++ .../src/app/dashboard/dashboard.module.ts | 17 +++ .../src/app/dashboard/index.ts | 2 + .../src/app/header/header.component.html | 4 + .../src/app/header/header.component.scss | 9 ++ .../src/app/header/header.component.spec.ts | 25 ++++ .../src/app/header/header.component.ts | 14 +++ .../src/app/header/header.module.ts | 16 +++ .../src/app/home/home.component.html | 17 ++- .../src/app/home/home.component.spec.ts | 11 +- .../src/app/home/home.component.ts | 27 ++++- .../src/app/home/home.module.ts | 15 ++- .../src/app/login/login.component.html | 6 - .../src/assets/@theme/styles/_variables.scss | 1 + .../src/assets/@theme/styles/styles.scss | 1 + .../src/environments/environment.ts | 4 +- security-c4po-angular/src/favicon-c4po.png | Bin 0 -> 1137 bytes security-c4po-angular/src/favicon.ico | Bin 948 -> 560526 bytes security-c4po-angular/src/index.html | 2 +- .../src/shared/guards/auth-guard.service.ts | 1 + .../src/shared/models/project.model.ts | 25 ++++ .../shared/services/project.service.spec.ts | 24 ++++ .../src/shared/services/project.service.ts | 20 ++++ security-c4po-api/build.gradle.kts | 62 ++++++++-- .../security-c4po-api.postman_collection.json | 54 +++++++++ .../src/main/asciidoc/SecurityC4PO.adoc | 50 ++++++++ .../com/securityc4po/api/v1/BaseEntity.kt | 6 + .../com/securityc4po/api/v1/ResponseBody.kt | 3 + .../api/v1}/SecurityC4POApplication.kt | 2 +- .../api/v1/configuration/SpotBugsConstants.kt | 19 +++ .../api/v1/extensions/InlineFuntions.kt | 5 + .../securityc4po/api/v1/project/Project.kt | 47 ++++++++ .../api/v1/project/ProjectController.kt | 28 +++++ .../api/v1/project/ProjectEntity.kt | 11 ++ .../api/v1/project/ProjectService.kt | 40 +++++++ .../com/securityc4po/api/v1/user/User.kt | 15 +++ .../securityc4po/api/v1/user/UserEntity.kt | 11 ++ .../src/main/resources/application.properties | 16 ++- .../src/main/resources/mocks/Allsafe.png | Bin 0 -> 4033 bytes .../src/main/resources/mocks/E_Corp.png | Bin 0 -> 97837 bytes .../src/main/resources/mocks/projects.json | 18 +++ .../src/main/resources/mocks/user.json | 8 ++ .../BaseContainerizedTest.kt | 9 ++ .../BaseDocumentationIntTest.kt | 36 ++++++ .../com.securityc4po.api.v1/BaseIntTest.kt | 11 ++ .../SecurityC4POApplicationTests.kt | 2 +- .../ProjectControllerDocumentationTest.kt | 109 ++++++++++++++++++ .../project/ProjectControllerIntTest.kt | 106 +++++++++++++++++ .../project/ProjectServiceTest.kt | 27 +++++ 60 files changed, 1027 insertions(+), 42 deletions(-) create mode 100644 security-c4po-angular/src/app/dashboard/dashboard-routing.module.ts create mode 100644 security-c4po-angular/src/app/dashboard/dashboard.component.html create mode 100644 security-c4po-angular/src/app/dashboard/dashboard.component.scss create mode 100644 security-c4po-angular/src/app/dashboard/dashboard.component.spec.ts create mode 100644 security-c4po-angular/src/app/dashboard/dashboard.component.ts create mode 100644 security-c4po-angular/src/app/dashboard/dashboard.module.ts create mode 100644 security-c4po-angular/src/app/dashboard/index.ts create mode 100644 security-c4po-angular/src/app/header/header.component.html create mode 100644 security-c4po-angular/src/app/header/header.component.scss create mode 100644 security-c4po-angular/src/app/header/header.component.spec.ts create mode 100644 security-c4po-angular/src/app/header/header.component.ts create mode 100644 security-c4po-angular/src/app/header/header.module.ts create mode 100644 security-c4po-angular/src/assets/@theme/styles/_variables.scss create mode 100644 security-c4po-angular/src/favicon-c4po.png create mode 100644 security-c4po-angular/src/shared/models/project.model.ts create mode 100644 security-c4po-angular/src/shared/services/project.service.spec.ts create mode 100644 security-c4po-angular/src/shared/services/project.service.ts create mode 100644 security-c4po-api/security-c4po-api.postman_collection.json create mode 100644 security-c4po-api/src/main/asciidoc/SecurityC4PO.adoc create mode 100644 security-c4po-api/src/main/kotlin/com/securityc4po/api/v1/BaseEntity.kt create mode 100644 security-c4po-api/src/main/kotlin/com/securityc4po/api/v1/ResponseBody.kt rename security-c4po-api/src/main/kotlin/{com.securityc4po.api => com/securityc4po/api/v1}/SecurityC4POApplication.kt (88%) create mode 100644 security-c4po-api/src/main/kotlin/com/securityc4po/api/v1/configuration/SpotBugsConstants.kt create mode 100644 security-c4po-api/src/main/kotlin/com/securityc4po/api/v1/extensions/InlineFuntions.kt create mode 100644 security-c4po-api/src/main/kotlin/com/securityc4po/api/v1/project/Project.kt create mode 100644 security-c4po-api/src/main/kotlin/com/securityc4po/api/v1/project/ProjectController.kt create mode 100644 security-c4po-api/src/main/kotlin/com/securityc4po/api/v1/project/ProjectEntity.kt create mode 100644 security-c4po-api/src/main/kotlin/com/securityc4po/api/v1/project/ProjectService.kt create mode 100644 security-c4po-api/src/main/kotlin/com/securityc4po/api/v1/user/User.kt create mode 100644 security-c4po-api/src/main/kotlin/com/securityc4po/api/v1/user/UserEntity.kt create mode 100644 security-c4po-api/src/main/resources/mocks/Allsafe.png create mode 100644 security-c4po-api/src/main/resources/mocks/E_Corp.png create mode 100644 security-c4po-api/src/main/resources/mocks/projects.json create mode 100644 security-c4po-api/src/main/resources/mocks/user.json create mode 100644 security-c4po-api/src/test/kotlin/com.securityc4po.api.v1/BaseContainerizedTest.kt create mode 100644 security-c4po-api/src/test/kotlin/com.securityc4po.api.v1/BaseDocumentationIntTest.kt create mode 100644 security-c4po-api/src/test/kotlin/com.securityc4po.api.v1/BaseIntTest.kt rename security-c4po-api/src/test/kotlin/{com.securityc4po.api => com.securityc4po.api.v1}/SecurityC4POApplicationTests.kt (85%) create mode 100644 security-c4po-api/src/test/kotlin/com.securityc4po.api.v1/project/ProjectControllerDocumentationTest.kt create mode 100644 security-c4po-api/src/test/kotlin/com.securityc4po.api.v1/project/ProjectControllerIntTest.kt create mode 100644 security-c4po-api/src/test/kotlin/com.securityc4po.api.v1/project/ProjectServiceTest.kt diff --git a/security-c4po-angular/angular.json b/security-c4po-angular/angular.json index 5ac69c9..4368127 100644 --- a/security-c4po-angular/angular.json +++ b/security-c4po-angular/angular.json @@ -25,6 +25,7 @@ "aot": true, "assets": [ "src/favicon.ico", + "src/favicon-c4po.ico", "src/assets" ], "styles": [ @@ -96,6 +97,7 @@ "tsConfig": "tsconfig.spec.json", "assets": [ "src/favicon.ico", + "src/favicon-c4po.ico", "src/assets" ], "styles": [ diff --git a/security-c4po-angular/src/app/app-routing.module.ts b/security-c4po-angular/src/app/app-routing.module.ts index 17183b6..0410dfc 100644 --- a/security-c4po-angular/src/app/app-routing.module.ts +++ b/security-c4po-angular/src/app/app-routing.module.ts @@ -5,10 +5,17 @@ import {AuthGuardService} from '../shared/guards/auth-guard.service'; import {LoginGuardService} from '../shared/guards/login-guard.service'; export const START_PAGE = 'home'; +export const FALLBACK_PAGE = 'home'; const routes: Routes = [ { - path: 'home', component: HomeComponent, + path: 'home', + component: HomeComponent, + canActivate: [AuthGuardService] + }, + { + path: 'dashboard', + loadChildren: () => import('./dashboard').then(mod => mod.DashboardModule), canActivate: [AuthGuardService] }, { diff --git a/security-c4po-angular/src/app/app.component.html b/security-c4po-angular/src/app/app.component.html index 8e0bb2b..36488fc 100644 --- a/security-c4po-angular/src/app/app.component.html +++ b/security-c4po-angular/src/app/app.component.html @@ -1,9 +1,14 @@ -
-
- - + + + + + + +
+
- - -
-
+
+
+ + + diff --git a/security-c4po-angular/src/app/app.component.scss b/security-c4po-angular/src/app/app.component.scss index e69de29..2048294 100644 --- a/security-c4po-angular/src/app/app.component.scss +++ b/security-c4po-angular/src/app/app.component.scss @@ -0,0 +1,15 @@ +@import "../assets/@theme/styles/_variables.scss"; + +.content-container { + width: 90vw; + height: calc(90vh - #{$header-height}); + + .scrollable-content { + width: 100%; + max-width: 100vw; + height: 100%; + max-height: calc(100vh - #{$header-height}); + + overflow: auto; + } +} diff --git a/security-c4po-angular/src/app/app.component.spec.ts b/security-c4po-angular/src/app/app.component.spec.ts index 606be33..ae1f120 100644 --- a/security-c4po-angular/src/app/app.component.spec.ts +++ b/security-c4po-angular/src/app/app.component.spec.ts @@ -10,6 +10,7 @@ import {ThemeModule} from '../assets/@theme/theme.module'; import {HttpClientTestingModule} from '@angular/common/http/testing'; import {SessionState} from '../shared/stores/session-state/session-state'; import {NgxsModule} from '@ngxs/store'; +import {HeaderModule} from './header/header.module'; describe('AppComponent', () => { beforeEach(async () => { @@ -27,6 +28,7 @@ describe('AppComponent', () => { }), NbEvaIconsModule, ThemeModule, + HeaderModule, NgxsModule.forRoot([SessionState]), HttpClientTestingModule ], diff --git a/security-c4po-angular/src/app/app.component.ts b/security-c4po-angular/src/app/app.component.ts index faf8047..0bc9631 100644 --- a/security-c4po-angular/src/app/app.component.ts +++ b/security-c4po-angular/src/app/app.component.ts @@ -4,16 +4,18 @@ import localeDe from '@angular/common/locales/de'; import {registerLocale} from 'i18n-iso-countries'; import {registerLocaleData} from '@angular/common'; import {Store} from '@ngxs/store'; -import {BehaviorSubject, of, Subscription} from 'rxjs'; -import {SessionState} from '../shared/stores/session-state/session-state'; -import { untilDestroyed } from 'ngx-take-until-destroy'; +import {BehaviorSubject, Subscription} from 'rxjs'; +import {SessionState, SessionStateModel} from '../shared/stores/session-state/session-state'; +import {untilDestroyed} from 'ngx-take-until-destroy'; +import {isNotNullOrUndefined} from 'codelyzer/util/isNotNullOrUndefined'; +import {filter} from 'rxjs/operators'; @Component({ selector: 'app-root', templateUrl: './app.component.html', styleUrls: ['./app.component.scss'] }) -export class AppComponent implements OnInit, OnDestroy{ +export class AppComponent implements OnInit, OnDestroy { title = 'security-c4po-angular'; $authState: BehaviorSubject = new BehaviorSubject(false); @@ -27,11 +29,12 @@ export class AppComponent implements OnInit, OnDestroy{ ngOnInit(): void { // authState change handling - of(this.store.selectSnapshot(SessionState.isAuthenticated)).pipe( + this.authStateSubscription = this.store.select(SessionState).pipe( + filter(isNotNullOrUndefined), untilDestroyed(this) ).subscribe({ - next: (authState: boolean) => { - this.$authState.next(authState); + next: (state: SessionStateModel) => { + this.$authState.next(state.isAuthenticated); }, error: (err) => console.error('auth error:', err) }); diff --git a/security-c4po-angular/src/app/app.module.ts b/security-c4po-angular/src/app/app.module.ts index 37f1087..826ab11 100644 --- a/security-c4po-angular/src/app/app.module.ts +++ b/security-c4po-angular/src/app/app.module.ts @@ -6,7 +6,7 @@ import {BrowserAnimationsModule} from '@angular/platform-browser/animations'; import { NbLayoutModule, NbToastrModule, - NbIconModule, + NbIconModule, NbCardModule, NbButtonModule, } from '@nebular/theme'; import {NbEvaIconsModule} from '@nebular/eva-icons'; import {TranslateLoader, TranslateModule} from '@ngx-translate/core'; @@ -21,6 +21,8 @@ import {SessionState} from '../shared/stores/session-state/session-state'; import {environment} from '../environments/environment'; import {NotificationService} from '../shared/services/notification.service'; import {ThemeModule} from '@assets/@theme/theme.module'; +import {HeaderModule} from './header/header.module'; +import {HomeModule} from './home/home.module'; @NgModule({ declarations: [ @@ -35,7 +37,9 @@ import {ThemeModule} from '@assets/@theme/theme.module'; BrowserAnimationsModule, ThemeModule.forRoot(), NbLayoutModule, + NbCardModule, NbIconModule, + NbButtonModule, NbEvaIconsModule, NgxsModule.forRoot([SessionState], {developmentMode: !environment.production}), HttpClientModule, @@ -46,6 +50,8 @@ import {ThemeModule} from '@assets/@theme/theme.module'; deps: [HttpClient] } }), + HeaderModule, + HomeModule ], providers: [ HttpClient, diff --git a/security-c4po-angular/src/app/dashboard/dashboard-routing.module.ts b/security-c4po-angular/src/app/dashboard/dashboard-routing.module.ts new file mode 100644 index 0000000..cffddf6 --- /dev/null +++ b/security-c4po-angular/src/app/dashboard/dashboard-routing.module.ts @@ -0,0 +1,16 @@ +import { NgModule } from '@angular/core'; +import {RouterModule, Routes} from '@angular/router'; +import {DashboardComponent} from './dashboard.component'; + +const routes: Routes = [ + { + path: '', + component: DashboardComponent + } +]; + +@NgModule({ + imports: [RouterModule.forChild(routes)], + exports: [RouterModule] +}) +export class DashboardRoutingModule { } diff --git a/security-c4po-angular/src/app/dashboard/dashboard.component.html b/security-c4po-angular/src/app/dashboard/dashboard.component.html new file mode 100644 index 0000000..9c5fce9 --- /dev/null +++ b/security-c4po-angular/src/app/dashboard/dashboard.component.html @@ -0,0 +1 @@ +

dashboard works!

diff --git a/security-c4po-angular/src/app/dashboard/dashboard.component.scss b/security-c4po-angular/src/app/dashboard/dashboard.component.scss new file mode 100644 index 0000000..e69de29 diff --git a/security-c4po-angular/src/app/dashboard/dashboard.component.spec.ts b/security-c4po-angular/src/app/dashboard/dashboard.component.spec.ts new file mode 100644 index 0000000..5ec4ff8 --- /dev/null +++ b/security-c4po-angular/src/app/dashboard/dashboard.component.spec.ts @@ -0,0 +1,25 @@ +import { ComponentFixture, TestBed } from '@angular/core/testing'; + +import { DashboardComponent } from './dashboard.component'; + +describe('DashboardComponent', () => { + let component: DashboardComponent; + let fixture: ComponentFixture; + + beforeEach(async () => { + await TestBed.configureTestingModule({ + declarations: [ DashboardComponent ] + }) + .compileComponents(); + }); + + beforeEach(() => { + fixture = TestBed.createComponent(DashboardComponent); + component = fixture.componentInstance; + fixture.detectChanges(); + }); + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/security-c4po-angular/src/app/dashboard/dashboard.component.ts b/security-c4po-angular/src/app/dashboard/dashboard.component.ts new file mode 100644 index 0000000..fbe68b4 --- /dev/null +++ b/security-c4po-angular/src/app/dashboard/dashboard.component.ts @@ -0,0 +1,17 @@ +import {Component, OnDestroy, OnInit} from '@angular/core'; + +@Component({ + selector: 'app-dashboard', + templateUrl: './dashboard.component.html', + styleUrls: ['./dashboard.component.scss'] +}) +export class DashboardComponent implements OnInit, OnDestroy { + + constructor() { } + + ngOnInit(): void { + } + + ngOnDestroy(): void { + } +} diff --git a/security-c4po-angular/src/app/dashboard/dashboard.module.ts b/security-c4po-angular/src/app/dashboard/dashboard.module.ts new file mode 100644 index 0000000..43913fa --- /dev/null +++ b/security-c4po-angular/src/app/dashboard/dashboard.module.ts @@ -0,0 +1,17 @@ +import {NgModule} from '@angular/core'; +import {CommonModule} from '@angular/common'; +import {DashboardComponent} from './dashboard.component'; + +@NgModule({ + declarations: [ + DashboardComponent, + ], + exports: [ + DashboardComponent + ], + imports: [ + CommonModule + ] +}) +export class DashboardModule { +} diff --git a/security-c4po-angular/src/app/dashboard/index.ts b/security-c4po-angular/src/app/dashboard/index.ts new file mode 100644 index 0000000..87d1201 --- /dev/null +++ b/security-c4po-angular/src/app/dashboard/index.ts @@ -0,0 +1,2 @@ +export {DashboardModule} from './dashboard.module'; +export {DashboardRoutingModule} from './dashboard-routing.module'; diff --git a/security-c4po-angular/src/app/header/header.component.html b/security-c4po-angular/src/app/header/header.component.html new file mode 100644 index 0000000..eff6a91 --- /dev/null +++ b/security-c4po-angular/src/app/header/header.component.html @@ -0,0 +1,4 @@ +
+

header works!

+
+ diff --git a/security-c4po-angular/src/app/header/header.component.scss b/security-c4po-angular/src/app/header/header.component.scss new file mode 100644 index 0000000..9792749 --- /dev/null +++ b/security-c4po-angular/src/app/header/header.component.scss @@ -0,0 +1,9 @@ +@import "../../assets/@theme/styles/_variables.scss"; + +.c4po-header { + height: $header-height; + + .toggle-dark-mode { + text-align: right; + } +} diff --git a/security-c4po-angular/src/app/header/header.component.spec.ts b/security-c4po-angular/src/app/header/header.component.spec.ts new file mode 100644 index 0000000..381e8e8 --- /dev/null +++ b/security-c4po-angular/src/app/header/header.component.spec.ts @@ -0,0 +1,25 @@ +import { ComponentFixture, TestBed } from '@angular/core/testing'; + +import { HeaderComponent } from './header.component'; + +describe('HeaderComponent', () => { + let component: HeaderComponent; + let fixture: ComponentFixture; + + beforeEach(async () => { + await TestBed.configureTestingModule({ + declarations: [ HeaderComponent ] + }) + .compileComponents(); + }); + + beforeEach(() => { + fixture = TestBed.createComponent(HeaderComponent); + component = fixture.componentInstance; + fixture.detectChanges(); + }); + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/security-c4po-angular/src/app/header/header.component.ts b/security-c4po-angular/src/app/header/header.component.ts new file mode 100644 index 0000000..59874a9 --- /dev/null +++ b/security-c4po-angular/src/app/header/header.component.ts @@ -0,0 +1,14 @@ +import { Component, OnInit } from '@angular/core'; +@Component({ + selector: 'app-header', + templateUrl: './header.component.html', + styleUrls: ['./header.component.scss'] +}) +export class HeaderComponent implements OnInit { + + constructor() { } + + ngOnInit(): void { + } + +} diff --git a/security-c4po-angular/src/app/header/header.module.ts b/security-c4po-angular/src/app/header/header.module.ts new file mode 100644 index 0000000..ebaf0a3 --- /dev/null +++ b/security-c4po-angular/src/app/header/header.module.ts @@ -0,0 +1,16 @@ +import { NgModule } from '@angular/core'; +import { CommonModule } from '@angular/common'; +import {HeaderComponent} from './header.component'; + +@NgModule({ + declarations: [ + HeaderComponent + ], + exports: [ + HeaderComponent + ], + imports: [ + CommonModule + ] +}) +export class HeaderModule { } diff --git a/security-c4po-angular/src/app/home/home.component.html b/security-c4po-angular/src/app/home/home.component.html index 5f2c53f..379ce84 100644 --- a/security-c4po-angular/src/app/home/home.component.html +++ b/security-c4po-angular/src/app/home/home.component.html @@ -1 +1,16 @@ -

home works!

+ + + + + + + +
+ {{projects.getValue() | json}} +
+ + {{'No Projects available!'}} + +
+ +
diff --git a/security-c4po-angular/src/app/home/home.component.spec.ts b/security-c4po-angular/src/app/home/home.component.spec.ts index 2c5a172..cd0c5be 100644 --- a/security-c4po-angular/src/app/home/home.component.spec.ts +++ b/security-c4po-angular/src/app/home/home.component.spec.ts @@ -1,6 +1,8 @@ import { ComponentFixture, TestBed } from '@angular/core/testing'; import { HomeComponent } from './home.component'; +import {NbButtonModule, NbCardModule} from '@nebular/theme'; +import {HttpClientTestingModule} from '@angular/common/http/testing'; describe('HomeComponent', () => { let component: HomeComponent; @@ -8,7 +10,14 @@ describe('HomeComponent', () => { beforeEach(async () => { await TestBed.configureTestingModule({ - declarations: [ HomeComponent ] + declarations: [ + HomeComponent + ], + imports: [ + HttpClientTestingModule, + NbCardModule, + NbButtonModule + ] }) .compileComponents(); }); diff --git a/security-c4po-angular/src/app/home/home.component.ts b/security-c4po-angular/src/app/home/home.component.ts index 73acf06..b4515fa 100644 --- a/security-c4po-angular/src/app/home/home.component.ts +++ b/security-c4po-angular/src/app/home/home.component.ts @@ -1,15 +1,36 @@ -import { Component, OnInit } from '@angular/core'; +import {Component, OnDestroy, OnInit} from '@angular/core'; +import {BehaviorSubject} from 'rxjs'; +import {Project} from '../../shared/models/project.model'; +import {ProjectService} from '../../shared/services/project.service'; +import {untilDestroyed} from 'ngx-take-until-destroy'; @Component({ selector: 'app-home', templateUrl: './home.component.html', styleUrls: ['./home.component.scss'] }) -export class HomeComponent implements OnInit { +export class HomeComponent implements OnInit, OnDestroy { - constructor() { } + projects: BehaviorSubject = new BehaviorSubject([]); + + constructor(private projectService: ProjectService) { } ngOnInit(): void { } + onClickGetProjects(): void { + this.getProjects(); + } + + getProjects(): void { + this.projectService.getProjects() + .pipe(untilDestroyed(this)) + .subscribe((projects) => { + this.projects.next(projects); + }); + } + + ngOnDestroy(): void { + } + } diff --git a/security-c4po-angular/src/app/home/home.module.ts b/security-c4po-angular/src/app/home/home.module.ts index dd3e324..93dfefc 100644 --- a/security-c4po-angular/src/app/home/home.module.ts +++ b/security-c4po-angular/src/app/home/home.module.ts @@ -1,9 +1,20 @@ -import { NgModule } from '@angular/core'; +import {NgModule} from '@angular/core'; import {HomeComponent} from './home.component'; +import {CommonModule} from '@angular/common'; +import {NbButtonModule, NbCardModule} from '@nebular/theme'; @NgModule({ declarations: [ HomeComponent + ], + exports: [ + HomeComponent + ], + imports: [ + CommonModule, + NbCardModule, + NbButtonModule ] }) -export class HomeModule { } +export class HomeModule { +} diff --git a/security-c4po-angular/src/app/login/login.component.html b/security-c4po-angular/src/app/login/login.component.html index 55ccc0b..d58dbc1 100644 --- a/security-c4po-angular/src/app/login/login.component.html +++ b/security-c4po-angular/src/app/login/login.component.html @@ -51,9 +51,3 @@ - - - - - - diff --git a/security-c4po-angular/src/assets/@theme/styles/_variables.scss b/security-c4po-angular/src/assets/@theme/styles/_variables.scss new file mode 100644 index 0000000..f2298b2 --- /dev/null +++ b/security-c4po-angular/src/assets/@theme/styles/_variables.scss @@ -0,0 +1 @@ +$header-height: 4rem; diff --git a/security-c4po-angular/src/assets/@theme/styles/styles.scss b/security-c4po-angular/src/assets/@theme/styles/styles.scss index 4100554..ec7e63c 100644 --- a/security-c4po-angular/src/assets/@theme/styles/styles.scss +++ b/security-c4po-angular/src/assets/@theme/styles/styles.scss @@ -9,6 +9,7 @@ @import './layout'; @import './overrides'; +@import './variables'; * { font-family: Roboto, "Helvetica Neue", sans-serif; diff --git a/security-c4po-angular/src/environments/environment.ts b/security-c4po-angular/src/environments/environment.ts index 7b4f817..9817ea7 100644 --- a/security-c4po-angular/src/environments/environment.ts +++ b/security-c4po-angular/src/environments/environment.ts @@ -3,7 +3,9 @@ // The list of file replacements can be found in `angular.json`. export const environment = { - production: false + stage: 'n/a', + production: false, + apiEndpoint: 'http://localhost:8443', }; /* diff --git a/security-c4po-angular/src/favicon-c4po.png b/security-c4po-angular/src/favicon-c4po.png new file mode 100644 index 0000000000000000000000000000000000000000..bfbabb59368d92fec4b8435e5b2c5d2842ae5e45 GIT binary patch literal 1137 zcmV-%1djWOP)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D1O`b&K~z{rwU>L$ zmtz>mpA>4$DI?{O8PfrsFozkVvWyT~tr4vQSu$nAjDIk!EsRAc=9K817BVBXbfDF2 zZOzuGh18hQoP9ob&z1Xq`n~nOzgOSwv)^-F&;4A_{oMC;U-$hh>QHCs10CVbk`v$p zI28_x4uQe&A^ZcM!D;2Sbb^iL^?NV~{x@9>5nL9+05~)A`Q-!Q-OTqnTm>!CB#3~I zLwg7v3$MV-aHNh>PRG*_&piRnR%@6G2KW@t0OjxVFbB+ovr5i~1@H_wHR^0|s*Lf5 zj^^lf@WI!TwMPd31LDgX<2P^wLT`iqX~}AW#(@tw*Qx`ogZw2;VHL!by$||ECTl-3 znf!vSa0DC$o1hxJsce9Da14A0zrab*s7xpyye3(DMxh$Cxx5AHX3%~iSv6!~`3oFw zbsbcL)k|McUxFiie6lJU4>rCfSw*oPs)6dod{DQ8_NZi4v;uyI!=MLLgR~TvrFrEj ze*k-RF5Ct#v5#~hi$|>>E#YBMj>c{n2HkWlfoSxI4zwKdhrfm`@NMR6jO}3CZ!(|6 zS3e2iv!E4AGslfOkU_%t6gYGb!qMO;#l0%Va_K$UnQTR~P0k%K9NZ~)fthXxhJtf$o0Gw0^xCONdKA6~v(ugIJg~tJa0A$Z=%6pS z6%4AK<9We*zF6BA*a2hwT>9L&thQd8PY=M}I&B9|1XqRj-|!Nc7j40*Qujb?Fgc!# z#)5hg+)?e6n^3fIbUjgpo%Wk$nZq8QlG%3RZcz7?zrHB$SD6WFLiuaH#JxYk3K%0S zi=gOVUg)?24uu#pF&E6%kHIBtpt!dNzQ}9~*<$zv=0hIG9BKvbGuoavu7sq^LFb*x zI`9tY$hZ=G&LC?`U#+%*rCm9a+7~9PRAl~)WEI6bkUw0-CFIokg+GFaRhL<(78l+y#jpN|-(sq^XBdeG< zCnoE^<=Gfk%bZ$m0uQXpy+(UXvMP$?*qp4QxES&vIjh01$?^DAtF2h#T>)-t+D`F4 za_z^Io)btGx(%g0h}O{3uur{CDK{u%Mto0P zb?FlD%VPVkVzDv74u^v(w`~*2e@;$~JL+Z7OclkyLI^Y8to4hb00000NkvXXu0mjf DB>)(@ literal 0 HcmV?d00001 diff --git a/security-c4po-angular/src/favicon.ico b/security-c4po-angular/src/favicon.ico index 997406ad22c29aae95893fb3d666c30258a09537..7221d73fefd3699e2d51e8ed0173b6f67b5ac605 100644 GIT binary patch literal 560526 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 HqwfC$WPOvq literal 948 zcmV;l155mgP)CBYU7IjCFmI-B}4sMJt3^s9NVg!P0 z6hDQy(L`XWMkB@zOLgN$4KYz;j0zZxq9KKdpZE#5@k0crP^5f9KO};h)ZDQ%ybhht z%t9#h|nu0K(bJ ztIkhEr!*UyrZWQ1k2+YkGqDi8Z<|mIN&$kzpKl{cNP=OQzXHz>vn+c)F)zO|Bou>E z2|-d_=qY#Y+yOu1a}XI?cU}%04)zz%anD(XZC{#~WreV!a$7k2Ug`?&CUEc0EtrkZ zL49MB)h!_K{H(*l_93D5tO0;BUnvYlo+;yss%n^&qjt6fZOa+}+FDO(~2>G z2dx@=JZ?DHP^;b7*Y1as5^uphBsh*s*z&MBd?e@I>-9kU>63PjP&^#5YTOb&x^6Cf z?674rmSHB5Fk!{Gv7rv!?qX#ei_L(XtwVqLX3L}$MI|kJ*w(rhx~tc&L&xP#?cQow zX_|gx$wMr3pRZIIr_;;O|8fAjd;1`nOeu5K(pCu7>^3E&D2OBBq?sYa(%S?GwG&_0-s%_v$L@R!5H_fc)lOb9ZoOO#p`Nn`KU z3LTTBtjwo`7(HA6 z7gmO$yTR!5L>Bsg!X8616{JUngg_@&85%>W=mChTR;x4`P=?PJ~oPuy5 zU-L`C@_!34D21{fD~Y8NVnR3t;aqZI3fIhmgmx}$oc-dKDC6Ap$Gy>a!`A*x2L1v0 WcZ@i?LyX}70000SecurityC4POAngular - + diff --git a/security-c4po-angular/src/shared/guards/auth-guard.service.ts b/security-c4po-angular/src/shared/guards/auth-guard.service.ts index 0720c05..0757df1 100644 --- a/security-c4po-angular/src/shared/guards/auth-guard.service.ts +++ b/security-c4po-angular/src/shared/guards/auth-guard.service.ts @@ -24,6 +24,7 @@ export class AuthGuardService implements CanActivate { return canAccess; } else { this.router.navigate(['/login']); + return false; } }) ); diff --git a/security-c4po-angular/src/shared/models/project.model.ts b/security-c4po-angular/src/shared/models/project.model.ts new file mode 100644 index 0000000..1c5f6f4 --- /dev/null +++ b/security-c4po-angular/src/shared/models/project.model.ts @@ -0,0 +1,25 @@ +import { v4 as UUID } from 'uuid'; + +export class Project { + id: string; + client: string; + title: string; + /* Change to Date after database integration */ + createdAt: string; + tester: string; + logo: string; + + constructor(id: string, + client: string, + title: string, + createdAt: string, + tester?: string, + logo?: string) { + this.id = id; + this.client = client; + this.title = title; + this.createdAt = createdAt; + this.tester = tester; + this.logo = logo; + } +} diff --git a/security-c4po-angular/src/shared/services/project.service.spec.ts b/security-c4po-angular/src/shared/services/project.service.spec.ts new file mode 100644 index 0000000..4f691b8 --- /dev/null +++ b/security-c4po-angular/src/shared/services/project.service.spec.ts @@ -0,0 +1,24 @@ +import { TestBed } from '@angular/core/testing'; + +import { ProjectService } from './project.service'; +import {HttpClientTestingModule} from '@angular/common/http/testing'; +import {BrowserAnimationsModule} from '@angular/platform-browser/animations'; + +describe('ProjectService', () => { + let service: ProjectService; + + beforeEach(() => { + TestBed.configureTestingModule({ + imports: [ + HttpClientTestingModule, + BrowserAnimationsModule, + ], + providers: [] + }); + service = TestBed.inject(ProjectService); + }); + + it('should be created', () => { + expect(service).toBeTruthy(); + }); +}); diff --git a/security-c4po-angular/src/shared/services/project.service.ts b/security-c4po-angular/src/shared/services/project.service.ts new file mode 100644 index 0000000..39cccae --- /dev/null +++ b/security-c4po-angular/src/shared/services/project.service.ts @@ -0,0 +1,20 @@ +import { Injectable } from '@angular/core'; +import {environment} from '../../environments/environment'; +import {HttpClient} from '@angular/common/http'; +import {Project} from '../models/project.model'; +import {Observable} from 'rxjs'; + +@Injectable({ + providedIn: 'root' +}) +export class ProjectService { + + private apiBaseURL = `${environment.apiEndpoint}/v1/projects`; + + constructor(private http: HttpClient) { + } + + public getProjects(): Observable { + return this.http.get(`${this.apiBaseURL}`); + } +} diff --git a/security-c4po-api/build.gradle.kts b/security-c4po-api/build.gradle.kts index 7899265..0344ac2 100644 --- a/security-c4po-api/build.gradle.kts +++ b/security-c4po-api/build.gradle.kts @@ -16,8 +16,10 @@ plugins { id("io.spring.dependency-management") version "1.0.10.RELEASE" id("com.github.spotbugs") version "4.5.0" id("org.owasp.dependencycheck") version "6.0.0" + id("org.asciidoctor.jvm.convert") version "2.4.0" kotlin("jvm") version "1.3.72" kotlin("plugin.spring") version "1.3.72" + jacoco } group = "com.security-c4po.api" @@ -56,17 +58,33 @@ spotbugs { val snippetsDir = file("build/generated-snippets") dependencies { + implementation("com.fasterxml.jackson.datatype:jackson-datatype-joda:2.11.3") + implementation("io.projectreactor.kotlin:reactor-kotlin-extensions:1.1.1") + implementation("javax.websocket:javax.websocket-api:1.1") implementation("org.springframework.boot:spring-boot-starter-webflux") implementation("org.springframework.boot:spring-boot-starter-actuator") + implementation("com.fasterxml.jackson.module:jackson-module-kotlin") + /*implementation("org.springframework.boot:spring-boot-starter-data-mongodb-reactive") + implementation("org.springframework.boot:spring-boot-starter-data-mongodb")*/ implementation("org.jetbrains.kotlin:kotlin-reflect") implementation("org.jetbrains.kotlin:kotlin-stdlib-jdk8") implementation("com.github.spotbugs:spotbugs-annotations:4.1.2") - compileOnly("org.projectlombok:lombok") - annotationProcessor("org.projectlombok:lombok") - testImplementation("org.springframework.boot:spring-boot-starter-test") { - exclude(group = "org.junit.vintage", module = "junit-vintage-engine") - } - testImplementation("org.springframework.restdocs:spring-restdocs-mockmvc") + implementation("org.modelmapper:modelmapper:2.3.2") + + api("org.springframework.boot:spring-boot-starter-test") + /*api("org.springframework.security:spring-security-jwt:1.0.10.RELEASE")*/ + + testImplementation("com.nhaarman.mockitokotlin2:mockito-kotlin:2.1.0") + testImplementation("io.projectreactor:reactor-test") + testImplementation("org.junit.jupiter:junit-jupiter-api:5.3.1") + testImplementation("org.junit.jupiter:junit-jupiter-engine:5.3.1") + testImplementation("org.springframework.cloud:spring-cloud-contract-wiremock:2.1.0.RELEASE") + testImplementation("org.springframework.restdocs:spring-restdocs-webtestclient") +} + +jacoco { + toolVersion = "0.8.3" + reportsDir = file("$buildDir/reports/coverage") } tasks.withType { @@ -81,7 +99,7 @@ tasks.withType { } tasks.bootJar { - dependsOn(tasks.test, tasks.dependencyCheckAnalyze) + dependsOn(tasks.test, tasks.asciidoctor, tasks.jacocoTestReport, tasks.dependencyCheckAnalyze) } tasks.test { @@ -89,5 +107,35 @@ tasks.test { } tasks.dependencyCheckAnalyze { + dependsOn(tasks.test, tasks.asciidoctor, tasks.jacocoTestReport) +} + +//Issue with Kotlin assignment of sourceDir and outputDir: https://github.com/asciidoctor/asciidoctor-gradle-plugin/issues/458 +tasks.asciidoctor { + inputs.dir(snippetsDir) + setSourceDir(file("src/main/asciidoc")) + setOutputDir(file("$buildDir/asciidoc")) + sources(delegateClosureOf { + include("SecurityC4PO.adoc") + }) + + attributes( + mapOf( + "snippets" to snippetsDir, + "source-highlighter" to "coderay", + "toc" to "left", + "toclevels" to 3, + "sectlinks" to true + ) + ) dependsOn(tasks.test) } + +tasks.jacocoTestReport { + reports { + xml.isEnabled = true + csv.isEnabled = false + html.isEnabled = true + html.destination = file("$buildDir/reports/coverage") + } +} diff --git a/security-c4po-api/security-c4po-api.postman_collection.json b/security-c4po-api/security-c4po-api.postman_collection.json new file mode 100644 index 0000000..f478261 --- /dev/null +++ b/security-c4po-api/security-c4po-api.postman_collection.json @@ -0,0 +1,54 @@ +{ + "info": { + "_postman_id": "58021f5f-0ae9-4f64-990b-f09dcc2d3bc2", + "name": "security-c4po-api", + "schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json" + }, + "item": [ + { + "name": "project", + "item": [ + { + "name": "getProjects", + "request": { + "method": "GET", + "header": [], + "url": { + "raw": "http://localhost:8443/v1/projects", + "protocol": "http", + "host": [ + "localhost" + ], + "port": "8443", + "path": [ + "v1", + "projects" + ] + } + }, + "response": [] + } + ] + }, + { + "name": "getHealth", + "request": { + "method": "GET", + "header": [], + "url": { + "raw": "http://localhost:8443/actuator/health", + "protocol": "http", + "host": [ + "localhost" + ], + "port": "8443", + "path": [ + "actuator", + "health" + ] + } + }, + "response": [] + } + ] +} \ No newline at end of file diff --git a/security-c4po-api/src/main/asciidoc/SecurityC4PO.adoc b/security-c4po-api/src/main/asciidoc/SecurityC4PO.adoc new file mode 100644 index 0000000..9cb526a --- /dev/null +++ b/security-c4po-api/src/main/asciidoc/SecurityC4PO.adoc @@ -0,0 +1,50 @@ += SecurityC4PO REST API Documentation +Novatec Consulting GmbH; +:doctype: book +:source-highlighter: highlightjs +:icons: font +:toc: left +:toclevels: 4 +:sectlinks: +:data-uri: + +This documentation describes the REST API for the "SecurityC4PO". + +The service tries to adhere as closely as possible to standard HTTP and REST conventions in its use of HTTP verbs and status codes. + +== Error handling + +You can generally expect 4xx for client errors and 5xx for server errors. + +== Request Headers + +The request and response snippets shown in this documentation are generated from real interactions. +When creating requests you must not follow the examples exactly, e.g. instead of providing the Accept Header `application/json, application/javascript, text/javascript` you can also provide only one value, typically `application/json`. + +== Project + +=== Get projects + +To get projects, call the GET request /v1/projects + +==== Request example + +#include::{snippets}/getProjects/http-request.adoc[] + +==== Response example + +#include::{snippets}/getProjects/http-response.adoc[] + +==== Response structure + +#include::{snippets}/getProjects/response-fields.adoc[] + +== Change History + +|=== +|Date |Change +|2021-02-14 +|Added GET endpoint to receive Projects +|2021-02-12 +|Initial version +|=== diff --git a/security-c4po-api/src/main/kotlin/com/securityc4po/api/v1/BaseEntity.kt b/security-c4po-api/src/main/kotlin/com/securityc4po/api/v1/BaseEntity.kt new file mode 100644 index 0000000..e6d542e --- /dev/null +++ b/security-c4po-api/src/main/kotlin/com/securityc4po/api/v1/BaseEntity.kt @@ -0,0 +1,6 @@ +package com.securityc4po.api.v1 + +abstract class BaseEntity( + var data: T +) { +} \ No newline at end of file diff --git a/security-c4po-api/src/main/kotlin/com/securityc4po/api/v1/ResponseBody.kt b/security-c4po-api/src/main/kotlin/com/securityc4po/api/v1/ResponseBody.kt new file mode 100644 index 0000000..c7f5688 --- /dev/null +++ b/security-c4po-api/src/main/kotlin/com/securityc4po/api/v1/ResponseBody.kt @@ -0,0 +1,3 @@ +package com.securityc4po.api.v1 + +typealias ResponseBody = Map diff --git a/security-c4po-api/src/main/kotlin/com.securityc4po.api/SecurityC4POApplication.kt b/security-c4po-api/src/main/kotlin/com/securityc4po/api/v1/SecurityC4POApplication.kt similarity index 88% rename from security-c4po-api/src/main/kotlin/com.securityc4po.api/SecurityC4POApplication.kt rename to security-c4po-api/src/main/kotlin/com/securityc4po/api/v1/SecurityC4POApplication.kt index 3d8d434..de9930f 100644 --- a/security-c4po-api/src/main/kotlin/com.securityc4po.api/SecurityC4POApplication.kt +++ b/security-c4po-api/src/main/kotlin/com/securityc4po/api/v1/SecurityC4POApplication.kt @@ -1,4 +1,4 @@ -package com.securityc4po.api +package com.securityc4po.api.v1 import org.springframework.boot.autoconfigure.SpringBootApplication import org.springframework.boot.runApplication diff --git a/security-c4po-api/src/main/kotlin/com/securityc4po/api/v1/configuration/SpotBugsConstants.kt b/security-c4po-api/src/main/kotlin/com/securityc4po/api/v1/configuration/SpotBugsConstants.kt new file mode 100644 index 0000000..c09443d --- /dev/null +++ b/security-c4po-api/src/main/kotlin/com/securityc4po/api/v1/configuration/SpotBugsConstants.kt @@ -0,0 +1,19 @@ +package com.securityc4po.api.v1.configuration + +// Constants for SpotBugs warning suppressions +const val NP_NONNULL_FIELD_NOT_INITIALIZED_IN_CONSTRUCTOR = "NP_NONNULL_FIELD_NOT_INITIALIZED_IN_CONSTRUCTOR" +const val RCN_REDUNDANT_NULLCHECK_OF_NONNULL_VALUE = "RCN_REDUNDANT_NULLCHECK_OF_NONNULL_VALUE" +const val BC_BAD_CAST_TO_ABSTRACT_COLLECTION = "BC_BAD_CAST_TO_ABSTRACT_COLLECTION" +const val UC_USELESS_OBJECT = "UC_USELESS_OBJECT" +const val NP_NULL_ON_SOME_PATH_FROM_RETURN_VALUE = "NP_NULL_ON_SOME_PATH_FROM_RETURN_VALUE" +const val SE_BAD_FIELD = "SE_BAD_FIELD" +const val EI_EXPOSE_REP = "EI_EXPOSE_REP" +const val ST_WRITE_TO_STATIC_FROM_INSTANCE_METHOD = "ST_WRITE_TO_STATIC_FROM_INSTANCE_METHOD" +const val SIC_INNER_SHOULD_BE_STATIC = "SIC_INNER_SHOULD_BE_STATIC" +const val URF_UNREAD_FIELD = "URF_UNREAD_FIELD" + +// Messages for SpotBugs warning suppressions +const val MESSAGE_BAD_CAST_TO_ABSTRACT_COLLECTION = "Collection is automatically casted to abstract class." +const val MESSAGE_NOT_INITIALIZED_REDUNDANT_NULLCHECK = "Value gets automatically initialized and checked for null" +const val MESSAGE_USELESS_OBJECT = "Objects are instantiated for code readability." +const val MESSAGE_NULL_ON_SOME_PATH = "Null is a valid value in this case." \ No newline at end of file diff --git a/security-c4po-api/src/main/kotlin/com/securityc4po/api/v1/extensions/InlineFuntions.kt b/security-c4po-api/src/main/kotlin/com/securityc4po/api/v1/extensions/InlineFuntions.kt new file mode 100644 index 0000000..e772753 --- /dev/null +++ b/security-c4po-api/src/main/kotlin/com/securityc4po/api/v1/extensions/InlineFuntions.kt @@ -0,0 +1,5 @@ +package com.securityc4po.api.v1.extensions + +import org.slf4j.LoggerFactory + +inline fun getLoggerFor() = LoggerFactory.getLogger(T::class.java)!! \ No newline at end of file diff --git a/security-c4po-api/src/main/kotlin/com/securityc4po/api/v1/project/Project.kt b/security-c4po-api/src/main/kotlin/com/securityc4po/api/v1/project/Project.kt new file mode 100644 index 0000000..8e8ed67 --- /dev/null +++ b/security-c4po-api/src/main/kotlin/com/securityc4po/api/v1/project/Project.kt @@ -0,0 +1,47 @@ +package com.securityc4po.api.v1.project + +import com.fasterxml.jackson.annotation.JsonFormat +import com.securityc4po.api.v1.ResponseBody +import java.time.Instant +import java.util.UUID + +data class Project( + /* + * @Indexed(background = true, unique = true) + * Can be used after adding deps for mongodb + */ + val id: String = UUID.randomUUID().toString(), + + val client: String, + + val title: String, + + @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd'T'HH:mm:ssZ") + /* Change to Instant after database integration */ + val createdAt: String, + + val tester: String? = null, + + val logo: String? = null +) + +fun Project.toProjectResponseBody(): ResponseBody { + return kotlin.collections.mapOf( + "id" to id, + "client" to client, + "title" to title, + "createdAt" to createdAt.toString(), + "tester" to tester, + "logo" to logo + ) +} + +data class ProjectOverview( + val projects: List +) + +fun ProjectOverview.toProjectOverviewResponseBody(): ResponseBody { + return mapOf( + "projects" to projects + ) +} diff --git a/security-c4po-api/src/main/kotlin/com/securityc4po/api/v1/project/ProjectController.kt b/security-c4po-api/src/main/kotlin/com/securityc4po/api/v1/project/ProjectController.kt new file mode 100644 index 0000000..7c247a8 --- /dev/null +++ b/security-c4po-api/src/main/kotlin/com/securityc4po/api/v1/project/ProjectController.kt @@ -0,0 +1,28 @@ +package com.securityc4po.api.v1.project + +import com.securityc4po.api.v1.ResponseBody +import com.securityc4po.api.v1.configuration.BC_BAD_CAST_TO_ABSTRACT_COLLECTION +import com.securityc4po.api.v1.extensions.getLoggerFor +import edu.umd.cs.findbugs.annotations.SuppressFBWarnings +import org.springframework.http.ResponseEntity +import org.springframework.web.bind.annotation.* + +@RestController +@RequestMapping("/v1/projects") +@CrossOrigin( + origins = [], + allowCredentials = "false", + allowedHeaders = ["*"], + methods = [RequestMethod.GET] +) +@SuppressFBWarnings(BC_BAD_CAST_TO_ABSTRACT_COLLECTION) +class ProjectController(private val projectService: ProjectService) { + + var logger = getLoggerFor() + + @GetMapping + fun getProjects(): List { + return projectService.getProjects() + } + +} \ No newline at end of file diff --git a/security-c4po-api/src/main/kotlin/com/securityc4po/api/v1/project/ProjectEntity.kt b/security-c4po-api/src/main/kotlin/com/securityc4po/api/v1/project/ProjectEntity.kt new file mode 100644 index 0000000..d136e06 --- /dev/null +++ b/security-c4po-api/src/main/kotlin/com/securityc4po/api/v1/project/ProjectEntity.kt @@ -0,0 +1,11 @@ +package com.securityc4po.api.v1.project + +import com.securityc4po.api.v1.BaseEntity + +/* + * @Document(collection = "project") + * Can be used after adding deps for mongodb +*/ +open class ProjectEntity( + data: Project +) : BaseEntity(data) \ No newline at end of file diff --git a/security-c4po-api/src/main/kotlin/com/securityc4po/api/v1/project/ProjectService.kt b/security-c4po-api/src/main/kotlin/com/securityc4po/api/v1/project/ProjectService.kt new file mode 100644 index 0000000..caafb31 --- /dev/null +++ b/security-c4po-api/src/main/kotlin/com/securityc4po/api/v1/project/ProjectService.kt @@ -0,0 +1,40 @@ +package com.securityc4po.api.v1.project + +import com.securityc4po.api.v1.extensions.getLoggerFor +import org.junit.BeforeClass +import org.springframework.stereotype.Service +import reactor.core.publisher.Flux +/* Remove after database is integrated */ +import java.io.File +import com.fasterxml.jackson.datatype.jsr310.JavaTimeModule +import com.fasterxml.jackson.module.kotlin.jacksonObjectMapper +import com.fasterxml.jackson.module.kotlin.readValue +import com.fasterxml.jackson.module.kotlin.registerKotlinModule + +@Service +class ProjectService() { + + var logger = getLoggerFor() + + /* Remove after database is integrated */ + val mapper = jacksonObjectMapper() + + @BeforeClass + fun init() { + mapper.registerKotlinModule() + mapper.registerModule(JavaTimeModule()) + } + + + /** + * Get all [Project]s + * + * @return list of [Project] + */ + fun getProjects(): List { + val jsonProjectsString: String = File("./src/main/resources/mocks/projects.json").readText(Charsets.UTF_8) + val jsonProjectList: List = mapper.readValue>(jsonProjectsString) + /* After database integration the return should be Flux of ProjectEntity */ + return jsonProjectList; + } +} \ No newline at end of file diff --git a/security-c4po-api/src/main/kotlin/com/securityc4po/api/v1/user/User.kt b/security-c4po-api/src/main/kotlin/com/securityc4po/api/v1/user/User.kt new file mode 100644 index 0000000..0e0c92d --- /dev/null +++ b/security-c4po-api/src/main/kotlin/com/securityc4po/api/v1/user/User.kt @@ -0,0 +1,15 @@ +package com.securityc4po.api.v1.user + +data class User( + val id: String, + + val username: String, + + val firstName: String? = null, + + val lastName: String? = null, + + val email: String? = null, + + val interfaceLang: String? = null +) \ No newline at end of file diff --git a/security-c4po-api/src/main/kotlin/com/securityc4po/api/v1/user/UserEntity.kt b/security-c4po-api/src/main/kotlin/com/securityc4po/api/v1/user/UserEntity.kt new file mode 100644 index 0000000..7559c06 --- /dev/null +++ b/security-c4po-api/src/main/kotlin/com/securityc4po/api/v1/user/UserEntity.kt @@ -0,0 +1,11 @@ +package com.securityc4po.api.v1.user + +import com.securityc4po.api.v1.BaseEntity + +/* + * @Document(collection = "user") + * Can be used after adding deps for mongodb +*/ +open class UserEntity( + data: User +) : BaseEntity(data) \ No newline at end of file diff --git a/security-c4po-api/src/main/resources/application.properties b/security-c4po-api/src/main/resources/application.properties index 2091142..970f9f0 100644 --- a/security-c4po-api/src/main/resources/application.properties +++ b/security-c4po-api/src/main/resources/application.properties @@ -1,4 +1,18 @@ ## General Properties ## +spring.main.web-application-type=reactive +spring.main.allow-bean-definition-overriding=true ## Server Config ## -server.port=8443 \ No newline at end of file +server.port=8443 + +## Actuator Endpoints ## +management.endpoints.enabled-by-default=false +management.endpoint.health.enabled=true +management.endpoints.web.exposure.include=info, health, metrics + +## Database (MONGODB) Config ## +# spring.data.mongodb.database=C4PO +# spring.data.mongodb.host=localhost +# spring.data.mongodb.port=27017 +# spring.main.allow-bean-definition-overriding=true +# spring.data.mongodb.auto-index-creation=true \ No newline at end of file diff --git a/security-c4po-api/src/main/resources/mocks/Allsafe.png b/security-c4po-api/src/main/resources/mocks/Allsafe.png new file mode 100644 index 0000000000000000000000000000000000000000..55a4029b0ef04f8f897f414867b27b245df56551 GIT binary patch literal 4033 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­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 Y`239DF}CC60r01xqN7~*?8UqP0H|$st^fc4 literal 0 HcmV?d00001 diff --git a/security-c4po-api/src/main/resources/mocks/projects.json b/security-c4po-api/src/main/resources/mocks/projects.json new file mode 100644 index 0000000..2a0d0bf --- /dev/null +++ b/security-c4po-api/src/main/resources/mocks/projects.json @@ -0,0 +1,18 @@ +[ + { + "id": "4f6567a8-76fd-487b-8602-f82d0ca4d1f9", + "client": "E Corp", + "title": "Some Mock API (v1.0) Scanning", + "createdAt": "2021-01-10T18:05:00Z", + "tester": "Novatester", + "logo": "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EAJCYHgQEBEdHlyVqhAQAlWGQEefVu7B9RKkngXBZzhSZcVQdoSAEBACqUJAY02pqk4VRggIASEgBISAEBACyUFARDQ5daWcCgEhIASEgBAQAkIgVQiIiKaqOlUYISAEhIAQEAJCQAgkBwER0eTUlXIqBISAEBACQkAICIFUISAimqrqVGGEgBAQAkJACAgBIZAcBEREk1NXyqkQEAJCQAgIASEgBFKFgIhoqqpThRECQkAICAEhIASEQHIQEBFNTl0pp0JACAgBISAEhIAQSBUCIqKpqk4VRggIASEgBISAEBACyUFARDQ5daWcCgEhIASEgBAQAkIgVQiIiKaqOlUYISAEhIAQEAJCQAgkBwER0eTUlXIqBISAEBACQkAICIFUISAimqrqVGGEgBAQAkJACAgBIZAcBEREk1NXyqkQEAJCQAgIASEgBFKFgIhoqqpThRECQkAICAEhIASEQHIQEBFNTl0pp0JACAgBISAEhIAQSBUCIqKpqk4VRggIASEgBISAEBACyUFARDQ5daWcCgEhIASEgBAQAkIgVQiIiKaqOlUYISAEhIAQEAJCQAgkBwER0eTUlXIqBISAEBACQkAICIFUISAimqrqVGGEgBAQAkJACAgBIZAcBEREk1NXyqkQEAJCQAgIASEgBFKFgIhoqqpThRECQkAICAEhIASEQHIQEBFNTl0pp0JACAgBISAEhIAQSBUCIqKpqk4VRggIASEgBISAEBACyUFARDQ5daWcCgEhIASEgBAQAkIgVQiIiKaqOlUYISAEhIAQEAJCQAgkBwER0eTUlXIqBISAEBACQkAICIFUISAimqrqVGGEgBAQAkJACAgBIZAcBEREk1NXyqkQEAJCQAgIASEgBFKFgIhoqqpThRECQkAICAEhIASEQHIQEBFNTl0pp0JACAgBISAEhIAQSBUCIqKpqk4VRggIASEgBISAEBACyUFARDQ5daWcCgEhIASEgBAQAkIgVQiIiKaqOlUYISAEhIAQEAJCQAgkBwER0eTUlXIqBISAEBACQkAICIFUISAimqrqVGGEgBAQAkJACAgBIZAcBEREk1NXyqkQEAJCQAgIASEgBFKFgIhoqqpThRECQkAICAEhIASEQHIQEBFNTl0pp0JACAgBISAEhIAQSBUCIqKpqk4VRggIASEgBISAEBACyUFARDQ5daWcCgEh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" + }, + { + "id": "61360a47-796b-4b3f-abf9-c46c668596c5", + "client": "Allsafe", + "title": "CashMyData (iOS)", + "createdAt": "2021-01-10T18:05:00Z", + "tester": "Elliot", + "logo": "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" + } +] \ No newline at end of file diff --git a/security-c4po-api/src/main/resources/mocks/user.json b/security-c4po-api/src/main/resources/mocks/user.json new file mode 100644 index 0000000..f22c45b --- /dev/null +++ b/security-c4po-api/src/main/resources/mocks/user.json @@ -0,0 +1,8 @@ +{ + "id": "db7f247d-da43-4cbe-9fd7-c18679a2f7e7", + "username": "ttt", + "firstName": "test", + "lastName": "user", + "email": "default.user@test.de", + "interfaceLang": "en-US" +} \ No newline at end of file diff --git a/security-c4po-api/src/test/kotlin/com.securityc4po.api.v1/BaseContainerizedTest.kt b/security-c4po-api/src/test/kotlin/com.securityc4po.api.v1/BaseContainerizedTest.kt new file mode 100644 index 0000000..bcd4e65 --- /dev/null +++ b/security-c4po-api/src/test/kotlin/com.securityc4po.api.v1/BaseContainerizedTest.kt @@ -0,0 +1,9 @@ +package com.securityc4po.api.v1 + +import org.junit.jupiter.api.TestInstance +import org.springframework.test.context.TestPropertySource + +@TestInstance(TestInstance.Lifecycle.PER_CLASS) +abstract class BaseContainerizedTest { + +} \ No newline at end of file diff --git a/security-c4po-api/src/test/kotlin/com.securityc4po.api.v1/BaseDocumentationIntTest.kt b/security-c4po-api/src/test/kotlin/com.securityc4po.api.v1/BaseDocumentationIntTest.kt new file mode 100644 index 0000000..135e160 --- /dev/null +++ b/security-c4po-api/src/test/kotlin/com.securityc4po.api.v1/BaseDocumentationIntTest.kt @@ -0,0 +1,36 @@ +package com.securityc4po.api.v1 + +import com.securityc4po.api.v1.configuration.MESSAGE_NOT_INITIALIZED_REDUNDANT_NULLCHECK +import com.securityc4po.api.v1.configuration.NP_NONNULL_FIELD_NOT_INITIALIZED_IN_CONSTRUCTOR +import com.securityc4po.api.v1.configuration.RCN_REDUNDANT_NULLCHECK_OF_NONNULL_VALUE +import edu.umd.cs.findbugs.annotations.SuppressFBWarnings +import org.junit.jupiter.api.BeforeEach +import org.junit.jupiter.api.extension.ExtendWith +import org.springframework.boot.test.context.SpringBootTest +import org.springframework.boot.web.server.LocalServerPort +import org.springframework.restdocs.RestDocumentationContextProvider +import org.springframework.restdocs.RestDocumentationExtension +import org.springframework.restdocs.webtestclient.WebTestClientRestDocumentation.documentationConfiguration +import org.springframework.test.context.junit.jupiter.SpringExtension +import org.springframework.test.web.reactive.server.WebTestClient +import java.time.Duration + +@SuppressFBWarnings(NP_NONNULL_FIELD_NOT_INITIALIZED_IN_CONSTRUCTOR, RCN_REDUNDANT_NULLCHECK_OF_NONNULL_VALUE, MESSAGE_NOT_INITIALIZED_REDUNDANT_NULLCHECK) +@ExtendWith(value = [RestDocumentationExtension::class, SpringExtension::class]) +@SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT) +abstract class BaseDocumentationIntTest : BaseContainerizedTest() { + + @LocalServerPort + private var port = 0 + + lateinit var webTestClient: WebTestClient + + @BeforeEach + fun setupDocs(restDocumentation: RestDocumentationContextProvider) { + webTestClient = WebTestClient.bindToServer() + .baseUrl("http://localhost:$port") + .filter(documentationConfiguration(restDocumentation)) + .responseTimeout(Duration.ofMillis(10000)) + .build() + } +} \ No newline at end of file diff --git a/security-c4po-api/src/test/kotlin/com.securityc4po.api.v1/BaseIntTest.kt b/security-c4po-api/src/test/kotlin/com.securityc4po.api.v1/BaseIntTest.kt new file mode 100644 index 0000000..c0f20fd --- /dev/null +++ b/security-c4po-api/src/test/kotlin/com.securityc4po.api.v1/BaseIntTest.kt @@ -0,0 +1,11 @@ +package com.securityc4po.api.v1 + +import org.junit.jupiter.api.extension.ExtendWith +import org.springframework.boot.test.context.SpringBootTest +import org.springframework.test.annotation.DirtiesContext +import org.springframework.test.context.junit.jupiter.SpringExtension + +@ExtendWith(SpringExtension::class) +@SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT) +@DirtiesContext +abstract class BaseIntTest : BaseContainerizedTest() { } \ No newline at end of file diff --git a/security-c4po-api/src/test/kotlin/com.securityc4po.api/SecurityC4POApplicationTests.kt b/security-c4po-api/src/test/kotlin/com.securityc4po.api.v1/SecurityC4POApplicationTests.kt similarity index 85% rename from security-c4po-api/src/test/kotlin/com.securityc4po.api/SecurityC4POApplicationTests.kt rename to security-c4po-api/src/test/kotlin/com.securityc4po.api.v1/SecurityC4POApplicationTests.kt index d1c37de..588044f 100644 --- a/security-c4po-api/src/test/kotlin/com.securityc4po.api/SecurityC4POApplicationTests.kt +++ b/security-c4po-api/src/test/kotlin/com.securityc4po.api.v1/SecurityC4POApplicationTests.kt @@ -1,4 +1,4 @@ -package com.securityc4po.api +package com.securityc4po.api.v1 import org.junit.jupiter.api.Test import org.springframework.boot.test.context.SpringBootTest diff --git a/security-c4po-api/src/test/kotlin/com.securityc4po.api.v1/project/ProjectControllerDocumentationTest.kt b/security-c4po-api/src/test/kotlin/com.securityc4po.api.v1/project/ProjectControllerDocumentationTest.kt new file mode 100644 index 0000000..829cd08 --- /dev/null +++ b/security-c4po-api/src/test/kotlin/com.securityc4po.api.v1/project/ProjectControllerDocumentationTest.kt @@ -0,0 +1,109 @@ +package com.securityc4po.api.v1.project + +import com.github.tomakehurst.wiremock.common.Json +import com.securityc4po.api.v1.BaseDocumentationIntTest +import com.securityc4po.api.v1.configuration.SIC_INNER_SHOULD_BE_STATIC +import edu.umd.cs.findbugs.annotations.SuppressFBWarnings +import org.junit.jupiter.api.BeforeEach +import org.junit.jupiter.api.Nested +import org.junit.jupiter.api.Test +import org.springframework.beans.factory.annotation.Autowired +import org.springframework.cloud.contract.wiremock.AutoConfigureWireMock +import org.springframework.restdocs.operation.preprocess.Preprocessors +import org.springframework.restdocs.payload.JsonFieldType +import org.springframework.restdocs.payload.PayloadDocumentation +import org.springframework.restdocs.webtestclient.WebTestClientRestDocumentation + +@AutoConfigureWireMock(port = 0) +@SuppressFBWarnings(SIC_INNER_SHOULD_BE_STATIC) +class ProjectControllerDocumentationTest : BaseDocumentationIntTest() { + + /*@Autowired + lateinit var mongoTemplate: MongoTemplate*/ + + @BeforeEach + fun init() { + cleanUp() + persistBasicTestScenario() + } + + @Nested + inner class GetProjects { + @Test + fun getProjects() { + /* Implement after the implementation of database */ + + /*webTestClient.get().uri("/v1/projects") + .header("") + .exchange() + .expectStatus().isOk + .expectHeader().doesNotExist("") + .expectBody().json(Json.write(getProjectsResponse())) + .consumeWith(WebTestClientRestDocumentation.document("{methodName}", + Preprocessors.preprocessRequest(Preprocessors.prettyPrint(), + Preprocessors.modifyUris().removePort(), + Preprocessors.removeHeaders("Host", "Content-Length")), + Preprocessors.preprocessResponse( + Preprocessors.prettyPrint() + ), + PayloadDocumentation.relaxedResponseFields( + PayloadDocumentation.fieldWithPath("[].id").type(JsonFieldType.STRING).description("The id of the requested Project"), + PayloadDocumentation.fieldWithPath("[].client").type(JsonFieldType.STRING).description("The name of the client of the requested Project"), + PayloadDocumentation.fieldWithPath("[].title").type(JsonFieldType.STRING).description("The title of the requested Project"), + PayloadDocumentation.fieldWithPath("[].createdAt").type(JsonFieldType.STRING).description("The date where the Project was created at"), + PayloadDocumentation.fieldWithPath("[].tester").type(JsonFieldType.STRING).description("The user that is used as a tester in the Project"), + PayloadDocumentation.fieldWithPath("[].logo").type(JsonFieldType.STRING).description("The sensors contained in the Project") + ) + ))*/ + } + + val projectOne = Project( + id = "4f6567a8-76fd-487b-8602-f82d0ca4d1f9", + client = "E Corp", + title = "Some Mock API (v1.0) Scanning", + createdAt = "2021-01-10T18:05:00Z", + tester = "Novatester", + logo = "Insert'E_Corp.png'BASE64Encoded" + ) + val projectTwo = Project( + id = "61360a47-796b-4b3f-abf9-c46c668596c5", + client = "Allsafe", + title = "CashMyData (iOS)", + createdAt = "2021-01-10T18:05:00Z", + tester = "Elliot", + logo = "Insert'Allsafe.png'BASE64Encoded" + ) + + private fun getProjectsResponse() = listOf( + projectOne.toProjectResponseBody(), + projectTwo.toProjectResponseBody() + ) + } + + private fun cleanUp() { + /*mongoTemplate.findAllAndRemove(Query(), Project::class.java)*/ + } + + private fun persistBasicTestScenario() { + // setup test data + val projectOne = Project( + id = "260aa538-0873-43fc-84de-3a09b008646d", + client = "", + title = "", + createdAt = "", + tester = "", + logo = "" + ) + val projectTwo = Project( + id = "260aa538-0873-43fc-84de-3a09b008646d", + client = "", + title = "", + createdAt = "", + tester = "", + logo = "" + ) + cleanUp() + /*mongoTemplate.save(ProjectEntity(projectOne)) + mongoTemplate.save(ProjectEntity(projectTwo))*/ + } +} \ No newline at end of file diff --git a/security-c4po-api/src/test/kotlin/com.securityc4po.api.v1/project/ProjectControllerIntTest.kt b/security-c4po-api/src/test/kotlin/com.securityc4po.api.v1/project/ProjectControllerIntTest.kt new file mode 100644 index 0000000..b3f1ebd --- /dev/null +++ b/security-c4po-api/src/test/kotlin/com.securityc4po.api.v1/project/ProjectControllerIntTest.kt @@ -0,0 +1,106 @@ +package com.securityc4po.api.v1.project + +import com.github.tomakehurst.wiremock.common.Json +import com.securityc4po.api.v1.BaseIntTest +import com.securityc4po.api.v1.configuration.SIC_INNER_SHOULD_BE_STATIC +import com.securityc4po.api.v1.configuration.URF_UNREAD_FIELD +import edu.umd.cs.findbugs.annotations.SuppressFBWarnings +import org.junit.jupiter.api.BeforeEach +import org.junit.jupiter.api.Nested +import org.junit.jupiter.api.Test +import org.springframework.beans.factory.annotation.Autowired +import org.springframework.boot.web.server.LocalServerPort +import org.springframework.cloud.contract.wiremock.AutoConfigureWireMock +import org.springframework.test.web.reactive.server.WebTestClient +import java.time.Duration + +@AutoConfigureWireMock(port = 0) +@SuppressFBWarnings(SIC_INNER_SHOULD_BE_STATIC, URF_UNREAD_FIELD, "Unread field will become used after database implementation") +class ProjectControllerIntTest : BaseIntTest() { + + @LocalServerPort + private var port = 0 + + private lateinit var webTestClient: WebTestClient + + @BeforeEach + fun setupWebClient() { + webTestClient = WebTestClient.bindToServer() + .baseUrl("http://localhost:$port") + .responseTimeout(Duration.ofMillis(10000)) + .build() + } + + /*@Autowired + lateinit var mongoTemplate: MongoTemplate*/ + + @BeforeEach + fun init() { + cleanUp() + persistBasicTestScenario() + } + + @Nested + inner class GetProjects { + @Test + fun `requesting projects successfully`() { + /* Implement after the implementation of database */ + + /*webTestClient.get().uri("/v1/projects") + .header("") + .exchange() + .expectStatus().isOk + .expectHeader().doesNotExist("") + .expectBody().json(Json.write(getProjects()))*/ + } + + val projectOne = Project( + id = "4f6567a8-76fd-487b-8602-f82d0ca4d1f9", + client = "E Corp", + title = "Some Mock API (v1.0) Scanning", + createdAt = "2021-01-10T18:05:00Z", + tester = "Novatester", + logo = "Insert'E_Corp.png'BASE64Encoded" + ) + val projectTwo = Project( + id = "61360a47-796b-4b3f-abf9-c46c668596c5", + client = "Allsafe", + title = "CashMyData (iOS)", + createdAt = "2021-01-10T18:05:00Z", + tester = "Elliot", + logo = "Insert'Allsafe.png'BASE64Encoded" + ) + + private fun getProjects() = listOf( + projectOne.toProjectResponseBody(), + projectTwo.toProjectResponseBody() + ) + } + + private fun cleanUp() { + /*mongoTemplate.findAllAndRemove(Query(), Project::class.java)*/ + } + + private fun persistBasicTestScenario() { + // setup test data + val projectOne = Project( + id = "4f6567a8-76fd-487b-8602-f82d0ca4d1f9", + client = "E Corp", + title = "Some Mock API (v1.0) Scanning", + createdAt = "2021-01-10T18:05:00Z", + tester = "Novatester", + logo = "Insert'E_Corp.png'BASE64Encoded" + ) + val projectTwo = Project( + id = "61360a47-796b-4b3f-abf9-c46c668596c5", + client = "Allsafe", + title = "CashMyData (iOS)", + createdAt = "2021-01-10T18:05:00Z", + tester = "Elliot", + logo = "Insert'Allsafe.png'BASE64Encoded" + ) + cleanUp() + /*mongoTemplate.save(ProjectEntity(projectOne)) + mongoTemplate.save(ProjectEntity(projectTwo))*/ + } +} \ No newline at end of file diff --git a/security-c4po-api/src/test/kotlin/com.securityc4po.api.v1/project/ProjectServiceTest.kt b/security-c4po-api/src/test/kotlin/com.securityc4po.api.v1/project/ProjectServiceTest.kt new file mode 100644 index 0000000..80291e0 --- /dev/null +++ b/security-c4po-api/src/test/kotlin/com.securityc4po.api.v1/project/ProjectServiceTest.kt @@ -0,0 +1,27 @@ +package com.securityc4po.api.v1.project + +import com.nhaarman.mockitokotlin2.mock +import com.securityc4po.api.v1.configuration.SIC_INNER_SHOULD_BE_STATIC +import edu.umd.cs.findbugs.annotations.SuppressFBWarnings +import org.junit.jupiter.api.Nested +import org.junit.jupiter.api.Test +import org.slf4j.Logger + +@SuppressFBWarnings(SIC_INNER_SHOULD_BE_STATIC) +class ProjectServiceTest { + + private val log = mock() + + private val cut = ProjectService().apply { + this.logger = log + } + + @Nested + inner class GetProjects { + @Test + fun `happy path - getProjects successfully`() { + + } + } + +} \ No newline at end of file