History: Multilingual_Wiki
Source of version: 26
Copy to clipboard
Enables most multilingual wiki and assign the translation module. {maketoc} !Configuration code {CODE(caption=>YAML,wrap=>1)} preferences: feature_multilingual: y feature_translation: y featur_urgent_translation: y feature_multilingual_structures: y feature_best_language: y feature_detect_language: y quantify_changes: y freetags_multilingual: y wiki_page_regex: full # Support insertion of translated string in wiki markup wikiplugin_tr: y lang_use_db: y objects: - type: module data: position: right order: 20 name: switch_lang groups: [ Anonymous, Registered ] - type: module data: position: right order: 10 name: translation groups: [ Anonymous, Registered ] {CODE} After this profile is activated, you will notice a "translate" button on wiki pages. Once you translate wiki pages, you will start seeing (when relevant), the "translation" module which provides you information about the state of translation. You can see this in action over at: www.wiki-translation.com !Test plan Below is a list of scenarios that needs to be tested for this profile. Eventually, they should be implemented as automated tests using Selenium. ^Note: This test plan is still highly incomplete!^ __Last tested__ * __Date:__ 2009-12-04 * __By who:__ Alain Désilets * __Branch/Revision number:__ Tiki 4.x/r23661 !!Setting up the site for testing * Reinstall the DB, using Barebones profile * Create page 'English Page With Undfefined Language' ** __IMPORTANT:__ Create this page __before installing the multilingual profile__, so as to simulate a situation where pages with undefined languages were created, before a decision was taken to make the site multilingual (this is a common thing). * Install the Multilingual_Wiki profile * Set the default site languages as English. Set French and Spanish as alternative languages ** Admin > i18n ** __Default Language:__ English ** Click on the __Restrict support languages__ checkbox. ** A list of languages opens up. Holding down the Ctrl key, click on English, French and Spanish. ** __Change preferences__ button. * Enable different kinds of searching ** Search feature Admin > Features > Search ** Wiki Search Box module (make sure you grand permission to all groups) ** Search Box module (make sure you grant permission to all) !!Switching between languages ^Need to provide more details for the various scenarios^ * Go to a unilingual page ** Make sure that the language picklist does not mention other languges * Go to a bilingual page (en and fr) ** Use the language picklist to move between the two languages * Go to a trilingual page (en, fr, es) ** Use the language picklist to move between the three languages !!Language guessing * Login as test_user and set langauges preferences: ** Set French as the first language, and English is the second language * Login as admin and set the site's default languges to English * Still as admin, make sure that the langauge guessing feature is enabled * Go to a page that is available in En and Fr ** Make sure that by default, the page is displayed in Fr, even though the site's default language is En. !!Create a new translation * Login as test_user. * Go to an English page that does not have a French translation yet. * Click on the __Translate__ button. * Specify __French__ as the languge of the new translation. * Enter the name for the French translation. * Click on the __???___ button. * Make sure that the content of the original English page was pasted into the new French page. * Make sure that a notice __Traduction en cours__ was automatically inserted at the top of the page. * Replace some of the English text by French text. * Click on __Partial Translation__ button. * Go to the English page. ** Check that the picklist now mentions French. ** Click on the French version, and make sure it takes you to the new French page you created. !!Managing translation of updates * Go to an English page that has a French translation where the two are considered to be 100% up to date. * Change a few words in the English page, and save. * Make sure that the translation assistant (on the right column): ** Says that the French page needs updating. ** Says that the English page is still 100% up to date * Switch to the French page, and check that: ** It says that it needs to be updated from English. ** It is less than 100% up to date. * Click on the __Update from__ icon. * Make sure that: ** You see a diff of the changes you made on the English page. ** You get an edit area with the current content of the French page. ** Reproduce part of the English change in the French, and click on __Partial Translation__ button. ** Make sure that French page is still listed as needing to be updated, and as being less than 100% up to date. * Click again on the __Update from__ icon, and finish translating the English change. ** This time, click on __Complete Translation__ button. * Make sure that the French page is now listed as being 100% up to date, and that it does not have an _update from__ icon anymore. !!Testing custom translated strings * Create a custom translated string for FR ** __Admin > i18n > Customized String Translation tab__ ** __French > Edit__ *** Replace the following line: {CODE()}//"Hello"=>"My Hello",{CODE} *** With this {CODE()}"will be translated automatically"=>"sera traduit automatiquement",{CODE} *** __Save__ button. ** NOTE: This may not be necessary??? __English > Edit__ *** Replace the following line: {CODE()}//"Hello"=>"My Hello",{CODE} *** With this {CODE()}"will be translated automatically"=>"will be translated automatically",{CODE} *** __Save__ button. * Create a French page with that custom string in it ** Create a page __Page Francaise__. ** Enter following in it: {CODE()}{TR()}will be translated automatically{TR}{CODE} ** Make sure it is a French page *** __Translate__ button, then *** In __Change language for this page__ section, choose French and then click on __Change language__ button. ** Go back to page __Page Francaise__, and verify that the English string is actually displayed in French, i.e. "sera traduit automatiquement". *** BROKEN-2009-12-04: Custom string not translated. Reported in this bug tracker item [http://dev.tikiwiki.org/tiki-view_tracker_item.php?itemId=2913]. !!Simultaneous updates in two languages at once * Go to a page that has En and Fr, and where both are considered to be 100% up to date. * Make a change to the En page. * Make a change to the Fr page. * Check that En page: ** Is shown as less than 100% up to date. ** Has an icon for updating FROM fr ** Has an icon for updating TO fr * Check that Fr page: ** Is shown as less than 100% up to date. ** Has an icon for updating FROM en ** Has an icon for updating TO en * From the Fr page, click on the upddate from icon, translate the update, then click on Complete Translation. * Make sure that the Fr version: ** is now considered as 100% up to date, ** Does not have an update from En icon. ** But still has an update to En icon. * Make sure that the En version: ** is still considered to be __less than__ 100% up to date, ** Still has an update from Fr icon. ** Does not have an update to Fr icon. * Still on the En page, click on the update from fr icon, translate the change, and click on __Complete Translation__. * Make sure that En page: ** Is now shown to be 100% up to date. ** Does not have either an update to fr, nor update from fr icon. * Make sure that Fr page: ** Is now shown to be 100% up to date. ** Does not have either an update to en, nor update from en icon. !!Changing language of a page * Go to an English page that's also available in French, but not in Spanish. * Switch to the French page using the language picklist. * Make sure that the language picklist has French as the language * Change the page's language to Spanish ** Click on the __Translate__ button ** In the bottom section, select Spanish as the language and click on the __Change language__ button. * Go back to the English version of the page ** Make sure that the language picklist does not mention French anymore, but that it mentions Spanish ** Switch to the Spanish page, and make sure that it is the French page whose language you changed to Spanish. ** Turn the language of that page back to French, for future tests. !!Assing existing page as a translation * Create a french page __Bonjour le monde__, and type "Bonjour" in it. * Create an english page __Hello world__, and type "Hello" in it. * On __Hello world__ page, click on __Translate__ button. * Assign page __Bonjour le monde__ as a translation. * NEED TO FINISH DESCRIBING THIS SCENARIO. !!Searching in different languages * Search with the Wiki Search box ** Make sure that the search language defaulted to "any language". Unckeck __exact match__ and try the following scenarios *** Search for a word that matches only the names of English pages *** Search for a word that matches only the names of French pages *** Search for a word that matches only the names of English AND French pages *** Search for a word that does not match ANY page in ANY language. ** Change the search language to "english" and do the following: *** Search for a word that matches the names of an English page only. *** Search for a word that does NOT match the name of an English page, but DOES match the name of a French page. *** Search for a word that matches the names of pages in BOTH English and French. *** Search for a word that does NOT matche the name of ANY page in ANY language. * Search with the Search box (NOT the __Wiki__ Search box). * Make sure the language defaulted to "any language", and try the following. ** Search for a word that only exists in an English page. ** Search for a word that only exists in a French page. ** Search for a word that exists in BOTH an English and a French page. ** Search for a word that exists in NEITHER an English nor a French page. * Change the search language to "english" and do the following: ** Search for a word that only exists in an English page. ** Search for a word that only exists in a French page. ** Search for a word that exists in BOTH an English and a French page. ** Search for a word that exists in NEITHER an English nor a French page. * Change the search language to "french" and do the following: ** Search for a word that only exists in an English page. ** Search for a word that only exists in a French page. ** Search for a word that exists in BOTH an English and a French page. ** Search for a word that exists in NEITHER an English nor a French page. * Search for word 'undefined', with language set to 'any' ** Make sure page 'English Page With Undfefined Language' is found * Search for word 'undefined', with language set to 'French' ** Make sure page 'English Page With Undfefined Language' is found * Search for word 'undefined', with language set to 'English' ** Make sure page 'English Page With Undfefined Language' is found !!Search for a page, then create it * In the Wiki Search Box, search for 'Blah' ** The system tells you that it does not exist. * Click on the Create button. * Make sure the system asks you to set the pages's language. * Make sure the selected language is English (i.e., the site's default language). * Select French as the language. * Finish creating the page, and save it. * Make sure that the page was created in French, i.e. ** Check that the language picklist (top right) displays French. !!Page creation with multilingual features off does not ask for language * Turn the multilingual features off * In the Wiki Search box, type the name of page that does not exist ye. * Click on the Create button. * Check that the system does __NOT__ ask you for the language of that page. * Finish creating the page, and make sure it displays correctly. * Turn multilingual features back on