1#!/bin/sh 2. "${srcdir=.}/init.sh"; path_prepend_ . ../src 3 4# Test of JavaScript JSX support. 5 6cat <<\EOF > xg-js-6.js 7class Foo extends React.Component { 8 render() { 9 return ( 10 <div className="aClass" /> 11 ); 12 } 13} 14class Bar extends React.Component { 15 render() { 16 return ( 17 <div> 18 <span className="someClass" /> 19 { gettext('Expected translation string #0') } 20 </div> 21 ); 22 } 23} 24 25var x1 = <x1></x1>; 26var s1 = _("Expected translation string #1"); 27var s2 = "foo"; 28var x2 = <{s2}>foo {s2} bar</{s2}>; 29var x3 = <x3 a1="/"><x4>{_("Expected translation string #2")}</x4></x3>; 30var x4 = <x5 a2='/'><x{_("Expected translation string #3")}> 31</x{_("Expected translation string #3")}></x5>; 32var x4 = <![CDATA[ 33 _("Unexpected translation string #1") 34]]>; 35var x5 = <!-- - _("Unexpected translation string #2") - -->; 36var s6 = _("Expected translation string #4"); 37var x6 = <? _("Unexpected translation string #3") ?>; 38var x7 = <!--- this is a comment --> <foo> 39var s7 = "<{x6}>_("Unexpected translation string #4")</{x6}>" + 40 "<!-- _("Unexpected translation string #5") --!>" + 41 _("Expected translation string #5"); 42var s8 = _("<x7>Expected translation string #6</x7>"); 43var x8 = <x8><x9>{_("<x8>{Expected translation string #7}</x8>")}</x9></x8> 44var x9 = <x10 attr='{_("Unexpected translation string #6")}'><x11>data</x11></x10>; 45var s9 = _("Expected translation string #8"); 46</foo>; 47function foo() { 48 return <a>{ 'b' }</a>; 49} 50var s10 = _("Expected translation string #9"); 51EOF 52 53: ${XGETTEXT=xgettext} 54${XGETTEXT} --add-comments --no-location -o xg-js-6.tmp xg-js-6.js 2>xg-js-6.err 55test $? = 0 || { cat xg-js-6.err; Exit 1; } 56func_filter_POT_Creation_Date xg-js-6.tmp xg-js-6.pot 57 58cat <<\EOF > xg-js-6.ok 59# SOME DESCRIPTIVE TITLE. 60# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER 61# This file is distributed under the same license as the PACKAGE package. 62# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR. 63# 64#, fuzzy 65msgid "" 66msgstr "" 67"Project-Id-Version: PACKAGE VERSION\n" 68"Report-Msgid-Bugs-To: \n" 69"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" 70"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" 71"Language-Team: LANGUAGE <LL@li.org>\n" 72"Language: \n" 73"MIME-Version: 1.0\n" 74"Content-Type: text/plain; charset=CHARSET\n" 75"Content-Transfer-Encoding: 8bit\n" 76 77msgid "Expected translation string #0" 78msgstr "" 79 80msgid "Expected translation string #1" 81msgstr "" 82 83msgid "Expected translation string #2" 84msgstr "" 85 86msgid "Expected translation string #3" 87msgstr "" 88 89msgid "Expected translation string #4" 90msgstr "" 91 92msgid "Expected translation string #5" 93msgstr "" 94 95msgid "<x7>Expected translation string #6</x7>" 96msgstr "" 97 98msgid "<x8>{Expected translation string #7}</x8>" 99msgstr "" 100 101msgid "Expected translation string #8" 102msgstr "" 103 104msgid "Expected translation string #9" 105msgstr "" 106EOF 107 108: ${DIFF=diff} 109${DIFF} xg-js-6.ok xg-js-6.pot 110result=$? 111 112exit $result 113