⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 stringformattests.as

📁 用于flash/flex的 as3的 2D图形图像图表的动态生成
💻 AS
字号:
package flare.tests
{
	import flare.util.Strings;
	import unitest.TestCase;
	
	public class StringFormatTests extends TestCase
	{
		public function StringFormatTests() {
			addTest("testNumberFormatting");
			addTest("testDateTimeFormatting");
		}
		
		private function run_tests(tests:Array):void {
			var pass:int, fail:int, i:int, s:String, t:Object, b:Boolean;
			for (pass=fail=i=0; i<tests.length; ++i) {
				t = tests[i];
				s = Strings.format("{0"+t.format+"}", t.input);
				assertEquals(t.result, s, t.format);
			}
		}

		public function testNumberFormatting():void
		{
			// -- Number Formatting ----------------------------
			var d:Number = 12345.9876543210;
			var c:Number = 12345.30100;
			var num_tests:Array = [
				// custom formatters
				{format:":##;(##)", input:-1234, result:"(1234)"},
				{format:":##", input:1234, result:"1234"},
				{format:":00", input:1234, result:"1234"},
				{format:":#####", input:123, result:"123"},
				{format:":00000", input:123, result:"00123"},
				{format:":(###) ### - ####", input:1234567890, result:"(123) 456 - 7890"},
				{format:":#.##", input:1.2, result:"1.2"},
				{format:":0.00", input:1.2, result:"1.20"},
				{format:":00.00", input:1.2, result:"01.20"},
				{format:":#,#", input:1234567890, result:"1,234,567,890"},
				{format:":#,,", input:1234567890, result:"1235"},
				{format:":#,,,", input:1234567890, result:"1"},
				{format:":#,##0,,", input:1234567890, result:"1,235"},
				{format:":#0.##%", input:0.086, result:"8.6%"},
				{format:":0.###E+0", input:86000, result:"8.6E+4"},
				{format:":0.###E+000", input:86000, result:"8.6E+004"},
				{format:":0.###E-000", input:86000, result:"8.6E004"},
				{format:":[##-##-##]", input:123456, result:"[12-34-56]"},
				{format:":##;(##)", input:1234, result:"1234"},
				{format:":0000000", input:c, result:"0012345"},
				{format:":#######", input:c, result:"12345"},
				{format:":0000000.0000#", input:c, result:"0012345.3010"},
				{format:":#######.#####", input:c, result:"12345.301"},
				{format:":00000000%", input:c, result:"01234530%"},
				{format:":########%", input:c, result:"1234530%"},
				{format:":0.00e00", input:c, result:"1.23e04"},
				{format:":#.##e00", input:c, result:"1.23e04"},
				{format:":0.e+00.-00", input:c, result:"1.e+04-23"},
				{format:":#.e+00.-##", input:c, result:"1.e+04-23"},
				{format:":000,", input:c, result:"012"},
				{format:":###,", input:c, result:"12"},
				{format:":0,", input:c, result:"12"},
				{format:":#,", input:c, result:"12"},
				{format:",-8:#,", input:c, result:"12      "},
				{format:",8:#,", input:c, result:"      12"},
				{format:":00,000.00", input:c, result:"12,345.30"},
				{format:":##,###.##", input:c, result:"12,345.3"},
				{format:":0,0.00", input:c, result:"12,345.30"},
				{format:":#,#.##", input:c, result:"12,345.3"},
				{format:":$0;($0);Zero", input:123, result:"$123"},
				{format:":$0;($0);Zero", input:-123, result:"($123)"},
				{format:":$0;($0);Zero", input:0, result:"Zero"},
				{format:":0000000", input:d, result:"0012346"},
				{format:":#######", input:d, result:"12346"},
				{format:":0000000.00", input:d, result:"0012345.99"},
				{format:":#######.##", input:d, result:"12345.99"},
				{format:":000.000e0,0%", input:32100.123, result:"321.001e42%"},
	            {format:":000.000%", input:32100.123, result:"3210012.300%"},
	            {format:":000%", input:32100.123, result:"3210012%"},
	            {format:":0,0.0", input:32100.123, result:"32,100.1"},
	            {format:":0", input:32100.123, result:"32100"},
	            {format:":00", input:32100.123, result:"32100"},
	            {format:":0,0000,0", input:32100123, result:"32,100,123"},
	            {format:":00000,0,.000000", input:32100123.123456789, result:"032,100.123123"},
	            {format:":###.###e#,#%", input:32100.123, result:"3210012.3e%"},
	            {format:":0,000%", input:3210.01, result:"321,001%"},
	            {format:":00%00", input:3210.01, result:"3210%01"},
	            {format:":0.00e+0-00e0", input:123456789, result:"1.23e+8-45e7"},
	            {format:":0.00e+", input:123456789, result:"123456789.00e+"},
	            {format:":0.00e", input:123456789, result:"123456789.00e"},
	            {format:":0ea.00e+00", input:123456789, result:"1ea.23e+08"},
	            {format:":###e+00.00", input:123456789, result:"123e+06.46"},
	            {format:":0.00e+0", input:123456789000000000, result:"1.23e+17"},
	            {format:":0,0.0,0,,,", input:1234567.89, result:"1,234,567.89"},
	            {format:":0,0-0-0,0.00", input:1234567.89, result:"1,234,-5-67.89"},
	            {format:":###000", input:12345, result:"12345"},
	            {format:":000###", input:12345, result:"012345"},
	            {format:":0000000,00", input:12345, result:"000,012,345"},
	            {format:":0.########e+0", input:1.234e56, result:"1.234e+56"},
	            {format:":0.########e-0", input:4.321e-56, result:"4.321e-56"},
	            {format:":0.0",input:7.1E-15, result:"0.0"},
	            {format:":0.0",input:1+7.1E-15, result:"1.0"},
	            {format:":0.0",input:0.9999999999, result:"1.0"},
	            {format:":0.#######",input:0.9999999999, result:"1"},
	            {format:":0",input:1000000000000.0, result:"1000000000000"},
	            // standard formatters
	            {format:":c", input:12345, result:"$12,345.00"},
	            {format:":C04", input:12345, result:"$12,345.0000"},
	            {format:":d", input:12345, result:"12345"},
	            {format:":D6", input:12345, result:"012345"},	            
	            {format:":e", input:12345, result:"1.23e+4"},
	            {format:":E", input:0.00012345, result:"1.23E-4"},
	            {format:":e4", input:12345000000, result:"1.2345e+10"},
	            {format:":f4", input:123.45, result:"123.4500"},
	            {format:":F2", input:123.45, result:"123.45"},
	            {format:":n", input:12345, result:"12,345.00"},
	            {format:":N4", input:12345.0001, result:"12,345.0001"},
	            {format:":x", input:255, result:"ff"},
	            {format:":x4", input:255, result:"00ff"},
	            {format:":X5", input:255, result:"000FF"},
			];
			run_tests(num_tests);
		}		

		public function testDateTimeFormatting():void
		{			
			// -- Date/Time Formatting -------------------------
			var d1:Date = new Date(1979,5,15);
			var d2:Date = new Date(1979,11,7,13,8,12,123);
			var date_tests:Array = [
				{format:":yyyy/MM/dd", input:d1, result:"1979/06/15"},
				{format:":yy/MM/dd", input:d1, result:"79/06/15"},
				{format:":yy/MM/dd", input:d2, result:"79/12/07"},
				{format:":%h", input:d2, result:"1"},
				{format:":d", input:d2, result:"12/07/1979"},
				{format:":ddd MMMM d, yyyy", input:d2, result:"Fri December 7, 1979"},
				{format:":MMM-dd", input:d2, result:"Dec-07"},
				{format:":HH:mm:ss tt", input:d2, result:"13:08:12 PM"},
				{format:":hh:mm:ss tt", input:d2, result:"01:08:12 PM"},
				{format:":dddd h:mmt", input:d2, result:"Friday 1:08P"},
				{format:":'Freaky' dddd \"the 13th\"", input:d2, result:"Freaky Friday the 13th"}
			];
			run_tests(date_tests);
		}
		
	} // end of class StringFormatTests
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -