diff --git a/build/classes/main/fr/theshark34/openlauncherlib/Authenticator.class b/build/classes/main/fr/theshark34/openlauncherlib/Authenticator.class index f32b446..c14194e 100644 Binary files a/build/classes/main/fr/theshark34/openlauncherlib/Authenticator.class and b/build/classes/main/fr/theshark34/openlauncherlib/Authenticator.class differ diff --git a/build/libs/openlauncherlib-1.0-RELEASE.jar b/build/libs/openlauncherlib-1.0-RELEASE.jar index 303374f..7400086 100644 Binary files a/build/libs/openlauncherlib-1.0-RELEASE.jar and b/build/libs/openlauncherlib-1.0-RELEASE.jar differ diff --git a/build/reports/tests/base-style.css b/build/reports/tests/base-style.css new file mode 100644 index 0000000..89ee415 --- /dev/null +++ b/build/reports/tests/base-style.css @@ -0,0 +1,162 @@ + +body { + margin: 0; + padding: 0; + font-family: sans-serif; + font-size: 12pt; +} + +body, a, a:visited { + color: #303030; +} + +#content { + padding-left: 50px; + padding-right: 50px; + padding-top: 30px; + padding-bottom: 30px; +} + +#content h1 { + font-size: 160%; + margin-bottom: 10px; +} + +#footer { + margin-top: 100px; + font-size: 80%; + white-space: nowrap; +} + +#footer, #footer a { + color: #a0a0a0; +} + +ul { + margin-left: 0; +} + +h1, h2, h3 { + white-space: nowrap; +} + +h2 { + font-size: 120%; +} + +ul.tabLinks { + padding-left: 0; + padding-top: 10px; + padding-bottom: 10px; + overflow: auto; + min-width: 800px; + width: auto !important; + width: 800px; +} + +ul.tabLinks li { + float: left; + height: 100%; + list-style: none; + padding-left: 10px; + padding-right: 10px; + padding-top: 5px; + padding-bottom: 5px; + margin-bottom: 0; + -moz-border-radius: 7px; + border-radius: 7px; + margin-right: 25px; + border: solid 1px #d4d4d4; + background-color: #f0f0f0; + /*behavior: url(css3-pie-1.0beta3.htc);*/ +} + +ul.tabLinks li:hover { + background-color: #fafafa; +} + +ul.tabLinks li.selected { + background-color: #c5f0f5; + border-color: #c5f0f5; +} + +ul.tabLinks a { + font-size: 120%; + display: block; + outline: none; + text-decoration: none; + margin: 0; + padding: 0; +} + +ul.tabLinks li h2 { + margin: 0; + padding: 0; +} + +div.tab { +} + +div.selected { + display: block; +} + +div.deselected { + display: none; +} + +div.tab table { + min-width: 350px; + width: auto !important; + width: 350px; + border-collapse: collapse; +} + +div.tab th, div.tab table { + border-bottom: solid #d0d0d0 1px; +} + +div.tab th { + text-align: left; + white-space: nowrap; + padding-left: 6em; +} + +div.tab th:first-child { + padding-left: 0; +} + +div.tab td { + white-space: nowrap; + padding-left: 6em; + padding-top: 5px; + padding-bottom: 5px; +} + +div.tab td:first-child { + padding-left: 0; +} + +div.tab td.numeric, div.tab th.numeric { + text-align: right; +} + +span.code { + display: inline-block; + margin-top: 0em; + margin-bottom: 1em; +} + +span.code pre { + font-size: 11pt; + padding-top: 10px; + padding-bottom: 10px; + padding-left: 10px; + padding-right: 10px; + margin: 0; + background-color: #f7f7f7; + border: solid 1px #d0d0d0; + min-width: 700px; + width: auto !important; + width: 700px; +} diff --git a/build/reports/tests/fr.theshark34.openlauncherlib.AppTest.html b/build/reports/tests/fr.theshark34.openlauncherlib.AppTest.html new file mode 100644 index 0000000..6804e65 --- /dev/null +++ b/build/reports/tests/fr.theshark34.openlauncherlib.AppTest.html @@ -0,0 +1,83 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> +<html> +<head> +<meta httpEquiv="Content-Type" content="text/html; charset=utf-8"/> +<title>Test results - Class fr.theshark34.openlauncherlib.AppTest</title> +<link href="base-style.css" rel="stylesheet" type="text/css"/> +<link href="style.css" rel="stylesheet" type="text/css"/> +<script src="report.js" type="text/javascript"></script> +</head> +<body> +<div id="content"> +<h1>Class fr.theshark34.openlauncherlib.AppTest</h1> +<div class="breadcrumbs"> +<a href="index.html">all</a> > +<a href="fr.theshark34.openlauncherlib.html">fr.theshark34.openlauncherlib</a> > AppTest</div> +<div id="summary"> +<table> +<tr> +<td> +<div class="summaryGroup"> +<table> +<tr> +<td> +<div class="infoBox" id="tests"> +<div class="counter">1</div> +<p>tests</p> +</div> +</td> +<td> +<div class="infoBox" id="failures"> +<div class="counter">0</div> +<p>failures</p> +</div> +</td> +<td> +<div class="infoBox" id="duration"> +<div class="counter">0.002s</div> +<p>duration</p> +</div> +</td> +</tr> +</table> +</div> +</td> +<td> +<div class="infoBox success" id="successRate"> +<div class="percent">100%</div> +<p>successful</p> +</div> +</td> +</tr> +</table> +</div> +<div id="tabs"> +<ul class="tabLinks"> +<li> +<a href="#tab0">Tests</a> +</li> +</ul> +<div id="tab0" class="tab"> +<h2>Tests</h2> +<table> +<thead> +<tr> +<th>Test</th> +<th>Duration</th> +<th>Result</th> +</tr> +</thead> +<tr> +<td class="success">testApp</td> +<td>0.002s</td> +<td class="success">passed</td> +</tr> +</table> +</div> +</div> +<div id="footer"> +<p>Generated by +<a href="http://www.gradle.org">Gradle 1.5</a> at 14 avr. 2015 13:00:00</p> +</div> +</div> +</body> \ No newline at end of file diff --git a/build/reports/tests/fr.theshark34.openlauncherlib.html b/build/reports/tests/fr.theshark34.openlauncherlib.html new file mode 100644 index 0000000..825ec78 --- /dev/null +++ b/build/reports/tests/fr.theshark34.openlauncherlib.html @@ -0,0 +1,88 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> +<html> +<head> +<meta httpEquiv="Content-Type" content="text/html; charset=utf-8"/> +<title>Test results - Package fr.theshark34.openlauncherlib</title> +<link href="base-style.css" rel="stylesheet" type="text/css"/> +<link href="style.css" rel="stylesheet" type="text/css"/> +<script src="report.js" type="text/javascript"></script> +</head> +<body> +<div id="content"> +<h1>Package fr.theshark34.openlauncherlib</h1> +<div class="breadcrumbs"> +<a href="index.html">all</a> > fr.theshark34.openlauncherlib</div> +<div id="summary"> +<table> +<tr> +<td> +<div class="summaryGroup"> +<table> +<tr> +<td> +<div class="infoBox" id="tests"> +<div class="counter">1</div> +<p>tests</p> +</div> +</td> +<td> +<div class="infoBox" id="failures"> +<div class="counter">0</div> +<p>failures</p> +</div> +</td> +<td> +<div class="infoBox" id="duration"> +<div class="counter">0.002s</div> +<p>duration</p> +</div> +</td> +</tr> +</table> +</div> +</td> +<td> +<div class="infoBox success" id="successRate"> +<div class="percent">100%</div> +<p>successful</p> +</div> +</td> +</tr> +</table> +</div> +<div id="tabs"> +<ul class="tabLinks"> +<li> +<a href="#tab0">Classes</a> +</li> +</ul> +<div id="tab0" class="tab"> +<h2>Classes</h2> +<table> +<thread> +<tr> +<th>Class</th> +<th>Tests</th> +<th>Failures</th> +<th>Duration</th> +<th>Success rate</th> +</tr> +</thread> +<tr> +<td class="success"> +<a href="fr.theshark34.openlauncherlib.AppTest.html">AppTest</a> +</td> +<td>1</td> +<td>0</td> +<td>0.002s</td> +<td class="success">100%</td> +</tr> +</table> +</div> +</div> +<div id="footer"> +<p>Generated by +<a href="http://www.gradle.org">Gradle 1.5</a> at 14 avr. 2015 13:00:00</p> +</div> +</div> +</body> \ No newline at end of file diff --git a/build/reports/tests/index.html b/build/reports/tests/index.html index 9289f70..2c75973 100644 --- a/build/reports/tests/index.html +++ b/build/reports/tests/index.html @@ -1,12 +1,11 @@ -<!DOCTYPE html> +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> <html> <head> -<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> -<meta http-equiv="x-ua-compatible" content="IE=edge"/> +<meta httpEquiv="Content-Type" content="text/html; charset=utf-8"/> <title>Test results - Test Summary</title> -<link href="css/base-style.css" rel="stylesheet" type="text/css"/> -<link href="css/style.css" rel="stylesheet" type="text/css"/> -<script src="js/report.js" type="text/javascript"></script> +<link href="base-style.css" rel="stylesheet" type="text/css"/> +<link href="style.css" rel="stylesheet" type="text/css"/> +<script src="report.js" type="text/javascript"></script> </head> <body> <div id="content"> @@ -31,14 +30,8 @@ <h1>Test Summary</h1> </div> </td> <td> -<div class="infoBox" id="ignored"> -<div class="counter">0</div> -<p>ignored</p> -</div> -</td> -<td> <div class="infoBox" id="duration"> -<div class="counter">0s</div> +<div class="counter">0.002s</div> <p>duration</p> </div> </td> @@ -72,7 +65,6 @@ <h2>Packages</h2> <th>Package</th> <th>Tests</th> <th>Failures</th> -<th>Ignored</th> <th>Duration</th> <th>Success rate</th> </tr> @@ -80,13 +72,12 @@ <h2>Packages</h2> <tbody> <tr> <td class="success"> -<a href="packages/fr.theshark34.openlauncherlib.html">fr.theshark34.openlauncherlib</a> +<a href="fr.theshark34.openlauncherlib.html">fr.theshark34.openlauncherlib</a> </td> <td>1</td> <td>0</td> -<td>0</td> -<td>0s</td> -<td class="success">100%</td> +<td>0.002s</td> +<td class="success">0.002s</td> </tr> </tbody> </table> @@ -99,7 +90,6 @@ <h2>Classes</h2> <th>Class</th> <th>Tests</th> <th>Failures</th> -<th>Ignored</th> <th>Duration</th> <th>Success rate</th> </tr> @@ -107,11 +97,10 @@ <h2>Classes</h2> <tbody> <tr> <td class="success"/> -<a href="classes/fr.theshark34.openlauncherlib.AppTest.html">fr.theshark34.openlauncherlib.AppTest</a> +<a href="fr.theshark34.openlauncherlib.AppTest.html">fr.theshark34.openlauncherlib.AppTest</a> <td>1</td> <td>0</td> -<td>0</td> -<td>0s</td> +<td>0.002s</td> <td class="success">100%</td> </tr> </tbody> @@ -119,14 +108,8 @@ <h2>Classes</h2> </div> </div> <div id="footer"> -<p> -<div> -<label class="hidden" id="label-for-line-wrapping-toggle" for="line-wrapping-toggle">Wrap lines -<input id="line-wrapping-toggle" type="checkbox" autocomplete="off"/> -</label> -</div>Generated by -<a href="http://www.gradle.org">Gradle 2.3</a> at 12 mars 2015 18:41:37</p> +<p>Generated by +<a href="http://www.gradle.org">Gradle 1.5</a> at 14 avr. 2015 13:00:00</p> </div> </div> -</body> -</html> +</body> \ No newline at end of file diff --git a/build/reports/tests/report.js b/build/reports/tests/report.js new file mode 100644 index 0000000..a4455e4 --- /dev/null +++ b/build/reports/tests/report.js @@ -0,0 +1,101 @@ +var tabs = new Object(); + +function initTabs() { + var container = document.getElementById('tabs'); + tabs.tabs = findTabs(container); + tabs.titles = findTitles(tabs.tabs); + tabs.headers = findHeaders(container); + tabs.select = select; + tabs.deselectAll = deselectAll; + tabs.select(0); + return true; +} + +window.onload = initTabs; + +function switchTab() { + var id = this.id.substr(1); + for (var i = 0; i < tabs.tabs.length; i++) { + if (tabs.tabs[i].id == id) { + tabs.select(i); + break; + } + } + return false; +} + +function select(i) { + this.deselectAll(); + changeElementClass(this.tabs[i], 'tab selected'); + changeElementClass(this.headers[i], 'selected'); + while (this.headers[i].firstChild) { + this.headers[i].removeChild(this.headers[i].firstChild); + } + var h2 = document.createElement('H2'); + h2.appendChild(document.createTextNode(this.titles[i])); + this.headers[i].appendChild(h2); +} + +function deselectAll() { + for (var i = 0; i < this.tabs.length; i++) { + changeElementClass(this.tabs[i], 'tab deselected'); + changeElementClass(this.headers[i], 'deselected'); + while (this.headers[i].firstChild) { + this.headers[i].removeChild(this.headers[i].firstChild); + } + var a = document.createElement('A'); + a.setAttribute('id', 'ltab' + i); + a.setAttribute('href', '#tab' + i); + a.onclick = switchTab; + a.appendChild(document.createTextNode(this.titles[i])); + this.headers[i].appendChild(a); + } +} + +function changeElementClass(element, classValue) { + if (element.getAttribute('className')) { + /* IE */ + element.setAttribute('className', classValue) + } else { + element.setAttribute('class', classValue) + } +} + +function findTabs(container) { + return findChildElements(container, 'DIV', 'tab'); +} + +function findHeaders(container) { + var owner = findChildElements(container, 'UL', 'tabLinks'); + return findChildElements(owner[0], 'LI', null); +} + +function findTitles(tabs) { + var titles = new Array(); + for (var i = 0; i < tabs.length; i++) { + var tab = tabs[i]; + var header = findChildElements(tab, 'H2', null)[0]; + header.parentNode.removeChild(header); + if (header.innerText) { + titles.push(header.innerText) + } else { + titles.push(header.textContent) + } + } + return titles; +} + +function findChildElements(container, name, targetClass) { + var elements = new Array(); + var children = container.childNodes; + for (var i = 0; i < children.length; i++) { + var child = children.item(i); + if (child.nodeType == 1 && child.nodeName == name) { + if (targetClass && child.className.indexOf(targetClass) < 0) { + continue; + } + elements.push(child); + } + } + return elements; +} diff --git a/build/reports/tests/style.css b/build/reports/tests/style.css new file mode 100644 index 0000000..c558310 --- /dev/null +++ b/build/reports/tests/style.css @@ -0,0 +1,81 @@ + +#summary { + margin-top: 30px; + margin-bottom: 40px; +} + +#summary table { + border-collapse: collapse; +} + +#summary td { + vertical-align: top; +} + +.breadcrumbs, .breadcrumbs a { + color: #606060; +} + +.infoBox { + width: 110px; + padding-top: 15px; + padding-bottom: 15px; + text-align: center; +} + +.infoBox p { + margin: 0; +} + +.counter, .percent { + font-size: 120%; + font-weight: bold; + margin-bottom: 8px; +} + +#duration { + width: 125px; +} + +#successRate, .summaryGroup { + border: solid 2px #d0d0d0; + -moz-border-radius: 10px; + border-radius: 10px; + /*behavior: url(css3-pie-1.0beta3.htc);*/ +} + +#successRate { + width: 140px; + margin-left: 35px; +} + +#successRate .percent { + font-size: 180%; +} + +.success, .success a { + color: #008000; +} + +div.success, #successRate.success { + background-color: #bbd9bb; + border-color: #008000; +} + +.failures, .failures a { + color: #b60808; +} + +div.failures, #successRate.failures { + background-color: #ecdada; + border-color: #b60808; +} + +ul.linkList { + padding-left: 0; +} + +ul.linkList li { + list-style: none; + margin-bottom: 5px; +} diff --git a/build/test-results/TEST-fr.theshark34.openlauncherlib.AppTest.xml b/build/test-results/TEST-fr.theshark34.openlauncherlib.AppTest.xml index 527fc82..0ec3d23 100644 --- a/build/test-results/TEST-fr.theshark34.openlauncherlib.AppTest.xml +++ b/build/test-results/TEST-fr.theshark34.openlauncherlib.AppTest.xml @@ -1,7 +1,7 @@ -<?xml version="1.0" encoding="UTF-8"?> -<testsuite name="fr.theshark34.openlauncherlib.AppTest" tests="1" skipped="0" failures="0" errors="0" timestamp="2015-03-12T17:41:37" hostname="Shark-Windows" time="0.0"> +<?xml version="1.1" encoding="UTF-8"?> +<testsuite name="fr.theshark34.openlauncherlib.AppTest" tests="1" failures="0" errors="0" timestamp="2015-04-14T11:00:00" hostname="Shark-Portable-Linux" time="0.002"> <properties/> - <testcase name="testApp" classname="fr.theshark34.openlauncherlib.AppTest" time="0.0"/> + <testcase name="testApp" classname="fr.theshark34.openlauncherlib.AppTest" time="0.002"/> <system-out><![CDATA[]]></system-out> <system-err><![CDATA[]]></system-err> </testsuite> diff --git a/build/test-results/binary/test/output.bin b/build/test-results/binary/test/output.bin deleted file mode 100644 index e69de29..0000000 diff --git a/build/test-results/binary/test/output.bin.idx b/build/test-results/binary/test/output.bin.idx deleted file mode 100644 index f76dd23..0000000 Binary files a/build/test-results/binary/test/output.bin.idx and /dev/null differ diff --git a/build/test-results/binary/test/results.bin b/build/test-results/binary/test/results.bin index b1a548a..adb15b4 100644 Binary files a/build/test-results/binary/test/results.bin and b/build/test-results/binary/test/results.bin differ diff --git a/build/tmp/jar/MANIFEST.MF b/build/tmp/jar/MANIFEST.MF index 59499bc..58630c0 100644 --- a/build/tmp/jar/MANIFEST.MF +++ b/build/tmp/jar/MANIFEST.MF @@ -1,2 +1,2 @@ -Manifest-Version: 1.0 - +Manifest-Version: 1.0 + diff --git a/src/main/java/fr/theshark34/openlauncherlib/Authenticator.java b/src/main/java/fr/theshark34/openlauncherlib/Authenticator.java index b0abaeb..010cc2c 100644 --- a/src/main/java/fr/theshark34/openlauncherlib/Authenticator.java +++ b/src/main/java/fr/theshark34/openlauncherlib/Authenticator.java @@ -53,6 +53,10 @@ public static YggdrasilAuthenticateResponse auth(File gameDir, AuthYggdrasil auth = new AuthYggdrasil(false); YggdrasilAuthenticateResponse rep = auth.authenticate( YggdrasilAgent.AGENT_MINECRAFT, username, password, ""); + if(rep == null) + return null; + if(rep.getAccessToken() == null) + return rep; File tokenFile = new File(gameDir, "token.txt"); tokenFile.getParentFile().mkdirs(); try {