blob: ed5ffdb73bed6099e443ea0c11c222691828d03f [file] [log] [blame]
<?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="linguistic2_XDictionaryList" script:language="StarBasic">
'*************************************************************************
'
' Licensed to the Apache Software Foundation (ASF) under one
' or more contributor license agreements. See the NOTICE file
' distributed with this work for additional information
' regarding copyright ownership. The ASF licenses this file
' to you under the Apache License, Version 2.0 (the
' "License"); you may not use this file except in compliance
' with the License. You may obtain a copy of the License at
'
' http://www.apache.org/licenses/LICENSE-2.0
'
' Unless required by applicable law or agreed to in writing,
' software distributed under the License is distributed on an
' "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
' KIND, either express or implied. See the License for the
' specific language governing permissions and limitations
' under the License.
'
'*************************************************************************
' Be sure that all variables are dimensioned:
option explicit
Dim bCB1 As Long, bCB2 As Long
Sub RunTest()
'*************************************************************************
' INTERFACE:
' com.sun.star.linguistic2.XDictionaryList
'*************************************************************************
On Error Goto ErrHndl
Dim bOK As Boolean
Dim vGetDics As Variant
Dim oNegative As Object
Dim vLocale As new com.sun.star.lang.Locale
Dim nPrevious As Integer
Dim oAddDic As Object
Dim oNewDic As Object
Dim oListenDic1 As Object
Dim oListenDic As Object
Dim oListener1 As Object
Dim oListener2 As Object
oListener1 = createUNOListener("CB1_", "com.sun.star.linguistic2.XDictionaryListEventListener")
oListener2 = createUNOListener("CB2_", "com.sun.star.linguistic2.XDictionaryListEventListener")
bCB1 = 0
bCB2 = 0
vLocale.Language = "en"
vLocale.Country = "US"
vLocale.Variant = "WIN"
Test.StartMethod("getCount()")
bOK = true
Out.Log("getCouint retunrs " + oObj.getCount())
bOK = bOK AND (oObj.getCount() &gt; 0)
Test.MethodTested("getCount()", bOK)
Test.StartMethod("getDictionaries()")
bOK = true
vGetDics = oObj.getDictionaries()
Out.Log("oObj.getDictionaries returned " + (uBound(vGetDics) + 1) + " elements")
bOK = bOK AND ((uBound(vGetDics) + 1) = oObj.getCount())
Test.MethodTested("getDictionaries()", bOK)
Test.StartMethod("getDictionaryByName()")
bOK = true
Out.Log("Try to get 'NegativDic' which should created in ObjCreation()"
oNegative = oObj.getDictionaryByName("NegativDic")
bOK = bOK AND hasUnoInterfaces(oNegative, "com.sun.star.linguistic2.XDictionary")
Test.MethodTested("getDictionaryByName()", bOK)
Test.StartMethod("createDictionary()")
bOK = true
oAddDic = oObj.createDictionary("AddedDicBasic", vLocale,_
com.sun.star.linguistic2.DictionaryType.POSITIVE,"")
bOK = bOK AND hasUnoInterfaces(oAddDic, "com.sun.star.linguistic2.XDictionary")
Test.MethodTested("createDictionary()", bOK)
Test.StartMethod("addDictionary()")
bOK = true
nPrevious = oObj.getCount()
oObj.addDictionary(oAddDic)
Out.Log("Dictionaries before: " + nPrevious + ", after: " + oObj.getCount())
bOK = bOK AND ((nPrevious + 1) = oObj.getCount())
Test.MethodTested("addDictionary()", bOK)
Test.StartMethod("removeDictionary()")
bOK = true
oObj.removeDictionary(oAddDic)
bOK = bOK AND (nPrevious = oObj.getCount())
Test.MethodTested("removeDictionary()", bOK)
Test.StartMethod("addDictionaryListEventListener()")
Dim bListOK As Boolean
bOK = true
bCB1 = false
bCB2 = false
oListenDic = oObj.createDictionary("ListenDicBasic", vLocale,_
com.sun.star.linguistic2.DictionaryType.POSITIVE,"")
bListOK = oObj.addDictionaryListEventListener(oListener1, false)
Out.Log("First listener was added: " + bListOK)
bListOK = oObj.addDictionaryListEventListener(oListener2, false)
Out.Log("Second listener was added: " + bListOK)
Test.StartMethod("flushEvents()")
Out.Log("The level of buffer returned by flushEvents() is " + oObj.flushEvents())
oObj.addDictionary(oListenDic)
oListenDic.setActive(true)
' oListenDic.add("AWord", false, "")
Out.Log("The level of buffer returned by flushEvents() is " + oObj.flushEvents())
bOK = bOK AND bCB1 AND bCB2
oObj.removeDictionary(oListenDic)
Test.MethodTested("addDictionaryListEventListener()", bOK)
Test.MethodTested("flushEvents()", bOK)
Test.StartMethod("removeDictionaryListEventListener()")
bOK = true
bCB1 = 0
bCB2 = 0
oObj.removeDictionaryListEventListener(oListener2)
oListenDic1 = oObj.createDictionary("ListenDicBasic1", vLocale,_
com.sun.star.linguistic2.DictionaryType.POSITIVE,"")
oObj.flushEvents()
oObj.addDictionary(oListenDic)
oListenDic.setActive(true)
oObj.flushEvents()
oObj.removeDictionary(oListenDic)
bOK = bOK AND bCB1 AND NOT bCB2
Test.MethodTested("removeDictionaryListEventListener()", bOK)
Test.StartMethod("beginCollectEvents()")
bOK = true
Dim bufSize1 As Integer, bufSize2 As Integer
bufSize1 = oObj.beginCollectEvents()
bufSize2 = oObj.beginCollectEvents()
bOK = bOK AND (bufSize2 = bufSize1 + 1)
Test.MethodTested("beginCollectEvents()", bOK)
Test.StartMethod("endCollectEvents()")
bufSize1 = oObj.endCollectEvents()
bOK = bOK AND (bufSize2 = bufSize1 + 1)
Test.MethodTested("endCollectEvents()", bOK)
Exit Sub
ErrHndl:
Test.Exception()
bOK = false
resume next
End Sub
Sub CB1_processDictionaryListEvent
Out.Log("CallBack for Listener1 was called.")
bCB1 = bCB1 + 1
End Sub
Sub CB1_disposing
End Sub
Sub CB2_processDictionaryListEvent
Out.Log("CallBack for Listener2 was called.")
bCB2 = bCB2 + 1
End Sub
Sub CB2_disposing
End Sub
</script:module>