285 lines
7.6 KiB
Plaintext
Executable File
285 lines
7.6 KiB
Plaintext
Executable File
macroScript grpAssembliesInGroups
|
|
ButtonText:"grpAssembliesInGroups"
|
|
Category:"Qe Tools - Unit Tests Groups"
|
|
internalCategory:"Qe Tools - Unit Tests Groups"
|
|
Tooltip:"grpAssembliesInGroups"
|
|
-- Needs Icon
|
|
--Icon:#("Max_edit_modifiers",1)
|
|
(
|
|
-- Unit test fixture setup
|
|
fn setupUT =
|
|
(
|
|
resetmaxFile #noPrompt
|
|
-- create an assembly and a "free" object
|
|
global _boxes = #()
|
|
b = box()
|
|
append _boxes b
|
|
for i=1 to 2 do
|
|
(
|
|
tmpBox = copy b
|
|
tmpBox.pos = [i * 30, 0, 0]
|
|
append _boxes tmpBox
|
|
)
|
|
global _a = assemblymgr.assemble #(_boxes[1], _boxes[2]) name:"a" classDesc:Dummy
|
|
|
|
)
|
|
|
|
-- Unit test fixture teardown
|
|
fn teardownUT =
|
|
(
|
|
--resetmaxFile #noPrompt
|
|
)
|
|
|
|
-----------------------------------------------------
|
|
--
|
|
fn test0 =
|
|
(
|
|
g = group #(_boxes[3], _a) name:"g"
|
|
Select g
|
|
print "test0 - CanDisassemble on closed group with inner assemblies (NO)"
|
|
res = assemblymgr.canDisassemble $
|
|
if (res == true)
|
|
then throw "FAILED\n"
|
|
else print "PASSED\n"
|
|
print "test0 - CanExplode on closed group with inner assemblies (NO)"
|
|
res = assemblymgr.canExplode $
|
|
if (res == true)
|
|
then throw "FAILED\n"
|
|
else print "PASSED\n"
|
|
print "test0 - CanExplode on closed assembly in closed group (NO)"
|
|
res = assemblymgr.canExplode _a
|
|
if (res == true)
|
|
then throw "FAILED\n"
|
|
else print "PASSED\n"
|
|
print "test0 - CanOpen on closed group with inner assemblies (NO)"
|
|
res = assemblymgr.canOpen $
|
|
if (res == true)
|
|
then throw "FAILED\n"
|
|
else print "PASSED\n"
|
|
print "test0 - CanClose on closed group with inner assemblies (NO)"
|
|
res = assemblymgr.canClose $
|
|
if (res == true)
|
|
then throw "FAILED\n"
|
|
else print "PASSED\n"
|
|
print "test0 - CanDetach on closed group with inner assemblies (NO)"
|
|
res = assemblymgr.canDetach _a
|
|
if (res == true)
|
|
then throw "FAILED\n"
|
|
else print "PASSED\n"
|
|
print "test0 - CanAssemble closed group member (NO)"
|
|
res = assemblymgr.canAssemble _boxes[3]
|
|
if (res == true)
|
|
then throw "FAILED\n"
|
|
else print "PASSED\n"
|
|
|
|
|
|
setgroupopen g true
|
|
print "test0 - CanDisassemble on closed assembly in open group (YES)"
|
|
res = assemblymgr.canDisassemble _a
|
|
if (res == false)
|
|
then throw "FAILED\n"
|
|
else print "PASSED\n"
|
|
print "test0 - CanExplode on closed assembly in open group (YES)"
|
|
res = assemblymgr.canExplode _a
|
|
if (res == false)
|
|
then throw "FAILED\n"
|
|
else print "PASSED\n"
|
|
print "test0 - CanOpen on closed assembly in open group (YES)"
|
|
res = assemblymgr.canOpen _a
|
|
if (res == false)
|
|
then throw "FAILED\n"
|
|
else print "PASSED\n"
|
|
res = assemblymgr.Open _a
|
|
print "test0 - CanDetach on open assembly member within inner assembly in open group (YEs)"
|
|
res = assemblymgr.canDetach _boxes[1]
|
|
if (res == false)
|
|
then throw "FAILED\n"
|
|
else print "PASSED\n"
|
|
print "test0 - CanClose on open assembly in open group (YES)"
|
|
res = assemblymgr.canClose _a
|
|
if (res == false)
|
|
then throw "FAILED\n"
|
|
else print "PASSED\n"
|
|
|
|
|
|
)
|
|
|
|
|
|
-----------------------------------------------------
|
|
--
|
|
fn test1 =
|
|
(
|
|
print "test1 - Group assemblies"
|
|
g = group #(_boxes[3], _a) name:"g"
|
|
if (_boxes[1].assemblymember == false or
|
|
_a.assemblyhead == false or
|
|
(isgroupmember _a) == false)
|
|
then throw "FAILED\n"
|
|
else print "PASSED\n"
|
|
)
|
|
|
|
-----------------------------------------------------
|
|
--
|
|
fn test2 =
|
|
(
|
|
print "test2 - Open Group"
|
|
g = group #(_boxes[3], _a) name:"g"
|
|
setgroupopen g true
|
|
if (_boxes[1].assemblymember == false or
|
|
_boxes[1].assemblymemberopen == true or
|
|
_a.assemblyhead == false or
|
|
_a.assemblyheadopen == true or
|
|
(isgroupmember _a) == false or
|
|
(isopengroupmember _a) == false)
|
|
then throw "FAILED\n"
|
|
else print "PASSED\n"
|
|
)
|
|
|
|
-----------------------------------------------------
|
|
--
|
|
fn test3 =
|
|
(
|
|
print "test3 - Close group"
|
|
g = group #(_boxes[3], _a) name:"g"
|
|
setgroupopen g true
|
|
|
|
setgroupopen g false
|
|
if (_boxes[1].assemblymember == false or
|
|
_boxes[1].assemblymemberopen == true or
|
|
_a.assemblyhead == false or
|
|
_a.assemblyheadopen == true or
|
|
(isgroupmember _a) == false or
|
|
(isopengroupmember _a) == true)
|
|
then throw "FAILED\n"
|
|
else print "PASSED\n"
|
|
)
|
|
|
|
-----------------------------------------------------
|
|
--
|
|
fn test4 =
|
|
(
|
|
print "test4 - Ungroup Group"
|
|
g = group #(_boxes[3], _a) name:"g"
|
|
|
|
ungroup g
|
|
if (_boxes[1].assemblymember == false or
|
|
_boxes[1].assemblymemberopen == true or
|
|
_a.assemblyhead == false or
|
|
_a.assemblyheadopen == true or
|
|
(isgroupmember _a) == true or
|
|
(isopengroupmember _a) == true)
|
|
then throw "FAILED\n"
|
|
else print "PASSED\n"
|
|
)
|
|
|
|
-----------------------------------------------------
|
|
--
|
|
fn test5 =
|
|
(
|
|
print "test5 - Explode Group"
|
|
g = group #(_boxes[3], _a) name:"g"
|
|
|
|
ExplodeGroup g
|
|
if (_boxes[1].assemblymember == false or
|
|
_boxes[1].assemblymemberopen == true or
|
|
_a.assemblyhead == false or
|
|
_a.assemblyheadopen == true or
|
|
(isgroupmember _a) == true or
|
|
(isopengroupmember _a) == true)
|
|
then throw "FAILED\n"
|
|
else print "PASSED\n"
|
|
)
|
|
|
|
-----------------------------------------------------
|
|
--
|
|
fn test6 =
|
|
(
|
|
print "test6 - Detach Assembly"
|
|
g = group #(_boxes[3], _a) name:"g"
|
|
setgroupopen g true
|
|
|
|
max group detach _a
|
|
if (_boxes[1].assemblymember == false or
|
|
_boxes[1].assemblymemberopen == true or
|
|
_a.assemblyhead == false or
|
|
_a.assemblyheadopen == true or
|
|
(isgroupmember _a) == true or
|
|
(isopengroupmember _a) == true)
|
|
then throw "FAILED\n"
|
|
else print "PASSED\n"
|
|
)
|
|
|
|
-----------------------------------------------------
|
|
--
|
|
fn test7 =
|
|
(
|
|
print "test7 - Assemble Open Group Member (YES)"
|
|
g = group #(_boxes[3], _a) name:"g"
|
|
setgroupopen g true
|
|
_a2 = assemblyMgr.Assemble _boxes[3] name:"a2" classDesc:Dummy
|
|
if (_boxes[3].assemblymember == false or
|
|
_boxes[3].assemblymemberopen == true or
|
|
_a2.assemblyhead == false or
|
|
_a2.assemblyheadopen == true or
|
|
(isgroupmember _a2) == false or
|
|
(isopengroupmember _a2) == false)
|
|
then throw "FAILED\n"
|
|
else print "PASSED\n"
|
|
)
|
|
-----------------------------------------------------
|
|
--
|
|
fn test8 =
|
|
(
|
|
print "test8 - Explode Assembly Open Group Member (YES)"
|
|
g = group #(_boxes[3], _a) name:"g"
|
|
setgroupopen g true
|
|
res = assemblyMgr.Explode _a
|
|
if (_boxes[1].assemblymember == true or
|
|
_boxes[1].assemblymemberopen == true or
|
|
(isgroupmember _boxes[1]) == false or
|
|
(isopengroupmember _boxes[1]) == false)
|
|
then throw "FAILED\n"
|
|
else print "PASSED\n"
|
|
)
|
|
-----------------------------------------------------
|
|
--
|
|
fn test9 =
|
|
(
|
|
print "test9 - Disassemble Assembly Open Group Member (YES)"
|
|
g = group #(_boxes[3], _a) name:"g"
|
|
setgroupopen g true
|
|
res = assemblyMgr.Disassemble _a
|
|
if (_boxes[1].assemblymember == true or
|
|
_boxes[1].assemblymemberopen == true or
|
|
(isgroupmember _boxes[1]) == false or
|
|
(isopengroupmember _boxes[1]) == false)
|
|
then throw "FAILED\n"
|
|
else print "PASSED\n"
|
|
)
|
|
|
|
-- Macro methods
|
|
On isEnabled return true
|
|
On isVisible return true
|
|
|
|
On Execute Do
|
|
(
|
|
global createTestSuite
|
|
if createTestSuite == undefined do fileIn ((getdir #scripts) + "/../../MxsUnitTest/MxsUnitTestFramework.ms")
|
|
ts = createTestSuite "grpAssembliesInGroups" setupUT teardownUT
|
|
ts.addTest test0
|
|
ts.addTest test1
|
|
ts.addTest test2
|
|
ts.addTest test3
|
|
ts.addTest test4
|
|
ts.addTest test5
|
|
ts.addTest test6
|
|
ts.addTest test7
|
|
ts.addTest test8
|
|
ts.addTest test9
|
|
|
|
|
|
-- add more tests
|
|
ts.run()
|
|
)
|
|
)
|