-
Notifications
You must be signed in to change notification settings - Fork 33
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge main into stable/4.0.x. Update 20231018
* commit 'aa450618f8647a5c7595771cb101eb01f94b6e71': (46 commits) Fix route state undefined (#2905) Revert "Fix search selection option focus (#2842)" (#2902) Fix meeting admin update as committee admin (#2901) Fix move in call list functionality (#2861) Add ability to go back to lead motion after amendment create (#2859) Block motions/tags page, if missing permission (#2857) Add info message to list of speakers content, if present is needed (#2854) Fix monospace font wrong weight on include (#2848) Fix participant history error (#2888) Add tests for list-search.service (#2874) Fix remove and add submitters (#2858) Add clear selection option in search-selector (#2860) Pause autoupdate connection on inactivitiy (#2851) Fix linting (#2867) Improve shared worker restart after reload process (#2847) Fix search service issues (#2844) Fix bulk change Submitters (#2846) Add test for CsvExportForBackendService (#2863) Fix double click needed to remove filter (#2856) Add lines between class members eslint rule (#2849) ...
- Loading branch information
Showing
195 changed files
with
2,818 additions
and
1,156 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
16 changes: 0 additions & 16 deletions
16
client/src/app/gateways/autoupdate-adapter.service.spec.ts
This file was deleted.
Oops, something went wrong.
This file was deleted.
Oops, something went wrong.
120 changes: 116 additions & 4 deletions
120
client/src/app/gateways/export/csv-export.service/csv-export-for-backend.service.spec.ts
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,16 +1,128 @@ | ||
import { TestBed } from '@angular/core/testing'; | ||
import { BaseViewModel } from 'src/app/site/base/base-view-model'; | ||
|
||
import { FileExportService } from '../file-export.service'; | ||
import { CsvExportForBackendService } from './csv-export-for-backend.service'; | ||
|
||
xdescribe(`CsvExportForBackendService`, () => { | ||
class MockFileExportService { | ||
public lastSavedFiles: any[] = []; | ||
public saveFile(file: BlobPart, filename: string, mimeType?: string): void { | ||
this.lastSavedFiles.push({ file, filename, mimeType }); | ||
} | ||
} | ||
|
||
class MockModel extends BaseViewModel { | ||
public get proper(): boolean { | ||
return this._model.proper; | ||
} | ||
|
||
public get tea(): string { | ||
return this._model.tea; | ||
} | ||
|
||
public get strength(): number { | ||
return this._model.strength; | ||
} | ||
|
||
public constructor(input?: any) { | ||
super(input); | ||
} | ||
|
||
public strengthSquared(): number { | ||
return this.strength ? this.strength * this.strength : 0; | ||
} | ||
} | ||
|
||
describe(`CsvExportForBackendService`, () => { | ||
let service: CsvExportForBackendService; | ||
let exportService: MockFileExportService; | ||
const toDummyExport = [ | ||
{ proper: true, tea: `Earl Grey`, strength: 5 }, | ||
{ proper: false, tea: `Herbal tea` } | ||
]; | ||
const toExport = toDummyExport.map(item => new MockModel(item)); | ||
|
||
beforeEach(() => { | ||
TestBed.configureTestingModule({}); | ||
TestBed.configureTestingModule({ | ||
providers: [CsvExportForBackendService, { provide: FileExportService, useClass: MockFileExportService }] | ||
}); | ||
|
||
service = TestBed.inject(CsvExportForBackendService); | ||
exportService = TestBed.inject(FileExportService) as unknown as MockFileExportService; | ||
}); | ||
|
||
it(`test export method with default settings`, () => { | ||
service.export( | ||
toExport, | ||
[ | ||
{ property: `tea` }, | ||
{ label: `fancy`, map: model => (model.proper ? `yes` : `no`) }, | ||
{ property: `strength` } | ||
], | ||
`assortmentOfTeas` | ||
); | ||
expect(exportService.lastSavedFiles.length).toBe(1); | ||
expect(exportService.lastSavedFiles[0]).toEqual({ | ||
file: `tea,fancy,strength\r\n"Earl Grey","yes","5"\r\n"Herbal tea","no",`, | ||
filename: `assortmentOfTeas`, | ||
mimeType: `text/csv;charset=utf-8` | ||
}); | ||
}); | ||
|
||
it(`test export method with non-default encoding`, () => { | ||
service.export(toExport, [{ property: `proper` }, { property: `tea` }], `assortmentOfTeas2ElectricBoogaloo`, { | ||
encoding: `iso-8859-15` | ||
}); | ||
expect(exportService.lastSavedFiles.length).toBe(1); | ||
expect(exportService.lastSavedFiles[0]).toEqual({ | ||
file: new Uint8Array([ | ||
112, 114, 111, 112, 101, 114, 44, 116, 101, 97, 13, 10, 34, 49, 34, 44, 34, 69, 97, 114, 108, 32, 71, | ||
114, 101, 121, 34, 13, 10, 44, 34, 72, 101, 114, 98, 97, 108, 32, 116, 101, 97, 34 | ||
]), | ||
filename: `assortmentOfTeas2ElectricBoogaloo`, | ||
mimeType: `text/csv;charset=iso-8859-15` | ||
}); | ||
}); | ||
|
||
it(`test export method with non-default settings`, () => { | ||
service.export( | ||
toExport, | ||
[{ property: `proper` }, { property: `tea` }, { property: `strengthSquared` }], | ||
`assortmentOfTeas2ElectricBoogaloo`, | ||
{ | ||
lineSeparator: `:`, | ||
columnSeparator: `?` | ||
} | ||
); | ||
expect(exportService.lastSavedFiles.length).toBe(1); | ||
expect(exportService.lastSavedFiles[0]).toEqual({ | ||
file: `proper?tea?strengthSquared:"1"?"Earl Grey"?"25":?"Herbal tea"?"0"`, | ||
filename: `assortmentOfTeas2ElectricBoogaloo`, | ||
mimeType: `text/csv;charset=utf-8` | ||
}); | ||
}); | ||
|
||
it(`test export method error`, () => { | ||
expect(() => | ||
service.export(toExport, [{ property: `tea` }], `assortmentOfTeas`, { | ||
lineSeparator: `?`, | ||
columnSeparator: `?` | ||
}) | ||
).toThrowError(`lineseparator and columnseparator must differ from each other`); | ||
expect(exportService.lastSavedFiles.length).toBe(0); | ||
}); | ||
|
||
it(`should be created`, () => { | ||
expect(service).toBeTruthy(); | ||
it(`test dummy export method with default settings`, () => { | ||
service.dummyCSVExport( | ||
{ proper: `Fancy`, tea: `Tea`, strength: `Muscle` }, | ||
toDummyExport, | ||
`dummyAssortmentOfTeas` | ||
); | ||
expect(exportService.lastSavedFiles.length).toBe(1); | ||
expect(exportService.lastSavedFiles[0]).toEqual({ | ||
file: `proper,tea,strength\r\n"1","Earl Grey","5"\r\n,"Herbal tea",`, | ||
filename: `dummyAssortmentOfTeas`, | ||
mimeType: `text/csv` | ||
}); | ||
}); | ||
}); |
Oops, something went wrong.