summaryrefslogtreecommitdiff
path: root/qadevOOo/tests/basic/ifc/sdbcx/XRowLocate/sdbcx_XRowLocate.xba
diff options
context:
space:
mode:
Diffstat (limited to 'qadevOOo/tests/basic/ifc/sdbcx/XRowLocate/sdbcx_XRowLocate.xba')
-rw-r--r--qadevOOo/tests/basic/ifc/sdbcx/XRowLocate/sdbcx_XRowLocate.xba132
1 files changed, 132 insertions, 0 deletions
diff --git a/qadevOOo/tests/basic/ifc/sdbcx/XRowLocate/sdbcx_XRowLocate.xba b/qadevOOo/tests/basic/ifc/sdbcx/XRowLocate/sdbcx_XRowLocate.xba
new file mode 100644
index 000000000000..83da2a0ecd07
--- /dev/null
+++ b/qadevOOo/tests/basic/ifc/sdbcx/XRowLocate/sdbcx_XRowLocate.xba
@@ -0,0 +1,132 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE script:module PUBLIC "-//OpenOffice.org//DTD OfficeDocument 1.0//EN" "module.dtd">
+<script:module xmlns:script="http://openoffice.org/2000/script" script:name="sdbcx_XRowLocate" script:language="StarBasic">
+
+
+'*************************************************************************
+'
+' DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+'
+' Copyright 2008 by Sun Microsystems, Inc.
+'
+' OpenOffice.org - a multi-platform office productivity suite
+'
+' $RCSfile: sdbcx_XRowLocate.xba,v $
+'
+' $Revision: 1.3 $
+'
+' This file is part of OpenOffice.org.
+'
+' OpenOffice.org is free software: you can redistribute it and/or modify
+' it under the terms of the GNU Lesser General Public License version 3
+' only, as published by the Free Software Foundation.
+'
+' OpenOffice.org is distributed in the hope that it will be useful,
+' but WITHOUT ANY WARRANTY; without even the implied warranty of
+' MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+' GNU Lesser General Public License version 3 for more details
+' (a copy is included in the LICENSE file that accompanied this code).
+'
+' You should have received a copy of the GNU Lesser General Public License
+' version 3 along with OpenOffice.org. If not, see
+' <http://www.openoffice.org/license.html>
+' for a copy of the LGPLv3 License.
+'
+'*************************************************************************
+'*************************************************************************
+
+
+
+
+
+Sub RunTest()
+
+'*************************************************************************
+' INTERFACE:
+' com.sun.star.sdbcx.XRowLocate
+'*************************************************************************
+On Error Goto ErrHndl
+ Dim bOK As Boolean
+ Dim oBM1 As Variant
+ Dim oBM2 As Variant
+ Dim oBM3 As Variant
+ Dim oBM4 As Variant
+ Dim cDscr1 As String
+ Dim cDscr2 As String
+
+ ReCreateObj()
+
+ oObj.first()
+
+ Test.StartMethod("getBookmark()")
+ bOK = true
+ oBM1 = oObj.getBookmark()
+ cDscr1 = oObj.getString(1)
+ Out.Log("Set bookmark to row " + cDscr1)
+ bOK = bOK AND NOT isNULL(oBM1)
+ Test.MethodTested("getBookmark()", bOK)
+
+ Test.StartMethod("moveToBookmark()")
+ bOK = true
+ oObj.next()
+ cDscr2 = oObj.getString(1)
+ Out.Log("Now on " + cDscr2)
+ oObj.moveToBookmark(oBM1)
+ Out.Log("After movment on " + oObj.getString(1))
+ bOK = bOK AND oObj.getString(1) = cDscr1
+ Test.MethodTested("moveToBookmark()", bOK)
+
+ Test.StartMethod("moveRelativeToBookmark()")
+ bOK = true
+ oObj.moveRelativeToBookmark(oBM1, 1)
+ Out.Log("After movment on " + oObj.getString(1))
+ bOK = bOK AND oObj.getString(1) = cDscr2
+ Test.MethodTested("moveRelativeToBookmark()", bOK)
+
+ oBM2 = oObj.getBookmark()
+
+ Test.StartMethod("compareBookmarks()")
+ bOK = true
+ ' if database driver supports ordered marks then
+ ' compareBookmarks should return values CompareBookmark::LESS or
+ ' CompareBookmark::GREATER in case when bookmarks are not equal
+ ' otherwise this method returnes only CompareBookmark::NOT_EQUAL
+
+ if (oObj.hasOrderedBookmarks()) then
+ bOK = bOK AND oObj.compareBookmarks(oBM1, oBM1) = com.sun.star.sdbcx.CompareBookmark.EQUAL
+ bOK = bOK AND oObj.compareBookmarks(oBM1, oBM2) = com.sun.star.sdbcx.CompareBookmark.LESS
+ bOK = bOK AND oObj.compareBookmarks(oBM2, oBM1) = com.sun.star.sdbcx.CompareBookmark.GREATER
+ else
+ bOK = bOK AND oObj.compareBookmarks(oBM1, oBM1) = com.sun.star.sdbcx.CompareBookmark.EQUAL
+ bOK = bOK AND oObj.compareBookmarks(oBM1, oBM2) = com.sun.star.sdbcx.CompareBookmark.NOT_EQUAL
+ bOK = bOK AND oObj.compareBookmarks(oBM2, oBM1) = com.sun.star.sdbcx.CompareBookmark.NOT_EQUAL
+ end if
+ Test.MethodTested("compareBookmarks()", bOK)
+
+ Test.StartMethod("hasOrderedBookmarks()")
+ bOK = true
+ bOK = bOK AND oObj.hasOrderedBookmarks()
+ Test.MethodTested("hasOrderedBookmarks()", bOK)
+
+ Test.StartMethod("hashBookmark()")
+ bOK = true
+
+ oObj.last()
+ oBM3 = oObj.getBookmark()
+ oObj.first()
+ oBM4 = oObj.getBookmark()
+
+ bOK = bOK AND oObj.hashBookmark(oBM1) &lt;&gt; oObj.hashBookmark(oBM2)
+ bOK = bOK AND oObj.hashBookmark(oBM1) &lt;&gt; oObj.hashBookmark(oBM3)
+ bOK = bOK AND oObj.hashBookmark(oBM3) &lt;&gt; oObj.hashBookmark(oBM2)
+ bOK = bOK AND oObj.hashBookmark(oBM1) = oObj.hashBookmark(oBM4)
+ Test.MethodTested("hashBookmark()", bOK)
+
+
+Exit Sub
+ErrHndl:
+ Test.Exception()
+ bOK = false
+ resume next
+End Sub
+</script:module>