Merge branch '8-display-more-specific-error-messages' into 'develop'
Resolve "Display more specific error messages" Closes #8 and #9 See merge request !5
This commit is contained in:
		
						commit
						e8fb01e912
					
				
					 8 changed files with 40 additions and 13 deletions
				
			
		|  | @ -36,12 +36,11 @@ export class AppComponent extends OnInit { | |||
|                 if (typeof console === "object" && typeof console.log === "function") { | ||||
|                     console.log(error); | ||||
|                 } | ||||
|                 step.message = error.message; | ||||
|                 step.error = true; | ||||
|                 result = null; | ||||
|             } | ||||
|             if (result === null) { | ||||
|                 step.message = "Error converting. Not applicable?"; | ||||
|                 step.error = true; | ||||
|             } else { | ||||
|             if (result !== null) { | ||||
|                 step.message = ""; | ||||
|                 step.error = false; | ||||
|                 if (result !== "") { | ||||
|  |  | |||
|  | @ -10,6 +10,10 @@ export class Base64Decoder implements Converter { | |||
|     } | ||||
| 
 | ||||
|     convert(input:string):string { | ||||
|         return atob(input); | ||||
|         try { | ||||
|             return atob(input); | ||||
|         } catch (exception) { | ||||
|             throw new Error("Could not decode base64 string. Maybe corrupt input?"); | ||||
|         } | ||||
|     } | ||||
| } | ||||
|  |  | |||
|  | @ -10,6 +10,10 @@ export class Base64Encoder implements Converter { | |||
|     } | ||||
| 
 | ||||
|     convert(input:string):string { | ||||
|         return btoa(input); | ||||
|         try { | ||||
|             return btoa(input); | ||||
|         } catch (exception) { | ||||
|             throw new Error("Could not encode base64 string. This should not happen, so why don't you just try again?"); | ||||
|         } | ||||
|     } | ||||
| } | ||||
|  |  | |||
|  | @ -9,6 +9,10 @@ export class BinToDecConverter implements Converter { | |||
|     } | ||||
| 
 | ||||
|     convert(input:string):string { | ||||
|         return parseInt(input, 2).toString(10); | ||||
|         let n:number = parseInt(input, 2); | ||||
|         if (isNaN(n)) { | ||||
|             throw new Error("The input seems not to be a valid binary number."); | ||||
|         } | ||||
|         return n.toString(10); | ||||
|     } | ||||
| } | ||||
|  |  | |||
|  | @ -9,6 +9,10 @@ export class DecToBinConverter implements Converter { | |||
|     } | ||||
| 
 | ||||
|     convert(input:string):string { | ||||
|         return parseInt(input, 10).toString(2); | ||||
|         let n:number = parseInt(input, 10); | ||||
|         if (isNaN(n)) { | ||||
|             throw new Error("The input seems not to be a valid integer."); | ||||
|         } | ||||
|         return n.toString(2); | ||||
|     } | ||||
| } | ||||
|  |  | |||
|  | @ -1,7 +1,7 @@ | |||
| import {Converter} from "./converter"; | ||||
| export class DecToHexConverter implements Converter { | ||||
|     getDisplayname():string { | ||||
|         return "Convert decimal to heximal"; | ||||
|         return "Convert decimal to hexadecimal"; | ||||
|     } | ||||
| 
 | ||||
|     getId():string { | ||||
|  | @ -9,6 +9,10 @@ export class DecToHexConverter implements Converter { | |||
|     } | ||||
| 
 | ||||
|     convert(input:string):string { | ||||
|         return parseInt(input, 10).toString(16); | ||||
|         let n:number = parseInt(input, 10); | ||||
|         if (isNaN(n)) { | ||||
|             throw new Error("The input seems not to be a valid integer."); | ||||
|         } | ||||
|         return n.toString(16); | ||||
|     } | ||||
| } | ||||
|  |  | |||
|  | @ -1,7 +1,7 @@ | |||
| import {Converter} from "./converter"; | ||||
| export class HexToDecConverter implements Converter { | ||||
|     getDisplayname():string { | ||||
|         return "Convert heximal to decimal"; | ||||
|         return "Convert hexadecimal to decimal"; | ||||
|     } | ||||
| 
 | ||||
|     getId():string { | ||||
|  | @ -9,6 +9,10 @@ export class HexToDecConverter implements Converter { | |||
|     } | ||||
| 
 | ||||
|     convert(input:string):string { | ||||
|         return parseInt(input, 16).toString(10); | ||||
|         let n:number = parseInt(input, 16); | ||||
|         if (isNaN(n)) { | ||||
|             throw new Error("The input seems not to be a valid hexadecimal number.") | ||||
|         } | ||||
|         return n.toString(10); | ||||
|     } | ||||
| } | ||||
|  |  | |||
|  | @ -14,6 +14,10 @@ export class QuotedPrintableDecoder implements Converter { | |||
|     } | ||||
| 
 | ||||
|     convert(input:string):string { | ||||
|         return this.nativeLibraryWrapperService.utf8.decode(this.nativeLibraryWrapperService.quotedPrintable.decode(input)); | ||||
|         try { | ||||
|             return this.nativeLibraryWrapperService.utf8.decode(this.nativeLibraryWrapperService.quotedPrintable.decode(input)); | ||||
|         } catch (error) { | ||||
|             throw new Error("The input can not be interpreted as quoted-printable. May be corrupt?"); | ||||
|         } | ||||
|     } | ||||
| } | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue