Fix tests

This commit is contained in:
Pieter Vander Vennet 2021-06-27 20:35:38 +02:00
parent 284102c2f1
commit 6af3d41886
4 changed files with 16 additions and 22 deletions

View file

@ -15,9 +15,8 @@ import {FixedUiElement} from "../../UI/Base/FixedUiElement";
import SourceConfig from "./SourceConfig"; import SourceConfig from "./SourceConfig";
import {TagsFilter} from "../../Logic/Tags/TagsFilter"; import {TagsFilter} from "../../Logic/Tags/TagsFilter";
import {Tag} from "../../Logic/Tags/Tag"; import {Tag} from "../../Logic/Tags/Tag";
import SubstitutingTag from "../../Logic/Tags/SubstitutingTag";
import BaseUIElement from "../../UI/BaseUIElement"; import BaseUIElement from "../../UI/BaseUIElement";
import {Denomination, Unit} from "./Denomination"; import {Unit} from "./Denomination";
export default class LayerConfig { export default class LayerConfig {
@ -58,10 +57,10 @@ export default class LayerConfig {
tagRenderings: TagRenderingConfig []; tagRenderings: TagRenderingConfig [];
constructor(json: LayerConfigJson, constructor(json: LayerConfigJson,
units:Unit[], units?:Unit[],
context?: string, context?: string,
official: boolean = true,) { official: boolean = true,) {
this.units = units; this.units = units ?? [];
context = context + "." + json.id; context = context + "." + json.id;
const self = this; const self = this;
this.id = json.id; this.id = json.id;
@ -167,7 +166,7 @@ export default class LayerConfig {
return []; return [];
} }
return tagRenderings.map( return Utils.NoNull(tagRenderings.map(
(renderingJson, i) => { (renderingJson, i) => {
if (typeof renderingJson === "string") { if (typeof renderingJson === "string") {
@ -187,10 +186,14 @@ export default class LayerConfig {
const keys = Array.from(SharedTagRenderings.SharedTagRendering.keys()) const keys = Array.from(SharedTagRenderings.SharedTagRendering.keys())
if(Utils.runningFromConsole){
return undefined;
}
throw `Predefined tagRendering ${renderingJson} not found in ${context}.\n Try one of ${(keys.join(", "))}\n If you intent to output this text literally, use {\"render\": <your text>} instead"}`; throw `Predefined tagRendering ${renderingJson} not found in ${context}.\n Try one of ${(keys.join(", "))}\n If you intent to output this text literally, use {\"render\": <your text>} instead"}`;
} }
return new TagRenderingConfig(renderingJson, self.source.osmTags, `${context}.tagrendering[${i}]`); return new TagRenderingConfig(renderingJson, self.source.osmTags, `${context}.tagrendering[${i}]`);
}); }));
} }
this.tagRenderings = trs(json.tagRenderings, false); this.tagRenderings = trs(json.tagRenderings, false);

View file

@ -1,6 +1,7 @@
import TagRenderingConfig from "./JSON/TagRenderingConfig"; import TagRenderingConfig from "./JSON/TagRenderingConfig";
import * as questions from "../assets/tagRenderings/questions.json"; import * as questions from "../assets/tagRenderings/questions.json";
import * as icons from "../assets/tagRenderings/icons.json"; import * as icons from "../assets/tagRenderings/icons.json";
import {Utils} from "../Utils";
export default class SharedTagRenderings { export default class SharedTagRenderings {
@ -11,8 +12,11 @@ export default class SharedTagRenderings {
const dict = new Map<string, TagRenderingConfig>(); const dict = new Map<string, TagRenderingConfig>();
function add(key, store) { function add(key, store) {
if(Utils.runningFromConsole){
return;
}
try { try {
dict.set(key, new TagRenderingConfig(store[key], key)) dict.set(key, new TagRenderingConfig(store[key], undefined, `SharedTagRenderings.${key}`))
} catch (e) { } catch (e) {
console.error("BUG: could not parse", key, " from questions.json or icons.json - this error happened during the build step of the SharedTagRenderings", e) console.error("BUG: could not parse", key, " from questions.json or icons.json - this error happened during the build step of the SharedTagRenderings", e)
} }

View file

@ -3,22 +3,10 @@ import {Utils} from "../Utils";
Utils.runningFromConsole = true; Utils.runningFromConsole = true;
import {equal} from "assert"; import {equal} from "assert";
import T from "./TestHelper"; import T from "./TestHelper";
import {FromJSON} from "../Customizations/JSON/FromJSON";
import Locale from "../UI/i18n/Locale";
import Translations from "../UI/i18n/Translations";
import {UIEventSource} from "../Logic/UIEventSource";
import TagRenderingConfig from "../Customizations/JSON/TagRenderingConfig";
import EditableTagRendering from "../UI/Popup/EditableTagRendering";
import {Translation} from "../UI/i18n/Translation"; import {Translation} from "../UI/i18n/Translation";
import {OH, OpeningHour} from "../UI/OpeningHours/OpeningHours";
import PublicHolidayInput from "../UI/OpeningHours/PublicHolidayInput";
import {SubstitutedTranslation} from "../UI/SubstitutedTranslation";
import {Tag} from "../Logic/Tags/Tag";
import {And} from "../Logic/Tags/And";
import {ImageSearcher} from "../Logic/Actors/ImageSearcher";
import {AllKnownLayouts} from "../Customizations/AllKnownLayouts";
import AllKnownLayers from "../Customizations/AllKnownLayers"; import AllKnownLayers from "../Customizations/AllKnownLayers";
import LayerConfig from "../Customizations/JSON/LayerConfig"; import LayerConfig from "../Customizations/JSON/LayerConfig";
import * as bike_repair_station from "../assets/layers/bike_repair_station/bike_repair_station.json"
export default class ImageAttributionSpec extends T { export default class ImageAttributionSpec extends T {
constructor() { constructor() {
@ -27,7 +15,7 @@ export default class ImageAttributionSpec extends T {
[ [
"Should find all the images", "Should find all the images",
() => { () => {
const pumps: LayerConfig = AllKnownLayers.sharedLayers["bike_repair_station"] const pumps: LayerConfig = new LayerConfig(bike_repair_station )
const images = pumps.ExtractImages(); const images = pumps.ExtractImages();
const expectedValues = ['./assets/layers/bike_repair_station/repair_station.svg', const expectedValues = ['./assets/layers/bike_repair_station/repair_station.svg',
'./assets/layers/bike_repair_station/repair_station_pump.svg', './assets/layers/bike_repair_station/repair_station_pump.svg',

View file

@ -33,7 +33,6 @@ const allTests = [
new GeoOperationsSpec(), new GeoOperationsSpec(),
new ImageSearcherSpec(), new ImageSearcherSpec(),
new ThemeSpec(), new ThemeSpec(),
new UtilsSpec(),
new UtilsSpec() new UtilsSpec()
] ]