Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add simple Unit Tests for #6207 #6240

Conversation

dimitra-karadima
Copy link
Contributor

@dimitra-karadima dimitra-karadima commented Apr 4, 2020

I have split some Unit Tests into different methods with only one assert statement.
@koppor Please let me know what you think about my additions so far!

Add the following changes:
-remove multiple assert statements in test cases
-split each assert statement in different test methods with meaningful
test names
Fix some encoding problems
Fix merge conflict with the master branch
@Siedlerchr
Copy link
Member

Siedlerchr commented Apr 4, 2020

I would split it even further, create a separate class for each IntegrityCheckTest (e.g. one class for Edition, one for Author, ...) as we also have a different class for each integrity check

@@ -186,6 +292,17 @@ void testTitleChecks() {
assertCorrect(withMode(createContext(StandardField.TITLE, "This is a {Title}"), BibDatabaseMode.BIBTEX));
assertCorrect(withMode(createContext(StandardField.TITLE, "{C}urrent {C}hronicle"), BibDatabaseMode.BIBTEX));
assertCorrect(withMode(createContext(StandardField.TITLE, "{A Model-Driven Approach for Monitoring {ebBP} BusinessTransactions}"), BibDatabaseMode.BIBTEX));
assertCorrect(withMode(createContext(StandardField.TITLE, "This is a sub title 1: This is a sub title 2"), BibDatabaseMode.BIBTEX));
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I would move all these tests to TitleCheckerTest and just keep one subtitle tests here.

This test class here is only for an integration test (TitleChecker is integrated in the IntegrityCheck) - the "real" functionality is in org.jabref.logic.integrity.TitleChecker.

When you are on it, you could fix the capitalization in TitleCheckerTest:

grafik

@calixtus
Copy link
Member

calixtus commented Apr 5, 2020

Hi @dimitra-karadima , thanks for you effort. Writing unit tests is sometimes boring, but can also be very educational. Thank you very much.
Also I wanted to ask you to keep the checkboxes in the PR description, as they are always useful to us to get a quick overview to which extent a PR is done. Even if only one checkbox makes sense in a PR.
I took the liberty to readd them by myself.

@dimitra-karadima
Copy link
Contributor Author

Hi @dimitra-karadima , thanks for you effort. Writing unit tests is sometimes boring, but can also be very educational. Thank you very much.
Also I wanted to ask you to keep the checkboxes in the PR description, as they are always useful to us to get a quick overview to which extent a PR is done. Even if only one checkbox makes sense in a PR.
I took the liberty to readd them by myself.

Thanks for your input! I will keep it in mind for the upcoming PRs!

@tobiasdiez
Copy link
Member

@dimitra-karadima Did you already found the time to address the comments above?

@dimitra-karadima
Copy link
Contributor Author

@dimitra-karadima Did you already found the time to address the comments above?

@tobiasdiez Sorry I was a little bit busy but until Sunday I will commit my new changes!

Add the following changes:
-move tests from IntegrityCheckTest to the appropriate Test classes
-remove multiple assert statements in different test methods
-fix the capitalization in TitleCheckerTest
Change two failing tests to succesfull
Remove one test
@dimitra-karadima
Copy link
Contributor Author

@dimitra-karadima Did you already found the time to address the comments above?

@tobiasdiez what do you think about my latest commit?

@tobiasdiez tobiasdiez marked this pull request as draft April 17, 2020 16:07
Copy link
Member

@koppor koppor left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thank you for continuing working on it.

Please use checker.checkValue instead of IntegrityCheckTest.... Reason: Keep the tests focused in the test subject. See the name "AbbreviationCheckerTest"? It tests the class "AbbreviationChecker".

Could you please rework the added tests to use that? You can work on a direct field value, no need to think of StandardField....

See other test classes in the same package for examples. E.g., https://github.com/JabRef/jabref/blob/master/src/test/java/org/jabref/logic/integrity/TitleCheckerTest.java

public class ASCIICharacterCheckerTest {

@Test
void fieldAcceptsASCIICharacters() {
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
void fieldAcceptsASCIICharacters() {
void fieldAcceptsAsciiCharacters() {

Even not conform with current JabRef classes, please use defined camel case - see https://google.github.io/styleguide/javaguide.html#s5.3-camel-case for details.

@Test
void journalNameAcceptsFullForm() {
for (Field field : Arrays.asList(StandardField.BOOKTITLE, StandardField.JOURNAL)) {
IntegrityCheckTest.assertCorrect(IntegrityCheckTest.createContext(field, "IEEE Software"));
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please use checker.checkValue instead of IntegrityCheckTest.... Reason: Keep the tests focused in the test subject.

See the name "AbbreviationCheckerTest"? It tests the class "AbbreviationChecker". This class is instantiated in line 25.

Also applies for the other checks you added. Could you please rework?

Copy link
Contributor Author

@dimitra-karadima dimitra-karadima Apr 23, 2020

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@koppor I changed every class that has a checkValue method. But some of them like ASCIICharacterChecker.java has a different method(public List check(BibEntry entry)). Do you want me to change those tests too? If yes can you suggest me something? Because it is like IntegrityCheck.java and you haven't made any comments on my test class.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

  • No errors: assertEquals(Collections.emptyList(), assciCharacterChecker.check(entry));
  • Errors: assertEquals(List.of(new IntegrityCheckMessage("...text", StandardFields.DOI)), assciCharacterChecker.check(entry));). This way, the real error message is checked. And if someone changes something in the checker, it is also noted in the tests. See our long disucssions at Remove dash from illegal characters. #6300 (which are also caused by failing tests - and we were forced to think about the intended behavior more deeply).

@koppor koppor changed the title [WIP] Add simple Unit Tests for #6207 Add simple Unit Tests for #6207 Apr 23, 2020
Add the following changes:
-Use checker.checkValue or checker.check instead of IntegrityCheckTest...
-Split a method with multiple assertion methods in FileCheckerTest into three different with a simple assertion method
-Rename a method in ASCIICharacterCheckerTest in order to use defined camel case
@LinusDietz LinusDietz added the status: ready-for-review Pull Requests that are ready to be reviewed by the maintainers label Apr 28, 2020
@tobiasdiez tobiasdiez marked this pull request as ready for review April 28, 2020 06:57
@koppor
Copy link
Member

koppor commented May 5, 2020

Looks got o me. Please resolve the conflicts at IntegrityCheckTest.java.

@dimitra-karadima
Copy link
Contributor Author

Looks got o me. Please resolve the conflicts at IntegrityCheckTest.java.

@koppor I fixed it!

@koppor koppor self-requested a review May 6, 2020 22:59
Copy link
Member

@koppor koppor left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Huge diff. Difficult to review. Think, I found the important parts.

Something went wrong with the merge. Cannot look now. Can you check it?


@BeforeEach
public void setUp() {
checker = new BooktitleChecker();
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No need for the @BeforeEach here. Just initialize the checker in line 13. --> One SLOC insted of 6 for the same functionality. -- JUnit initializes the class on each run.

Please check the other (modified) classes, too.

private BibDatabaseContext bibDatabaseContext;
private List<IntegrityMessage> messages;
MetaData metaData = mock(MetaData.class);
//private FilePreferences f;
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why is here commented code?

@@ -390,21 +84,21 @@ private BibDatabaseContext createContext(Field field, String value, EntryType ty
return new BibDatabaseContext(bibDatabase);
}

private BibDatabaseContext createContext(Field field, String value, MetaData metaData) {
protected static BibDatabaseContext createContext(Field field, String value, MetaData metaData) {
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why was the modifier changed? Is this method used outside of this class? It should be private. Adding static is OK for me.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@koppor yes it was used outside of the class. I changed it now so all classes are independent. And I think I covered all the issues mentioned with my new commits. Please check it out and let me know what you think!


@BeforeEach
void setUp() {
//hash.put(StandardField.ABSTRACT, "");
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't find this commented code in the old IntegrityCheck Test. Why is it here?

//hash.put(StandardField.ABSTRACT, "");
//f = new FilePreferences("", hash, true, "", "");
bibDatabaseContext = new BibDatabaseContext();
checker = new FileChecker(bibDatabaseContext, mock(FilePreferences.class));
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is this checker ever used in this class?

I would propose to

a) remove this unused code
b) readd the test void testFileChecks() { in the IntegrityCheck class as the DIFFERENCE to this test is that the FILE field is checked - and this coudl have some side effects.

More background:

I wondered why metaData has to be mocked. The only reason can be the special treatment of the file field. I think, we should keep this code. The code can be left in the IntegrityCheckerTest class - if we don't come up with some better place.

Add the following changes:
-Revert all methods from protected static to private
-Change BibtexKeyCheckerTest in order not to use IntegrityCheckTest's methods
-Add two tests methods that were moved to another class
Due to recent merges to master the JournalAbbreviationRepository constructor changed so the creation of the object changes as well.
Remove it wherever it was just creating objects
Remove unnecessary BibEntry initialization and import
@koppor
Copy link
Member

koppor commented May 8, 2020

@dimitra-karadima Thank you for continuing to work on it. It would be very nice if you looked at our automated tests. The checkstyle is failing:

grafik

You can avoid the unused imports if you format the file. Please ensure that you have the JabRef code style active in IntelliJ. See https://devdocs.jabref.org/getting-into-the-code/guidelines-for-setting-up-a-local-workspace#using-jabrefs-code-style for details.

Copy link
Member

@koppor koppor left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I just did not find the for loops. I checked the other tests - and I found them all re-added.

Please fix checkstyle, too.

Then, it should be good to go 🎉


@Test
void testAuthorNameChecks() {
for (Field field : FieldFactory.getPersonNameFields()) {
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't find this for loop in the new code. Was it deleted completely or did I just not find it? If it was deleted, please re-add it. -- Maybe: Is the test already existing somewhere else?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@koppor I placed these tests in the PersonNamesCheckerTest. Do you want me to add the for loops in all the added tests there?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I just checked. Did not find assertCorrect(withMode(createContext(field, ""), BibDatabaseMode.BIBLATEX)) there. Could you do a double check for commit and push, please?

For the for loop, please use @MethodSource as described at https://www.baeldung.com/parameterized-tests-junit-5#6-method.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@koppor I will use the @MethodSource as you suggested but the line you mentioned have been replaced because the methods used are declared in the IntegrityCheckTest and we want all the test classes to be interdependent.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Good step forward. Note to self:

After thinking longer, the first aspect cannot be made in PersonChecker.

Thus, please rewrite the test here to provide a Field from FieldFactory.getPersonNameFields() as source: Split the asserts up and have field as paramter. Thus, each assertCorrect and each assertWrong will become a separate @Test.

(The alternative is to provide two parameters to a @Test as you did in PersonNamesCheckerTest).

}

@Test
void testAbbreviationChecks() {
for (Field field : Arrays.asList(StandardField.BOOKTITLE, StandardField.JOURNAL)) {
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I did not find this test in the diff. Is the test already existing somewhere else?

Copy link
Contributor Author

@dimitra-karadima dimitra-karadima May 9, 2020

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@koppor I thought that these tests were covered in the AbbreviationCheckerTest. Do you want me to re-add these tests here?

@koppor koppor removed the status: ready-for-review Pull Requests that are ready to be reviewed by the maintainers label May 8, 2020
Rework test class because checkstyle is failing
@koppor
Copy link
Member

koppor commented May 11, 2020

Had to retrigger the build workflows as they were not executed correctly. Checkstyle still fails:

grafik

@dimitra-karadima You can execute the checkstyle checks locally. Either in the IDE or using gradlew checkstyleMain.


@Test
void testAuthorNameChecks() {
for (Field field : FieldFactory.getPersonNameFields()) {
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I just checked. Did not find assertCorrect(withMode(createContext(field, ""), BibDatabaseMode.BIBLATEX)) there. Could you do a double check for commit and push, please?

For the for loop, please use @MethodSource as described at https://www.baeldung.com/parameterized-tests-junit-5#6-method.

Fix because instance variable definition was in wrong order.
Change from multiple test methods to two parameterized with @MethodSource
Copy link
Member

@koppor koppor left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thank you for the quick answer. I understood the intion of IntegrityCheckTest now more. Added a suggestion to the JavaDoc and commented the proposed changes accordingly. Could you please adress them?


@Test
void testAuthorNameChecks() {
for (Field field : FieldFactory.getPersonNameFields()) {
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Good step forward. Note to self:

After thinking longer, the first aspect cannot be made in PersonChecker.

Thus, please rewrite the test here to provide a Field from FieldFactory.getPersonNameFields() as source: Split the asserts up and have field as paramter. Thus, each assertCorrect and each assertWrong will become a separate @Test.

(The alternative is to provide two parameters to a @Test as you did in PersonNamesCheckerTest).

@@ -62,4 +69,29 @@ public void validCorporateNameAndPerson() throws Exception {
assertEquals(Optional.empty(), checker.checkValue("{JabRef} and Stefan Kolb"));
assertEquals(Optional.empty(), checker.checkValue("{JabRef} and Kolb, Stefan"));
}

@ParameterizedTest
@MethodSource("provideCorrectFormats")
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is a good step forward.

The aspect of a field check is missing. To keep that in IntegrityCheckTest is a good idea. See my comments there.

The inputs will be duplicated, but that is OK.

@@ -39,197 +37,23 @@
class IntegrityCheckTest {
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think, a JavaDoc should be added explaning the difference between this test and the CheckerTests. Here a proposal:

Suggested change
class IntegrityCheckTest {
/**
* This class tests the Integrity Checker as a whole. Aspects are: selected fields, issues arising in a complete BibTeX entry, ... When testing a checker works with a certain input, this test has to go to a test belonging to the respective checker. See PersonNamesCheckerTest for an example test.
*/
class IntegrityCheckTest {

}

private static String[] provideCorrectFormats() {
String[] data = new String[] {"", "Knuth", "Donald E. Knuth and Kurt Cobain and A. Einstein"};
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Since a single String string is required at each test, please use following code:

Suggested change
String[] data = new String[] {"", "Knuth", "Donald E. Knuth and Kurt Cobain and A. Einstein"};
return Stream.of("", "Knuth", "Donald E. Knuth and Kurt Cobain and A. Einstein");

This is more readble than String[]. The return type will be Stream<String>.

}

private static String[] provideIncorrectFormats() {
String[] data = new String[] {" Knuth, Donald E. ", "Knuth, Donald E. and Kurt Cobain and A. Einstein",
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

See above --> Stream.of(...).

Change the return type of two methods from String[] to Stream<String> since it is more readable.
Add the following changes:
-Add Javadoc
-Rewrite testAuthorNameChecks with @MethodSource
@koppor koppor changed the base branch from master to dimitra-karadima-fix-for-issue-6207 May 13, 2020 05:08
@koppor koppor merged commit fdef92e into JabRef:dimitra-karadima-fix-for-issue-6207 May 13, 2020
@koppor
Copy link
Member

koppor commented May 13, 2020

Thank you for the follow up - I merged it as a single commit into a local branch in this repository. I will address the minor comments for myself there.

Copy link
Member

@koppor koppor left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Only the empty line was missing. Fixed it for myself and will merge. Thank you for the work.

* Aspects are: selected fields, issues arising in a complete BibTeX entry, ... When testing a checker works with a certain input,
* this test has to go to a test belonging to the respective checker. See PersonNamesCheckerTest for an example test.
*/

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No empty line between JavaDoc and code.

Siedlerchr added a commit that referenced this pull request May 16, 2020
* upstream/master: (50 commits)
  Keep group pane size when resizing window (#6180) (#6423)
  Changelog: Fix missing citation for biblatex-mla
  Update AUTHORS
  Check duplicate DOI (#6333)
  Fix missing citation for biblatex-mla
  Change EasyBind dependency (#6480)
  Add testing of latest dev version as mandatory
  Squashed 'src/main/resources/csl-styles/' changes from 5dad23d..586e0b8
  Fix libre office connection and other progress dialogs (#6478)
  Fix clear year and month field when converting to biblatex (#6434)
  Add truncate as a BibTex key modifier (#6427)
  Add new authors (not all - they need more work)
  Remove empty line
  Add simple Unit Tests for #6207 (#6240)
  Enforce LeftCurly rule (#6452)
  Implement task progress indicator (and dialog) in the toolbar (#6443)
  Consider empty brackets
  Changelog update
  Added a test
  Fixed brackets in regular expressions
  ...
koppor pushed a commit that referenced this pull request Jul 1, 2023
80b3861bce Update al-jamiah-journal-of-islamic-studies.csl (#6581)
b6fb00e415 Create arachnologische-mitteilungen.csl (#6375)
2dbc8edf8e Update universitat-basel-iberoromanistik.csl (#6580)
fd230a7073 Create veterinary-clinical-pathology.csl (#6372)
ac0afa3cae Create dedicated Basque APA file (#6370)
fee0677a88 Update chicago-author-date.csl (#6289)
ca1bf2db6e Create van-yuzuncu-yil-universitesi-fen-bilimleri-enstitusu.csl (#6230)
f4116db325 Create Turcica.csl (#6240)
0e4311a802 Create jurnal-teknik-mesin-indonesia.csl (#6211)
e73bf46674 Update vancouver.csl (#6156)
b73c3ef193 Create independent TF AIP Style
befa82e7ef Create harvard-xi-an-jiaotong-liverpool-univeisity.csl (#6181)
048c9bddbc Add csl for SDMI (#6129)
1c2aedd088 Update and rename dependent/energy-research-and-social-science.csl to energy-research-and-social-science.csl (#6567)
b77084255f Update the-quarterly-journal-of-economics.csl (#6572)
cf66f60f25 Update publicatiewijzer-voor-de-archeologie.csl (#6577)
9e9e08c219 Update isara-iso-690.csl (#6578)
4b4e8f442d Create silva-fennica.csl (#6568)
dd8760bb2b Update american-journal-of-botany.csl (#6569)
8b0e505363 Update haute-ecole-de-gestion-de-geneve-iso-690.csl (#6560)
016050c4b7 Update geographie-et-cultures.csl (#6563)
e8b62f1c80 Update and rename dependent/retina.csl to retina.csl (#6565)

git-subtree-dir: buildres/csl/csl-styles
git-subtree-split: 80b3861bce121a64d43ef167581f8d100a4f70aa
calixtus pushed a commit that referenced this pull request Jul 1, 2023
…ce (#10048)

80b3861bce Update al-jamiah-journal-of-islamic-studies.csl (#6581)
b6fb00e415 Create arachnologische-mitteilungen.csl (#6375)
2dbc8edf8e Update universitat-basel-iberoromanistik.csl (#6580)
fd230a7073 Create veterinary-clinical-pathology.csl (#6372)
ac0afa3cae Create dedicated Basque APA file (#6370)
fee0677a88 Update chicago-author-date.csl (#6289)
ca1bf2db6e Create van-yuzuncu-yil-universitesi-fen-bilimleri-enstitusu.csl (#6230)
f4116db325 Create Turcica.csl (#6240)
0e4311a802 Create jurnal-teknik-mesin-indonesia.csl (#6211)
e73bf46674 Update vancouver.csl (#6156)
b73c3ef193 Create independent TF AIP Style
befa82e7ef Create harvard-xi-an-jiaotong-liverpool-univeisity.csl (#6181)
048c9bddbc Add csl for SDMI (#6129)
1c2aedd088 Update and rename dependent/energy-research-and-social-science.csl to energy-research-and-social-science.csl (#6567)
b77084255f Update the-quarterly-journal-of-economics.csl (#6572)
cf66f60f25 Update publicatiewijzer-voor-de-archeologie.csl (#6577)
9e9e08c219 Update isara-iso-690.csl (#6578)
4b4e8f442d Create silva-fennica.csl (#6568)
dd8760bb2b Update american-journal-of-botany.csl (#6569)
8b0e505363 Update haute-ecole-de-gestion-de-geneve-iso-690.csl (#6560)
016050c4b7 Update geographie-et-cultures.csl (#6563)
e8b62f1c80 Update and rename dependent/retina.csl to retina.csl (#6565)

git-subtree-dir: buildres/csl/csl-styles
git-subtree-split: 80b3861bce121a64d43ef167581f8d100a4f70aa

Co-authored-by: github actions <jabrefmail+webfeedback@gmail.com>
koppor pushed a commit that referenced this pull request Jul 15, 2023
a97dbb32c5 Update studii-teologice.csl (#6591)
e19e08780e Update acm-sig-proceedings-long-author-list.csl (#6594)
c8abbcdd88 Update acm-sig-proceedings.csl (#6595)
725ace4a40 Create uppsala-university-library-harvard.csl (#6574)
a973041e0e update bluebook-law-review.csl (#6583)
0891cfc49a Update masarykova-univerzita-pravnicka-fakulta.csl (#6589)
80b3861bce Update al-jamiah-journal-of-islamic-studies.csl (#6581)
b6fb00e415 Create arachnologische-mitteilungen.csl (#6375)
2dbc8edf8e Update universitat-basel-iberoromanistik.csl (#6580)
fd230a7073 Create veterinary-clinical-pathology.csl (#6372)
ac0afa3cae Create dedicated Basque APA file (#6370)
fee0677a88 Update chicago-author-date.csl (#6289)
ca1bf2db6e Create van-yuzuncu-yil-universitesi-fen-bilimleri-enstitusu.csl (#6230)
f4116db325 Create Turcica.csl (#6240)
0e4311a802 Create jurnal-teknik-mesin-indonesia.csl (#6211)
e73bf46674 Update vancouver.csl (#6156)
b73c3ef193 Create independent TF AIP Style
befa82e7ef Create harvard-xi-an-jiaotong-liverpool-univeisity.csl (#6181)
048c9bddbc Add csl for SDMI (#6129)
1c2aedd088 Update and rename dependent/energy-research-and-social-science.csl to energy-research-and-social-science.csl (#6567)
b77084255f Update the-quarterly-journal-of-economics.csl (#6572)
cf66f60f25 Update publicatiewijzer-voor-de-archeologie.csl (#6577)
9e9e08c219 Update isara-iso-690.csl (#6578)
4b4e8f442d Create silva-fennica.csl (#6568)
dd8760bb2b Update american-journal-of-botany.csl (#6569)
8b0e505363 Update haute-ecole-de-gestion-de-geneve-iso-690.csl (#6560)
016050c4b7 Update geographie-et-cultures.csl (#6563)
e8b62f1c80 Update and rename dependent/retina.csl to retina.csl (#6565)

git-subtree-dir: buildres/csl/csl-styles
git-subtree-split: a97dbb32c57c8c00e47422dae4ba4f480e753da5
koppor pushed a commit that referenced this pull request Aug 1, 2023
0749a19b83 Update journal-of-experimental-botany.csl (#6604)
b1768724fe Update modern-language-association.csl (#6606)
dd364c1815 Create modern-language-association-for-JEI.csl (#6593)
6cb436997b Partial update of APA styles for 1.0.2, including software, legal, most localizations (#6270)
d7c4ebec85 fix film/video authors for american-sociological-association.csl (#6602)
a97dbb32c5 Update studii-teologice.csl (#6591)
e19e08780e Update acm-sig-proceedings-long-author-list.csl (#6594)
c8abbcdd88 Update acm-sig-proceedings.csl (#6595)
725ace4a40 Create uppsala-university-library-harvard.csl (#6574)
a973041e0e update bluebook-law-review.csl (#6583)
0891cfc49a Update masarykova-univerzita-pravnicka-fakulta.csl (#6589)
80b3861bce Update al-jamiah-journal-of-islamic-studies.csl (#6581)
b6fb00e415 Create arachnologische-mitteilungen.csl (#6375)
2dbc8edf8e Update universitat-basel-iberoromanistik.csl (#6580)
fd230a7073 Create veterinary-clinical-pathology.csl (#6372)
ac0afa3cae Create dedicated Basque APA file (#6370)
fee0677a88 Update chicago-author-date.csl (#6289)
ca1bf2db6e Create van-yuzuncu-yil-universitesi-fen-bilimleri-enstitusu.csl (#6230)
f4116db325 Create Turcica.csl (#6240)
0e4311a802 Create jurnal-teknik-mesin-indonesia.csl (#6211)
e73bf46674 Update vancouver.csl (#6156)
b73c3ef193 Create independent TF AIP Style
befa82e7ef Create harvard-xi-an-jiaotong-liverpool-univeisity.csl (#6181)
048c9bddbc Add csl for SDMI (#6129)
1c2aedd088 Update and rename dependent/energy-research-and-social-science.csl to energy-research-and-social-science.csl (#6567)
b77084255f Update the-quarterly-journal-of-economics.csl (#6572)
cf66f60f25 Update publicatiewijzer-voor-de-archeologie.csl (#6577)
9e9e08c219 Update isara-iso-690.csl (#6578)
4b4e8f442d Create silva-fennica.csl (#6568)
dd8760bb2b Update american-journal-of-botany.csl (#6569)
8b0e505363 Update haute-ecole-de-gestion-de-geneve-iso-690.csl (#6560)
016050c4b7 Update geographie-et-cultures.csl (#6563)
e8b62f1c80 Update and rename dependent/retina.csl to retina.csl (#6565)

git-subtree-dir: buildres/csl/csl-styles
git-subtree-split: 0749a19b8306f2e8dcb9bf1a2e3a6992666030ac
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants