mirror of
				https://github.com/zulip/zulip.git
				synced 2025-11-04 05:53:43 +00:00 
			
		
		
		
	zjsunit: Add i18n minimal lib.
This commit is contained in:
		
							
								
								
									
										23
									
								
								frontend_tests/zjsunit/i18n.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										23
									
								
								frontend_tests/zjsunit/i18n.js
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,23 @@
 | 
			
		||||
var i18n = {};
 | 
			
		||||
 | 
			
		||||
i18n.t = function (str, context) {
 | 
			
		||||
    // We are currently assuming that we will recieve context in form of a Dict
 | 
			
		||||
    // of key value pairs and string will be having substitution for keywords
 | 
			
		||||
    // like these "__keyword__".
 | 
			
		||||
    if (context === undefined) {
 | 
			
		||||
        return str;
 | 
			
		||||
    }
 | 
			
		||||
    var keyword_regex = /__(\w)+__/g;
 | 
			
		||||
    var keys_in_str = str.match(keyword_regex);
 | 
			
		||||
    var keywords = _.map(keys_in_str, function (key) {
 | 
			
		||||
        return key.slice(2, key.length - 2);
 | 
			
		||||
    });
 | 
			
		||||
    _.each(keywords, function (keyword) {
 | 
			
		||||
        str = str.replace('__' + keyword + '__', context[keyword]);
 | 
			
		||||
    });
 | 
			
		||||
    return 'translated: ' + str;
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
i18n.ensure_i18n = function (f) { f(); };
 | 
			
		||||
 | 
			
		||||
module.exports = i18n;
 | 
			
		||||
@@ -42,6 +42,9 @@ global.append_test_output = output.append_test_output;
 | 
			
		||||
// Set up fake jQuery
 | 
			
		||||
global.make_zjquery = require('./zjquery.js').make_zjquery;
 | 
			
		||||
 | 
			
		||||
// Set up fake translation
 | 
			
		||||
global.i18n = require('./i18n.js');
 | 
			
		||||
 | 
			
		||||
var noop = function () {};
 | 
			
		||||
 | 
			
		||||
output.start_writing();
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user