summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBob Badour <bbadour@google.com>2022-08-12 14:07:53 +0000
committerGerrit Code Review <noreply-gerritcodereview@google.com>2022-08-12 14:07:53 +0000
commit008ca223c74cced03487c02dd173713735423d27 (patch)
treed0c0b6109e39daaa57639efb53dfa1dbf9b934eb
parentcfe3dc567fd65f97117577c43f6b28c31c139f87 (diff)
parentb59def48c92e510ecd81ca6f56b971e1297f84b8 (diff)
downloadbase-008ca223c74cced03487c02dd173713735423d27.tar.gz
Merge "Fix broken anchor tags."
-rw-r--r--packages/SettingsLib/src/com/android/settingslib/license/LicenseHtmlGeneratorFromXml.java10
-rw-r--r--packages/SettingsLib/tests/robotests/src/com/android/settingslib/license/LicenseHtmlGeneratorFromXmlTest.java13
2 files changed, 19 insertions, 4 deletions
diff --git a/packages/SettingsLib/src/com/android/settingslib/license/LicenseHtmlGeneratorFromXml.java b/packages/SettingsLib/src/com/android/settingslib/license/LicenseHtmlGeneratorFromXml.java
index c7eb68240c5b..aaa6dd53a7d0 100644
--- a/packages/SettingsLib/src/com/android/settingslib/license/LicenseHtmlGeneratorFromXml.java
+++ b/packages/SettingsLib/src/com/android/settingslib/license/LicenseHtmlGeneratorFromXml.java
@@ -361,10 +361,15 @@ class LicenseHtmlGeneratorFromXml {
writer.println(HTML_MIDDLE_STRING);
- count = 0;
// Prints all contents of the license files in order of id.
for (ContentIdAndFileNames contentIdAndFileNames : contentIdAndFileNamesList) {
- writer.format("<tr id=\"id%d\"><td class=\"same-license\">\n", count);
+ // Assigns an id to a newly referred license file content (should never happen here)
+ if (!contentIdToOrderMap.containsKey(contentIdAndFileNames.mContentId)) {
+ contentIdToOrderMap.put(contentIdAndFileNames.mContentId, count);
+ count++;
+ }
+ int id = contentIdToOrderMap.get(contentIdAndFileNames.mContentId);
+ writer.format("<tr id=\"id%d\"><td class=\"same-license\">\n", id);
for (Map.Entry<String, List<String>> libraryFiles :
contentIdAndFileNames.mLibraryToFileNameMap.entrySet()) {
String libraryName = libraryFiles.getKey();
@@ -379,7 +384,6 @@ class LicenseHtmlGeneratorFromXml {
writer.format("%s <br/>\n", fileName);
}
writer.println("</div><!-- file-list -->");
- count++;
}
writer.println("<pre class=\"license-text\">");
writer.println(contentIdToFileContentMap.get(
diff --git a/packages/SettingsLib/tests/robotests/src/com/android/settingslib/license/LicenseHtmlGeneratorFromXmlTest.java b/packages/SettingsLib/tests/robotests/src/com/android/settingslib/license/LicenseHtmlGeneratorFromXmlTest.java
index 09b0d7f56e18..7ce04f91458c 100644
--- a/packages/SettingsLib/tests/robotests/src/com/android/settingslib/license/LicenseHtmlGeneratorFromXmlTest.java
+++ b/packages/SettingsLib/tests/robotests/src/com/android/settingslib/license/LicenseHtmlGeneratorFromXmlTest.java
@@ -116,6 +116,7 @@ public class LicenseHtmlGeneratorFromXmlTest {
+ "<li><a href=\"#id0\">/file0 - libA</a></li>\n"
+ "<li><a href=\"#id1\">/file0 - libB</a></li>\n"
+ "<li><a href=\"#id0\">/file1 - libA</a></li>\n"
+ + "<li><a href=\"#id0\">/file2 - libC</a></li>\n"
+ "</ul>\n"
+ "</div><!-- table of contents -->\n"
+ "<table cellpadding=\"0\" cellspacing=\"0\" border=\"0\">\n"
@@ -125,6 +126,10 @@ public class LicenseHtmlGeneratorFromXmlTest {
+ "/file0 <br/>\n"
+ "/file1 <br/>\n"
+ "</div><!-- file-list -->\n"
+ + "<div class=\"label\"><strong>libC</strong> used by:</div>\n"
+ + "<div class=\"file-list\">\n"
+ + "/file2 <br/>\n"
+ + "</div><!-- file-list -->\n"
+ "<pre class=\"license-text\">\n"
+ "license content #0\n"
+ "</pre><!-- license-text -->\n"
@@ -224,13 +229,16 @@ public class LicenseHtmlGeneratorFromXmlTest {
Map<String, String> contentIdToFileContentMap = new HashMap<>();
Map<String, Set<String>> toBoth = new HashMap<>();
Map<String, Set<String>> toOne = new HashMap<>();
+ Map<String, Set<String>> toOther = new HashMap<>();
toBoth.put("libA", new HashSet<String>(Arrays.asList("0")));
toBoth.put("libB", new HashSet<String>(Arrays.asList("1")));
toOne.put("libA", new HashSet<String>(Arrays.asList("0")));
+ toOther.put("libC", new HashSet<String>(Arrays.asList("0")));
fileNameToLibraryToContentIdMap.put("/file0", toBoth);
fileNameToLibraryToContentIdMap.put("/file1", toOne);
+ fileNameToLibraryToContentIdMap.put("/file2", toOther);
contentIdToFileContentMap.put("0", "license content #0");
contentIdToFileContentMap.put("1", "license content #1");
@@ -249,7 +257,7 @@ public class LicenseHtmlGeneratorFromXmlTest {
Map<String, Set<String>> toOne = new HashMap<>();
toBoth.put("", new HashSet<String>(Arrays.asList("0", "1")));
- toOne.put("", new HashSet<String>(Arrays.asList("0")));
+ toOne.put("", new HashSet<String>(Arrays.asList("0", "1")));
fileNameToLibraryToContentIdMap.put("/file0", toBoth);
fileNameToLibraryToContentIdMap.put("/file1", toOne);
@@ -269,13 +277,16 @@ public class LicenseHtmlGeneratorFromXmlTest {
Map<String, String> contentIdToFileContentMap = new HashMap<>();
Map<String, Set<String>> toBoth = new HashMap<>();
Map<String, Set<String>> toOne = new HashMap<>();
+ Map<String, Set<String>> toOther = new HashMap<>();
toBoth.put("libA", new HashSet<String>(Arrays.asList("0")));
toBoth.put("libB", new HashSet<String>(Arrays.asList("1")));
toOne.put("libA", new HashSet<String>(Arrays.asList("0")));
+ toOther.put("libC", new HashSet<String>(Arrays.asList("0")));
fileNameToLibraryToContentIdMap.put("/file0", toBoth);
fileNameToLibraryToContentIdMap.put("/file1", toOne);
+ fileNameToLibraryToContentIdMap.put("/file2", toOther);
contentIdToFileContentMap.put("0", "license content #0");
contentIdToFileContentMap.put("1", "license content #1");