0023952: Improving thread-safety of intersections, approximations and other modeling...
authorapn <apn@opencascade.com>
Wed, 5 Jun 2013 06:34:49 +0000 (10:34 +0400)
committerapn <apn@opencascade.com>
Thu, 6 Jun 2013 07:06:26 +0000 (11:06 +0400)
Modified QAcommands OCC23952sweep and OCC23952intersect to prevent exception in appropriate test cases

src/QABugs/QABugs_19.cxx
tests/bugs/modalg_5/bug23952_1 [new file with mode: 0644]
tests/bugs/modalg_5/bug23952_2 [new file with mode: 0644]

index fa6efb0..99842aa 100755 (executable)
@@ -435,6 +435,7 @@ static Standard_Integer OCC23952sweep (Draw_Interpretor& di, Standard_Integer ar
        OSD_Thread aThread1(convert);
        aThread1.Run(&aStorage);
        GeomConvertTest(di,aStorage.nbupoles,aStorage.filename);
+       cout << "result of thread: " << aThread1.Wait() << endl;
 
        return 0;
 }
@@ -483,6 +484,7 @@ static Standard_Integer OCC23952intersect (Draw_Interpretor& di, Standard_Intege
        OSD_Thread aThread1(convert_inter);
        aThread1.Run(&aStorage);
        GeomIntSSTest(di,aStorage.nbsol,aStorage.filename1,aStorage.filename2);
+       cout << "result of thread: " << aThread1.Wait() << endl;
 
        return 0;
 }
diff --git a/tests/bugs/modalg_5/bug23952_1 b/tests/bugs/modalg_5/bug23952_1
new file mode 100644 (file)
index 0000000..05cb212
--- /dev/null
@@ -0,0 +1,19 @@
+puts "================"
+puts "OCC23952"
+puts "================"
+puts ""
+###########################################################################################
+# Improving thread-safety of intersections, approximations and other modeling algorithms
+###########################################################################################
+
+pload QAcommands
+restore [locate_data_file bug23952_trim-torus.draw] a
+
+set NbUPoles 18
+set info [OCC23952sweep $NbUPoles a]
+
+if { [regexp "theTargetNbUPoles: OK" $info] != 1 } {
+    puts "Error : Number of UPoles is incorrect"
+} else {
+    puts "OK: Number of UPoles is correct"
+}
diff --git a/tests/bugs/modalg_5/bug23952_2 b/tests/bugs/modalg_5/bug23952_2
new file mode 100644 (file)
index 0000000..85e5958
--- /dev/null
@@ -0,0 +1,21 @@
+puts "================"
+puts "OCC23952"
+puts "================"
+puts ""
+###########################################################################################
+# Improving thread-safety of intersections, approximations and other modeling algorithms
+###########################################################################################
+
+pload QAcommands
+restore [locate_data_file bug23952_s1.draw] a
+restore [locate_data_file bug23952_s2.draw] b
+
+set NbLines 5
+set info [OCC23952intersect $NbLines a b]
+
+if { [regexp "theNbSol: OK" $info] != 1 } {
+    puts "Error : Number of intersections is incorrect"
+} else {
+    puts "OK: Number of intersections is correct"
+}
+