Skip to content

Commit

Permalink
issue #75: add tag MPX
Browse files Browse the repository at this point in the history
  • Loading branch information
pkiraly committed Dec 18, 2020
1 parent 09cd295 commit 4a6f098
Show file tree
Hide file tree
Showing 4 changed files with 74 additions and 2 deletions.
2 changes: 1 addition & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,5 +8,5 @@
690, 692, 852$a (code list), 859, 909, 916, 917, 945, 950, 954, 955, 957, 959, 960,
961, 962, 963, 964, 966, 968, 970, 975, 976, 979, 980, 985, 990, 992, 996, 997,
A02, AQN, BGT, BUF, CFI, CNF, DGM, DRT, EST, EXP, FFP, FIN, LAS, LCS, LDO, LEO, LET,
MIS, MNI
MIS, MNI, MPX

Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
package de.gwdg.metadataqa.marc.definition.tags.bltags;

import de.gwdg.metadataqa.marc.definition.Cardinality;
import de.gwdg.metadataqa.marc.definition.DataFieldDefinition;
import de.gwdg.metadataqa.marc.definition.Indicator;
import de.gwdg.metadataqa.marc.definition.general.validator.ISSNValidator;
import de.gwdg.metadataqa.marc.definition.general.validator.RegexValidator;

/**
* Map Leader Data Element
*/
public class TagMPX extends DataFieldDefinition {

private static TagMPX uniqueInstance;

private TagMPX() {
initialize();
postCreation();
}

public static TagMPX getInstance() {
if (uniqueInstance == null)
uniqueInstance = new TagMPX();
return uniqueInstance;
}

private void initialize() {

tag = "MPX";
label = "Map Leader Data Element";
mqTag = "MapLeaderDataElement";
cardinality = Cardinality.Nonrepeatable;
// descriptionUrl = "https://www.loc.gov/marc/bibliographic/bd037.html";
// setCompilanceLevels("O");
obsolete = true;

ind1 = new Indicator();

ind2 = new Indicator();

setSubfieldsWithCardinality(
"a", "Data element", "NR"
);

getSubfield("a")
.setValidator(new RegexValidator("^\\w$"))
.setMqTag("dataElement");
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
package de.gwdg.metadataqa.marc.definition.tags.bltags;

import org.junit.Test;

public class TagMPXTest extends BLTagTest {

public TagMPXTest() {
super(TagMPX.getInstance());
}

@Test
public void testValidFields() {
validField("a", "1");
}

@Test
public void testInvalidFields() {
invalidField("1", "a", "Y");
invalidField("a", "20050944");
invalidField("a", ",");
invalidField("b", "1");
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ public void testListTag() {
List<Class<? extends DataFieldDefinition>> tags = MarcTagLister.listTags();
assertNotNull(tags);
assertNotEquals(0, tags.size());
assertEquals(384, tags.size());
assertEquals(385, tags.size());
assertEquals("Tag010", tags.get(0).getSimpleName());
Map<String, Integer> versionCounter = new HashMap<>();
Map<MarcVersion, Integer> versionCounter2 = new HashMap<>();
Expand Down

0 comments on commit 4a6f098

Please sign in to comment.