From: <bi...@us...> - 2008-10-02 22:56:55
|
Revision: 3422 http://oorexx.svn.sourceforge.net/oorexx/?rev=3422&view=rev Author: bigrixx Date: 2008-10-02 22:54:11 +0000 (Thu, 02 Oct 2008) Log Message: ----------- Add replaceAt tests Modified Paths: -------------- test/trunk/ooRexx/base/class/String/overlay.testGroup Added Paths: ----------- test/trunk/ooRexx/base/class/MutableBuffer/replaceAt.testGroup test/trunk/ooRexx/base/class/String/replaceat.testGroup Added: test/trunk/ooRexx/base/class/MutableBuffer/replaceAt.testGroup =================================================================== --- test/trunk/ooRexx/base/class/MutableBuffer/replaceAt.testGroup (rev 0) +++ test/trunk/ooRexx/base/class/MutableBuffer/replaceAt.testGroup 2008-10-02 22:54:11 UTC (rev 3422) @@ -0,0 +1,122 @@ +#!/usr/bin/rexx +/* + SVN Revision: $Rev: 3371 $ + Change Date: $Date: 2008-09-21 00:33:29 -0400 (Sun, 21 Sep 2008) $ +*/ +/*----------------------------------------------------------------------------*/ +/* */ +/* Copyright (c) 2007 - 2008 Rexx Language Association. All rights reserved. */ +/* */ +/* This program and the accompanying materials are made available under */ +/* the terms of the Common Public License v1.0 which accompanies this */ +/* distribution. A copy is also available at the following address: */ +/* http://www.oorexx.org/license.html */ +/* */ +/* Redistribution and use in source and binary forms, with or */ +/* without modification, are permitted provided that the following */ +/* conditions are met: */ +/* */ +/* Redistributions of source code must retain the above copyright */ +/* notice, this list of conditions and the following disclaimer. */ +/* Redistributions in binary form must reproduce the above copyright */ +/* notice, this list of conditions and the following disclaimer in */ +/* the documentation and/or other materials provided with the distribution. */ +/* */ +/* Neither the name of Rexx Language Association nor the names */ +/* of its contributors may be used to endorse or promote products */ +/* derived from this software without specific prior written permission. */ +/* */ +/* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS */ +/* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT */ +/* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS */ +/* FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT */ +/* OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, */ +/* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED */ +/* TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, */ +/* OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY */ +/* OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING */ +/* NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS */ +/* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ +/* */ +/*----------------------------------------------------------------------------*/ + parse source . . s + group = .TestGroup~new(s) + group~add(.ReplaceAt.testGroup) + + if group~isAutomatedTest then return group + + testResult = group~suite~execute~~print + +return testResult + +::requires 'ooTest.frm' -- load the ooRexxUnit classes + +::class "ReplaceAt.testGroup" subclass ooTestCase public + +::method 'test001' + self~expectSyntax(93.903) + xre = .mutablebuffer~new('')~replaceAt() + +--::method 'test002' +-- self~expectSyntax(40.3) +-- xre = .mutablebuffer~new("ABC")~replaceAt('ABC',) + +::method 'test003' + self~expectSyntax(93.903) + xre = .mutablebuffer~new('ABC')~replaceAt(,1) + +::method 'test003b' + self~expectSyntax(93.903) + xre = .mutablebuffer~new('ABC')~replaceAt("abc",,2) + +::method 'test003c' + self~expectSyntax(93.922) + xre = .mutablebuffer~new('ABC')~replaceAt("abc",1,2, " ") + +::method 'test004' + self~assertSame('bcdef', .mutablebuffer~new('abcdef')~replaceAt("", 1, 1)~string) + self~assertSame('bcdef', .mutablebuffer~new('abcdef')~replaceAt("", 1, 1, '*')~string) + +::method 'test005' + self~assertSame('abef', .mutablebuffer~new('abcdef')~replaceAt("", 3, 2)~string) + self~assertSame('abef', .mutablebuffer~new('abcdef')~replaceAt("", 3, 2, "*")~string) + +::method 'test006' + self~assertSame('abcdef', .mutablebuffer~new('abcdef')~replaceAt("", 3)~string) + self~assertSame('abcdef', .mutablebuffer~new('abcdef')~replaceAt("", 3,, "*")~string) + self~assertSame('abcdef', .mutablebuffer~new('abcdef')~replaceAt("", 3, 0)~string) + self~assertSame('abcdef', .mutablebuffer~new('abcdef')~replaceAt("", 3, 0, "*")~string) + +::method 'test007' + self~assertSame('abcdef ', .mutablebuffer~new('abcdef')~replaceAt("", 9)~string) + self~assertSame('abcdef**', .mutablebuffer~new('abcdef')~replaceAt("", 9,, "*")~string) + +::method 'test008' + self~assertSame('xxxbcdef', .mutablebuffer~new('abcdef')~replaceAt("xxx", 1, 1)~string) + self~assertSame('xxxbcdef', .mutablebuffer~new('abcdef')~replaceAt("xxx", 1, 1, '*')~string) + +::method 'test009' + self~assertSame('abxxxef', .mutablebuffer~new('abcdef')~replaceAt("xxx", 3, 2)~string) + self~assertSame('abxxxef', .mutablebuffer~new('abcdef')~replaceAt("xxx", 3, 2, "*")~string) + +::method 'test010' + self~assertSame('abxxxf', .mutablebuffer~new('abcdef')~replaceAt("xxx", 3)~string) + self~assertSame('abxxxf', .mutablebuffer~new('abcdef')~replaceAt("xxx", 3,, "*")~string) + self~assertSame('abxxxcdef', .mutablebuffer~new('abcdef')~replaceAt("xxx", 3, 0)~string) + self~assertSame('abxxxcdef', .mutablebuffer~new('abcdef')~replaceAt("xxx", 3, 0, "*")~string) + +::method 'test011' + self~assertSame('abcdef xxx', .mutablebuffer~new('abcdef')~replaceAt("xxx", 9)~string) + self~assertSame('abcdef**xxx', .mutablebuffer~new('abcdef')~replaceAt("xxx", 9,, "*")~string) + +::method 'test012' + self~assertSame('xxx', .mutablebuffer~new('')~replaceAt("xxx", 1, 1)~string) + self~assertSame('xxx', .mutablebuffer~new('')~replaceAt("xxx", 1, 1, '*')~string) + +::method 'test013' + self~assertSame(' xxx', .mutablebuffer~new('')~replaceAt("xxx", 3, 2)~string) + self~assertSame('**xxx', .mutablebuffer~new('')~replaceAt("xxx", 3, 2, "*")~string) + +::method 'test014' + self~assertSame(' xxx', .mutablebuffer~new('')~replaceAt("xxx", 3)~string) + self~assertSame('**xxx', .mutablebuffer~new('')~replaceAt("xxx", 3,, "*")~string) Modified: test/trunk/ooRexx/base/class/String/overlay.testGroup =================================================================== --- test/trunk/ooRexx/base/class/String/overlay.testGroup 2008-10-02 22:53:04 UTC (rev 3421) +++ test/trunk/ooRexx/base/class/String/overlay.testGroup 2008-10-02 22:54:11 UTC (rev 3422) @@ -88,7 +88,7 @@ --::method 'test002' -- self~expectSyntax(40.3) --- xre = overLay('ABC',) +-- xre = ""~overLay('ABC',) ::method 'test003' self~expectSyntax(93.903) Added: test/trunk/ooRexx/base/class/String/replaceat.testGroup =================================================================== --- test/trunk/ooRexx/base/class/String/replaceat.testGroup (rev 0) +++ test/trunk/ooRexx/base/class/String/replaceat.testGroup 2008-10-02 22:54:11 UTC (rev 3422) @@ -0,0 +1,126 @@ +#!/usr/bin/rexx +/* + SVN Revision: $Rev: 3371 $ + Change Date: $Date: 2008-09-21 00:33:29 -0400 (Sun, 21 Sep 2008) $ +*/ +/*----------------------------------------------------------------------------*/ +/* */ +/* Copyright (c) 2007 - 2008 Rexx Language Association. All rights reserved. */ +/* */ +/* This program and the accompanying materials are made available under */ +/* the terms of the Common Public License v1.0 which accompanies this */ +/* distribution. A copy is also available at the following address: */ +/* http://www.oorexx.org/license.html */ +/* */ +/* Redistribution and use in source and binary forms, with or */ +/* without modification, are permitted provided that the following */ +/* conditions are met: */ +/* */ +/* Redistributions of source code must retain the above copyright */ +/* notice, this list of conditions and the following disclaimer. */ +/* Redistributions in binary form must reproduce the above copyright */ +/* notice, this list of conditions and the following disclaimer in */ +/* the documentation and/or other materials provided with the distribution. */ +/* */ +/* Neither the name of Rexx Language Association nor the names */ +/* of its contributors may be used to endorse or promote products */ +/* derived from this software without specific prior written permission. */ +/* */ +/* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS */ +/* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT */ +/* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS */ +/* FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT */ +/* OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, */ +/* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED */ +/* TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, */ +/* OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY */ +/* OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING */ +/* NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS */ +/* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ +/* */ +/*----------------------------------------------------------------------------*/ + parse source . . s + group = .TestGroup~new(s) + group~add(.ReplaceAt.testGroup) + + if group~isAutomatedTest then return group + + testResult = group~suite~execute~~print + +return testResult + +::requires 'ooTest.frm' -- load the ooRexxUnit classes + +::class "ReplaceAt.testGroup" subclass ooTestCase public + +::method 'test001' + self~expectSyntax(93.903) + xre = ''~replaceAt() + +--::method 'test002' +-- self~expectSyntax(40.3) +-- xre = "ABC"~replaceAt('ABC',) + +::method 'test003' + self~expectSyntax(93.903) + xre = 'ABC'~replaceAt(,1) + +::method 'test003b' + self~expectSyntax(93.903) + xre = 'ABC'~replaceAt("abc",,2) + +::method 'test003c' + self~expectSyntax(93.922) + xre = 'ABC'~replaceAt("abc",1,2, " ") + +::method 'test004' + self~assertSame('bcdef', 'abcdef'~replaceAt("", 1, 1)) + self~assertSame('bcdef', 'abcdef'~replaceAt("", 1, 1, '*')) + +::method 'test005' + self~assertSame('abef', 'abcdef'~replaceAt("", 3, 2)) + self~assertSame('abef', 'abcdef'~replaceAt("", 3, 2, "*")) + +::method 'test006' + self~assertSame('abcdef', 'abcdef'~replaceAt("", 3)) + self~assertSame('abcdef', 'abcdef'~replaceAt("", 3,, "*")) + self~assertSame('abcdef', 'abcdef'~replaceAt("", 3, 0)) + self~assertSame('abcdef', 'abcdef'~replaceAt("", 3, 0, "*")) + +::method 'test007' + self~assertSame('abcdef ', 'abcdef'~replaceAt("", 9)) + self~assertSame('abcdef**', 'abcdef'~replaceAt("", 9,, "*")) + +::method 'test008' + self~assertSame('xxxbcdef', 'abcdef'~replaceAt("xxx", 1, 1)) + self~assertSame('xxxbcdef', 'abcdef'~replaceAt("xxx", 1, 1, '*')) + +::method 'test009' + self~assertSame('abxxxef', 'abcdef'~replaceAt("xxx", 3, 2)) + self~assertSame('abxxxef', 'abcdef'~replaceAt("xxx", 3, 2, "*")) + +::method 'test010' + self~assertSame('abxxxf', 'abcdef'~replaceAt("xxx", 3)) + self~assertSame('abxxxf', 'abcdef'~replaceAt("xxx", 3,, "*")) + self~assertSame('abxxxcdef', 'abcdef'~replaceAt("xxx", 3, 0)) + self~assertSame('abxxxcdef', 'abcdef'~replaceAt("xxx", 3, 0, "*")) + +::method 'test011' + self~assertSame('abcdef xxx', 'abcdef'~replaceAt("xxx", 9)) + self~assertSame('abcdef**xxx', 'abcdef'~replaceAt("xxx", 9,, "*")) + +::method 'test012' + self~assertSame('xxx', ''~replaceAt("xxx", 1, 1)) + self~assertSame('xxx', ''~replaceAt("xxx", 1, 1, '*')) + +::method 'test013' + self~assertSame(' xxx', ''~replaceAt("xxx", 3, 2)) + self~assertSame('**xxx', ''~replaceAt("xxx", 3, 2, "*")) + +::method 'test014' + self~assertSame(' xxx', ''~replaceAt("xxx", 3)) + self~assertSame('**xxx', ''~replaceAt("xxx", 3,, "*")) + + + + This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |