[Libreoffice-commits] .: bug/bug

Loic Dachary loic at kemper.freedesktop.org
Tue Sep 20 03:50:25 PDT 2011


 bug/bug/bug.js    |   16 ++++++----
 bug/bug/test.html |   81 +++++++++++++++++++++++++++++++++++++-----------------
 bug/bug/test.js   |   47 ++++++++++++++++++-------------
 3 files changed, 93 insertions(+), 51 deletions(-)

New commits:
commit dc46ad2c8228263ee98d9b509472f534530eb504
Author: Loic Dachary <loic at dachary.org>
Date:   Tue Sep 20 12:50:12 2011 +0200

    adapt test to new HTML structure and JS code

diff --git a/bug/bug/bug.js b/bug/bug/bug.js
index 9c55d0d..9b21a9f 100644
--- a/bug/bug/bug.js
+++ b/bug/bug/bug.js
@@ -43,7 +43,7 @@
         lookup_result: function(data, error_regexp, success_regexp) {
             var error = data.match(error_regexp);
             if(error !== null) {
-                $('.error').text(error[1]);
+                $.bug.error_set(error[1]);
                 throw error;
             } else {
                 var success = data.match(success_regexp);                
@@ -161,6 +161,10 @@
             var element = $('.state_submit');
             if(!element.hasClass('initialized')) {
                 $('.go', element).click(function() {
+                    var version = $('.state_version .chosen').attr('data');
+                    var component = $('.state_component .chosen').attr('data');
+                    var short_desc = $('.state_subcomponent .active_subcomponent .chosen').attr('data') + ': ' + $('.state_description .short').val();
+                    var comment = $('.state_description .long').val();
                     $.bug.ajax('POST', '/post_bug.cgi', {
                         product: 'LibreOffice',
                         bug_status: 'UNCONFIRMED',
@@ -169,10 +173,10 @@
                         bug_severity: 'normal',
                         priority: 'medium',
                         assigned_to: 'libreoffice-bugs at lists.freedesktop.org',
-                        component: $('.state_component .component').val(),
-                        short_desc: $('.state_subcomponent .active_subcomponent .subcomponent').val() + ': ' + $('.state_description .short').val(),
-                        version: $('.state_version .versions').val(),
-                        comment: $('.state_description .long').val()
+                        component: component,
+                        version: version,
+                        short_desc: short_desc,
+                        comment: comment
                     }).pipe(function(data) {
                         return $.bug.lookup_result(data,
                                                    $.bug.state_submit_error_regexp,
@@ -228,7 +232,7 @@
         
         refresh_related_bugs: function() {
             $('.related_bugs').empty();
-            var component = $('.state_component .component').val().replace('_','%20');
+            var component = $('.state_component .chosen').attr('data').replace('_','%20');
             var subcomponent = $('.state_subcomponent .subcomponent').val();
             var list = '/buglist.cgi?columnlist=short_desc&component=' + component + '&product=LibreOffice&query_format=advanced&short_desc_type=allwordssubstr&ctype=csv&short_desc=' + subcomponent;
             $.bug.ajax('GET', list).pipe(function(data) {
diff --git a/bug/bug/test.html b/bug/bug/test.html
index dacf1f9..3563ebc 100644
--- a/bug/bug/test.html
+++ b/bug/bug/test.html
@@ -6,9 +6,11 @@
   <meta http-equiv="Content-type" content="text/html;charset=UTF-8">
   <script type="text/javascript" src="jquery-1.6.2.js"></script>
   <script type="text/javascript" src="jquery-validation-1.8.1/jquery.validate.js"></script>
-  <script type="text/javascript" src="bug.js"></script>
   <script type="text/javascript" src="jquery.iframe-post-form.js"></script>
+  <script type="text/javascript" src="bug.js"></script>
   <link rel="stylesheet" href="bug.css" type="text/css" media="screen"></link>
+  <script type="text/javascript" src="select.js"></script>
+  <link rel="stylesheet" href="select.css" type="text/css" media="screen"></link>
   <script type="text/javascript" src="qunit.js"></script>
   <link rel="stylesheet" href="qunit.css" type="text/css" media="screen"></link>
   <script type="text/javascript" src="test.js"></script>
@@ -21,7 +23,9 @@
   <ol id="qunit-tests"></ol>
   <div id="qunit-fixture">
 
-    <div class="error"></div>
+    <div class="error-container">
+      <div class="error"></div>
+    </div>
 
     <div class="username"></div>
 
@@ -32,10 +36,17 @@
     </div>
 
     <div class="state_component">
-      <select xmlns="" size="7" class="component" name="component">
-        <option value=''>(chose a component)</option>
-        <option value="BASIC">BASIC</option>
-      </select>
+      <div xmlns="" class="component select">
+        <div class="select-header">
+          <div class="chosen">(chose one)</div>
+        </div>
+        <div class="choices">
+          <ul>
+            <li data="BASIC" class="choice">BASIC</li>
+            <li data="OTHER" class="choice">OTHER</li>
+          </ul>
+        </div>
+      </div>
       <div class="comments">
         <div class="comment OTHER"></div>
         <div class="comment BASIC"></div>
@@ -49,32 +60,52 @@
     <div class="state_subcomponent">
       <div class="subcomponents">
         <div xmlns="" class="BASIC">
-          <select class="subcomponent" name="short_desc">
-            <option selected value="">(chose one)</option>
-            <option value="Macros">Macros</option>
-            <option value="BASIC">BASIC</option>
-            <option value="IDE">IDE</option>
-          </select>
+          <div class="subcomponent select">
+            <div class="select-header">
+              <div class="chosen">(chose one)</div>
+            </div>
+            <div class="choices">
+              <ul>
+                <li class="choice" data="">(all other problems)</li>
+                <li data="Macros" class="choice">Macros</li>
+                <li data="BASIC" class="choice">BASIC</li>
+                <li data="IDE" class="choice">IDE</li>
+              </ul>
+            </div>
+          </div>
         </div>
         <div xmlns="" class="Chart">
-          <select class="subcomponent" name="short_desc">
-            <option selected value="">(chose one)</option>
-            <option value="FILEOPEN">FILEOPEN</option>
-            <option value="FILESAFE">FILESAFE</option>
-            <option value="FORMATTING">FORMATTING</option>
-            <option value="PRINTING">PRINTING</option>
-            <option value="UI">UI</option>
-            <option value="VIEWING">VIEWING</option>
-          </select>
+          <div class="subcomponent select">
+            <div class="select-header">
+              <div class="chosen">(chose one)</div>
+            </div>
+            <div class="choices">
+              <ul>
+                <li class="choice" data="">(all other problems)</li>
+                <li data="FILEOPEN" class="choice">FILEOPEN</li>
+                <li data="FILESAFE" class="choice">FILESAFE</li>
+                <li data="FORMATTING" class="choice">FORMATTING</li>
+                <li data="PRINTING" class="choice">PRINTING</li>
+                <li data="UI" class="choice">UI</li>
+                <li data="VIEWING" class="choice">VIEWING</li>
+              </ul>
+            </div>
         </div>
       </div>
     </div>
 
     <div class="state_version">
-      <select xmlns="" name="version" class="versions">
-        <option value="?">(chose a version)</option>
-        <option value="VERSION1">VERSION1</option>
-      </select>
+      <div xmlns="" class="versions select">
+        <div class="select-header">
+          <div class="chosen">(chose one)</div>
+        </div>
+        <div class="choices">
+          <ul>
+            <li class="choice" data="unspecified">unspecified</li>
+            <li class="choice" data="VERSION1">VERSION1</li>
+          </ul>
+        </div>
+      </div>
     </div>
 
     <div class="state_description">
diff --git a/bug/bug/test.js b/bug/bug/test.js
index f8c6c86..0fcea78 100644
--- a/bug/bug/test.js
+++ b/bug/bug/test.js
@@ -98,19 +98,19 @@ test("state_signin", function() {
     $.bug.state_signin();
     equal($('.signin').css('display'), 'block');
     // fail to login, shows error
-    equal($('.error').text().length, 0, 'no error');
+    equal($('.error-container').css('display'), 'none', 'no error');
     try {
         $('.signin .go').click();
     } catch(e) {
         ok(true, 'caught error');
     }
-    ok($('.error').text().length > 0, 'error message');
+    equal($('.error-container').css('display'), 'block', 'no error');
     // successfull login
     $('.signin .user').val(user);
     $('.signin .password').val(password);
     $('.signin .go').click();
     equal($('.signin').css('display'), 'none');
-    equal($('.error').text().length, 0, 'no error');
+    equal($('.error-container').css('display'), 'none', 'no error');
     equal($('.username').text(), user);
 
     $.bug.ajax = $.ajax;
@@ -127,10 +127,10 @@ test("state_component", function() {
     equal(element.css('display'), 'none');
     $.bug.state_component();
     equal(element.css('display'), 'block');
-    equal($('.component', element).val(), '', 'initialy nothing selected');
+    equal($('.component .chosen', element).attr('data'), undefined, 'initialy nothing selected');
     equal($('.comment.BASIC', element).css('display'), 'none', 'BASIC hidden');
     equal($('.comment.OTHER', element).css('display'), 'none', 'OTHER hidden');
-    $(".component", element).val('BASIC').change();
+    $(".component .choice[data='BASIC']", element).click();
     equal($('.comment.BASIC', element).css('display'), 'block', 'BASIC is visible');
     equal($('.comment.OTHER', element).css('display'), 'none', 'OTHER hidden');
 
@@ -147,13 +147,12 @@ test("state_subcomponent", function() {
 
     var element = $('.state_subcomponent');
     equal(element.css('display'), 'none');
-    equal($('.active_subcomponent select', element).length, 0, 'no select element');
-    $('.state_component .component').val('BASIC');
+    equal($('.active_subcomponent .select', element).length, 0, 'no .select element');
+    $(".component .chosen").attr('data', 'BASIC');
     $.bug.state_subcomponent();
-    var h = $('.active_subcomponent select', element);
-    equal($('.active_subcomponent select', element).length, 1, 'one select element');
+    equal($('.active_subcomponent .select', element).length, 1, 'one .select element');
     equal(element.css('display'), 'block');
-    $(".active_subcomponent .subcomponent", element).val('BASIC').change();
+    $(".active_subcomponent .subcomponent .choice[data='BASIC']", element).click();
 
     $.bug.state_version = state_version;
     $.bug.refresh_related_bugs = refresh_related_bugs;
@@ -171,12 +170,12 @@ test("state_version", function() {
     $.bug.state_version();
     equal(element.css('display'), 'block');
     ok(element.hasClass('initialized'), 'is initialized');
-    equal($('.versions', element).val(), '?', 'initialy nothing selected');
+    equal($('.versions .chosen', element).attr('data'), undefined, 'initialy nothing selected');
     var version = 'VERSION1';
-    $(".versions", element).val(version).change();
+    $(".versions .choice[data='" + version + "']", element).click();
     // the second time, the selected index is not reset
     $.bug.state_version();
-    equal($('.versions', element).val(), version, 'same option selected');
+    equal($('.versions .chosen', element).attr('data'), version, 'same version selected');
 
     $.bug.state_description = state_description;
 });
@@ -212,16 +211,24 @@ test("state_submit", function() {
     $.bug.state_submit();
     equal(element.css('display'), 'block');
     ok(element.hasClass('initialized'), 'is initialized');
-    var component = $('.state_component .component').val();
-    var subcomponent = $('.state_subcomponent .active_subcomponent .subcomponent').val() + ': ' + $('.state_description .short').val();
-    var version = $('.state_version .versions').val();
-    var comment = $('.state_description .long').val();
+    $.bug.state_component();
+    var component = 'BASIC';
+    $(".state_component .choice[data='" + component + "']").click();
+    var subcomponent = 'SUBCOMPONENT';
+    $('.state_subcomponent .active_subcomponent .chosen').attr('data', subcomponent);
+    $.bug.state_version();
+    var version = 'VERSION';
+    $('.state_version .chosen').attr('data', version);
+    var short_desc = 'SHORT_DESC';
+    $('.state_description .short').val(short_desc);
+    var comment = 'LONG';
+    $('.state_description .long').val(comment);
     var bug = '40763';
     $.bug.ajax = function(type, url, data) {
         if(data.component == component &&
-           data.short_desc == subcomponent &&
-           data.comment == comment &&
-           data.version == version) {
+           data.version == version &&
+           data.short_desc == subcomponent + ': ' + short_desc &&
+           data.comment == comment) {
             return $.Deferred().resolve('<title>Bug ' + bug + ' Submitted');
         }
     };


More information about the Libreoffice-commits mailing list