Skip to content

Commit

Permalink
Fixing unit test (#1253)
Browse files Browse the repository at this point in the history
Added unit test for changing the context: ContextChangeTest.java (#1250)
Reformatting the setContext function.
Added entry to CHANGELOG.adoc
(cherry picked from commit 4315499)
  • Loading branch information
RayOffiah authored Dec 20, 2023
1 parent c7aba4f commit 38fdb22
Show file tree
Hide file tree
Showing 4 changed files with 67 additions and 0 deletions.
5 changes: 5 additions & 0 deletions CHANGELOG.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -49,6 +49,11 @@ Documentation::

Improvement::

* Add `setContext` function to ContentNode.

* Add command line option --failure-level to force non-zero exit code from AsciidoctorJ CLI if specified logging level is reached. (#1114)
* Upgrade to asciidoctorj 2.0.20 (#1208)
* Upgrade to asciidoctorj-pdf 2.3.7 (#1182)
* Add 'standalone' option, deprecates 'headerFooter' (#1160) (@abelsromero)
* Upgrade to asciidoctorj-diagram 2.2.7

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,9 @@ public interface ContentNode {
@Deprecated
String context();
String getContext();

void setContext(String context);

/**
* @deprecated Use {@linkplain #getDocument()} instead.
*/
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -46,6 +46,11 @@ public String getContext() {
return getString("context");
}

@Override
public void setContext(String context) {
setString("context", context);

}
@Override
@Deprecated
public ContentNode parent() {
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
package org.asciidoctor.jruby.ast.impl;

import org.asciidoctor.Asciidoctor;
import org.asciidoctor.Attributes;
import org.asciidoctor.Options;
import org.asciidoctor.ast.Document;
import org.asciidoctor.ast.StructuralNode;

import org.junit.Test;
import static org.hamcrest.CoreMatchers.*;
import static org.hamcrest.MatcherAssert.assertThat;


public class ContextChangeTest {

private final Asciidoctor asciiDoctor = Asciidoctor.Factory.create();

static String orderedListSample() {
return "= Document Title\n\n" +
"== Section A\n\n" +
". This it item 1 in an ordered list\n\n" +
". This is item 2 in an ordered list\n\n" +
". This is item 3 in and ordered list\n\n";

}

@Test
public void get_context_of_ordered_list(){

Document document = loadDocument(orderedListSample());

assertThat(document, notNullValue());
assertThat(document.getBlocks().size(), equalTo(1));

StructuralNode orderedList = document.getBlocks().get(0).getBlocks().get(0);
assertThat(orderedList, notNullValue());

// Odd – I expected this to send back :'olist'
assertThat(orderedList.getContext(), equalTo("olist"));

// But can you change it?

orderedList.setContext("colist");

assertThat(orderedList.getContext(), equalTo("colist"));

}

private Document loadDocument(String source) {
Attributes attributes = Attributes.builder().sectionNumbers(false).build();
Options options = Options.builder().attributes(attributes).build();
return asciiDoctor.load(source, options);
}
}

0 comments on commit 38fdb22

Please sign in to comment.