Ejemplo n.º 1
0
void
Test_KCompletion::insertionOrder()
{
    KCompletion completion;
    completion.setSoundsEnabled(false);
    QSignalSpy spy1(&completion, SIGNAL(match(QString)));
    QSignalSpy spy3(&completion, SIGNAL(multipleMatches()));

    completion.setOrder(KCompletion::Insertion);
    QVERIFY(completion.order() == KCompletion::Insertion);

    completion.setItems(strings);
    QVERIFY(completion.items().count() == strings.count());

    completion.setCompletionMode(KCompletion::CompletionShell);
    QCOMPARE(completion.makeCompletion(QStringLiteral("ca")), QStringLiteral("carp"));
    QVERIFY(spy1.count() == 1);
    QVERIFY(spy1.takeFirst().at(0).toString() == QStringLiteral("carp"));
    QVERIFY(spy3.count() == 1); spy3.takeFirst();

    QSignalSpy spy2(&completion, SIGNAL(matches(QStringList)));
    completion.makeCompletion(QStringLiteral("ca"));
    QCOMPARE(spy2.count(), 1);
    QVERIFY(spy3.count() == 0); // shouldn't be signaled on 2nd call
    QStringList matches = spy2.takeFirst().at(0).toStringList();
    QVERIFY(matches.count() == 2);
    QCOMPARE(matches[0], carpet);
    QCOMPARE(matches[1], carp);

    completion.setCompletionMode(KCompletion::CompletionAuto);
    QCOMPARE(completion.makeCompletion(QStringLiteral("ca")), carpet);
    QVERIFY(spy1.count() == 1);
    QVERIFY(spy1.takeFirst().at(0).toString() == carpet);
}
Ejemplo n.º 2
0
void HandleSignalRouterUnitTests::routingSignals()
{
    // Setup:
    // Get the object to be tested
    handleSignalRouter = HandleSignalRouter::instance();
    // Start spying the mock handles
    QSignalSpy spy1(mockHandleOne, SIGNAL(onValueChangedCalled(QString)));
    QSignalSpy spy2(mockHandleTwo, SIGNAL(onValueChangedCalled(QString)));
    QSignalSpy spy3(mockHandleThree, SIGNAL(onValueChangedCalled(QString)));
    QSignalSpy sspy1(mockHandleOne, SIGNAL(setSubscribeFinishedCalled(Provider *, QString)));
    QSignalSpy sspy2(mockHandleTwo, SIGNAL(setSubscribeFinishedCalled(Provider *, QString)));
    QSignalSpy sspy3(mockHandleThree, SIGNAL(setSubscribeFinishedCalled(Provider *, QString)));

    // Test:
    // Send a signal to the HandleSignalRouter
    handleSignalRouter->onValueChanged("Property.One");
    handleSignalRouter->onSubscribeFinished(0, "Property.One");

    // Expected results:
    // The mockHandleOne.setValue was called
    QCOMPARE(spy1.count(), 1);
    QList<QVariant> parameters = spy1.takeFirst();
    QCOMPARE(parameters.size(), 1);
    QCOMPARE(parameters.at(0), QVariant("Property.One"));

    QCOMPARE(sspy1.count(), 1);
    parameters = sspy1.takeFirst();
    QCOMPARE(parameters.size(), 2);
    QCOMPARE(parameters.at(1), QVariant("Property.One"));

    // The setValue of other mock handles were not called
    QCOMPARE(spy2.count(), 0);
    QCOMPARE(spy3.count(), 0);
    QCOMPARE(sspy2.count(), 0);
    QCOMPARE(sspy3.count(), 0);

    // Test:
    // Send a signal to the HandleSignalRouter
    handleSignalRouter->onValueChanged("Property.Two");
    handleSignalRouter->onSubscribeFinished(0, "Property.Two");

    // Expected results:
    // The mockHandleTwo.setValue was called
    QCOMPARE(spy2.count(), 1);
    QCOMPARE(sspy2.count(), 1);
    parameters = spy2.takeFirst();
    QCOMPARE(parameters.size(), 1);
    QCOMPARE(parameters.at(0), QVariant("Property.Two"));
    parameters = sspy2.takeFirst();
    QCOMPARE(parameters.size(), 2);
    QCOMPARE(parameters.at(1), QVariant("Property.Two"));
    // The setValue of other mock handles were not called
    QCOMPARE(spy1.count(), 0);
    QCOMPARE(spy3.count(), 0);
    QCOMPARE(sspy1.count(), 0);
    QCOMPARE(sspy3.count(), 0);

}
/*!
    Wait for multiple (3) signals
*/
void UnitTestCxeTestUtils::testWaitForSignal3()
{
    QTimer t3;
    QSignalSpy spy3(&t3, SIGNAL(timeout()));
    t3.setSingleShot(false);
    t3.start(100);
    QVERIFY(CxeTestUtils::waitForSignal(spy3, 500, 3));
    QCOMPARE(spy3.count(), 3);
}
//-----------------------------------------------------------------------------
int ctkButtonGroupEventTranslatorPlayerTest1(int argc, char * argv [] )
{
  QApplication app(argc, argv);

  QString xmlDirectory = CTK_SOURCE_DIR "/Libs/Widgets/Testing/Cpp/";

  // ------------------------
  ctkEventTranslatorPlayerWidget etpWidget;
  pqTestUtility* testUtility = new pqTestUtility(&etpWidget);
  etpWidget.setTestUtility(testUtility);

  // Test case 1
  QWidget widget(0);

  QVBoxLayout* layout = new QVBoxLayout(&widget);

  QPushButton* button1 = new QPushButton("button 1", &widget);
  QPushButton* button2 = new QPushButton("button 2", &widget);
  QPushButton* button3 = new QPushButton("button 3", &widget);

  layout->addWidget(button1);
  layout->addWidget(button2);
  layout->addWidget(button3);

  widget.setLayout(layout);

  button1->setCheckable(true);
  button2->setCheckable(true);
  button3->setCheckable(false);

  ctkButtonGroup* buttonGroup = new ctkButtonGroup(&widget);
  buttonGroup->addButton(button1);
  buttonGroup->addButton(button2);
  buttonGroup->addButton(button3);

  QSignalSpy spy1(button1, SIGNAL(clicked()));
  QSignalSpy spy2(button2, SIGNAL(clicked()));
  QSignalSpy spy3(button3, SIGNAL(clicked()));

  Spy1 = &spy1;
  Spy2 = &spy2;
  Spy3 = &spy3;

  etpWidget.addTestCase(&widget,
                        xmlDirectory + "ctkButtonGroupEventTranslatorPlayerTest1.xml",
                        &checkFinalWidgetState);

  // ------------------------
  if (argc < 2 || QString(argv[1]) != "-I")
    {
    QTimer::singleShot(0, &etpWidget, SLOT(play()));
    }

  etpWidget.show();
  return app.exec();
}
Ejemplo n.º 5
0
void ChatTests::testInvite()
{
    QVERIFY(chat);

    QSignalSpy spy2(chat.data(), SIGNAL(inviteCompleted(bool, QString)));
    QVERIFY(spy2.isValid());
    QVERIFY(spy2.isEmpty());

    QSignalSpy spy3(session2.data(), SIGNAL(invitationReceived(QSharedPointer<Chat>)));
    QVERIFY(spy3.isValid());
    QVERIFY(spy3.isEmpty());

    QSignalSpy spy4(chat.data(), SIGNAL(userJoined(QSharedPointer<const User>)));
    QVERIFY(spy4.isValid());
    QVERIFY(spy4.isEmpty());

    QSharedPointer<const User> u(new User(TEMP_SESSION_USER2,
                                          WORKING_DIR "public.pem"));
    chat->invite(u);
    waitForResult(spy2);

    QCOMPARE(spy2.count(), 1);
    QList<QVariant> arguments2 = spy2.takeFirst();
    QVERIFY2(arguments2.at(0) == true, arguments2.at(1).toString().toStdString().c_str());

    waitForResult(spy3);

    QCOMPARE(spy3.count(), 1);
    QList<QVariant> arguments3 = spy3.takeFirst();
    QSharedPointer<Chat> chat2 = arguments3.at(0).value<QSharedPointer<Chat> >();

    waitForResult(spy4);

    QCOMPARE(spy4.count(), 1);
    QList<QVariant> arguments4 = spy4.takeFirst();
    QSharedPointer<const User> u2 = arguments4.at(0).value<QSharedPointer<const User> >();
    QCOMPARE(u2->getName(), QString(TEMP_SESSION_USER2));

    QList<QSharedPointer<const User> > chat1Usr = chat->getUserList();
    QList<QSharedPointer<const User> > chat2Usr = chat2->getUserList();

    QCOMPARE(chat1Usr.size(), 2);
    QCOMPARE(chat2Usr.size(), 2);

    QCOMPARE(chat1Usr[0]->getName(), QString(TEMP_SESSION_USER2));
    QCOMPARE(chat1Usr[1]->getName(), QString(TEMP_SESSION_USER3));

    QCOMPARE(chat2Usr[0]->getName(), QString(TEMP_SESSION_USER2));
    QCOMPARE(chat2Usr[1]->getName(), QString(TEMP_SESSION_USER3));
}
//-----------------------------------------------------------------------------
int ctkMenuButtonEventTranslatorPlayerTest1(int argc, char * argv [] )
{
    QApplication app(argc, argv);

    QString xmlDirectory = CTK_SOURCE_DIR "/Libs/Widgets/Testing/Cpp/";

    // ------------------------
    ctkEventTranslatorPlayerWidget etpWidget;
    pqTestUtility* testUtility = new pqTestUtility(&etpWidget);
    etpWidget.setTestUtility(testUtility);

    // Test case 1
    QWidget* widget = new QWidget(0);
    ctkMenuButton* menuButton = new ctkMenuButton("ctkMenuButton", widget);

    QMenu* menu = new QMenu("menu", menuButton);
    QAction* action1 = new QAction("extra choice 1", menu);
    QAction* action2 = new QAction("extra choice 2", menu);
    QAction* action3 = new QAction("extra choice 3", menu);
    menu->addAction(action1);
    menu->addAction(action2);
    menu->addAction(action3);

    QSignalSpy spy1(action1, SIGNAL(triggered()));
    QSignalSpy spy2(action2, SIGNAL(triggered()));
    QSignalSpy spy3(action3, SIGNAL(triggered()));

    Spy1 = &spy1;
    Spy2 = &spy2;
    Spy3 = &spy3;

    menuButton->setMenu(menu);
    etpWidget.addTestCase(widget,
                          xmlDirectory + "ctkMenuButtonEventTranslatorPlayerTest1.xml",
                          &checkFinalWidgetState);

    // ------------------------
    if (!app.arguments().contains("-I"))
    {
        QTimer::singleShot(0, &etpWidget, SLOT(play()));
    }

    etpWidget.show();
    return app.exec();
}
Ejemplo n.º 7
0
void TestQPrefCloudStorage::test_signals()
{
	QSignalSpy spy1(qPrefCloudStorage::instance(), &qPrefCloudStorage::cloud_base_urlChanged);
	QSignalSpy spy2(qPrefCloudStorage::instance(), &qPrefCloudStorage::cloud_storage_emailChanged);
	QSignalSpy spy3(qPrefCloudStorage::instance(), &qPrefCloudStorage::cloud_storage_email_encodedChanged);
	QSignalSpy spy4(qPrefCloudStorage::instance(), &qPrefCloudStorage::cloud_storage_passwordChanged);
	QSignalSpy spy5(qPrefCloudStorage::instance(), &qPrefCloudStorage::cloud_storage_pinChanged);
	QSignalSpy spy6(qPrefCloudStorage::instance(), &qPrefCloudStorage::cloud_timeoutChanged);
	QSignalSpy spy7(qPrefCloudStorage::instance(), &qPrefCloudStorage::cloud_verification_statusChanged);
	QSignalSpy spy9(qPrefCloudStorage::instance(), &qPrefCloudStorage::save_password_localChanged);
	QSignalSpy spy10(qPrefCloudStorage::instance(), &qPrefCloudStorage::cloud_auto_syncChanged);

	qPrefCloudStorage::set_cloud_base_url("signal url");
	qPrefCloudStorage::set_cloud_storage_email("signal myEmail");
	qPrefCloudStorage::set_cloud_storage_email_encoded("signal encodedMyEMail");
	qPrefCloudStorage::set_cloud_storage_password("signal more secret");
	qPrefCloudStorage::set_cloud_storage_pin("signal a pin");
	qPrefCloudStorage::set_cloud_timeout(11);
	qPrefCloudStorage::set_cloud_verification_status(qPrefCloudStorage::CS_VERIFIED);
	qPrefCloudStorage::set_save_password_local(true);
	qPrefCloudStorage::set_cloud_auto_sync(true);

	QCOMPARE(spy1.count(), 1);
	QCOMPARE(spy2.count(), 1);
	QCOMPARE(spy3.count(), 1);
	QCOMPARE(spy4.count(), 1);
	QCOMPARE(spy5.count(), 1);
	QCOMPARE(spy6.count(), 1);
	QCOMPARE(spy7.count(), 1);
	QCOMPARE(spy9.count(), 1);
	QCOMPARE(spy10.count(), 1);

	QVERIFY(spy1.takeFirst().at(0).toString() == "signal url");
	QVERIFY(spy2.takeFirst().at(0).toString() == "signal myEmail");
	QVERIFY(spy3.takeFirst().at(0).toString() == "signal encodedMyEMail");
	QVERIFY(spy4.takeFirst().at(0).toString() == "signal more secret");
	QVERIFY(spy5.takeFirst().at(0).toString() == "signal a pin");
	QVERIFY(spy6.takeFirst().at(0).toInt() == 11);
	QVERIFY(spy7.takeFirst().at(0).toInt() == qPrefCloudStorage::CS_VERIFIED);
	QVERIFY(spy9.takeFirst().at(0).toBool() == true);
	QVERIFY(spy10.takeFirst().at(0).toBool() == true);
}
Ejemplo n.º 8
0
void TestQPrefGeocoding::test_signals()
{
	QSignalSpy spy1(qPrefGeocoding::instance(), &qPrefGeocoding::first_taxonomy_categoryChanged);
	QSignalSpy spy2(qPrefGeocoding::instance(), &qPrefGeocoding::second_taxonomy_categoryChanged);
	QSignalSpy spy3(qPrefGeocoding::instance(), &qPrefGeocoding::third_taxonomy_categoryChanged);

	prefs.geocoding.category[0] = TC_NONE;
	qPrefGeocoding::set_first_taxonomy_category(TC_COUNTRY);
	prefs.geocoding.category[0] = TC_NONE;
	qPrefGeocoding::set_second_taxonomy_category(TC_ADMIN_L1);
	prefs.geocoding.category[0] = TC_NONE;
	qPrefGeocoding::set_third_taxonomy_category(TC_ADMIN_L2);

	QCOMPARE(spy1.count(), 1);
	QCOMPARE(spy2.count(), 1);
	QCOMPARE(spy3.count(), 1);

	QVERIFY(spy1.takeFirst().at(0).toInt() == TC_COUNTRY);
	QVERIFY(spy2.takeFirst().at(0).toInt() == TC_ADMIN_L1);
	QVERIFY(spy3.takeFirst().at(0).toInt() == TC_ADMIN_L2);
}
Ejemplo n.º 9
0
void
Test_KCompletion::weightedOrder()
{
	KCompletion completion;
	completion.setSoundsEnabled(false);
	QSignalSpy spy1(&completion, SIGNAL(match(QString)));
	QSignalSpy spy3(&completion, SIGNAL(multipleMatches()));

	completion.setOrder(KCompletion::Weighted);
	QVERIFY(completion.order() == KCompletion::Weighted);

	completion.setItems(wstrings);
	QVERIFY(completion.items().count() == 4);

	completion.setCompletionMode(KGlobalSettings::CompletionShell);
	QCOMPARE(completion.makeCompletion("ca"), QString("carp"));
	spy1.takeFirst(); // empty the list
	QVERIFY(spy3.count() == 1); spy3.takeFirst();

	QSignalSpy spy2(&completion, SIGNAL(matches(QStringList)));
	completion.makeCompletion("ca");
	QCOMPARE(spy2.count(), 1);
	QVERIFY(spy3.count() == 0); // shouldn't be signaled on 2nd call

	QStringList matches = spy2.takeFirst().at(0).toStringList();
	QVERIFY(matches.count() == 2);
	QCOMPARE(matches[0], carpet);
	QCOMPARE(matches[1], carp);

	completion.setCompletionMode(KGlobalSettings::CompletionAuto);
	QCOMPARE(completion.makeCompletion("ca"), carpet);

	matches = completion.substringCompletion("ca");
	QVERIFY(matches.count() == 3);
	QCOMPARE(matches[0], carpet);
	QCOMPARE(matches[1], coolcat);
	QCOMPARE(matches[2], carp);
}
Ejemplo n.º 10
0
void TestQgsAttributeForm::testOKButtonStatus()
{
  // make a temporary vector layer
  QString def = QStringLiteral( "Point?field=col0:integer" );
  QgsVectorLayer* layer = new QgsVectorLayer( def, QStringLiteral( "test" ), QStringLiteral( "memory" ) );

  // add a feature to the vector layer
  QgsFeature ft( layer->dataProvider()->fields(), 1 );
  ft.setAttribute( QStringLiteral( "col0" ), 0 );
  ft.setValid( true );

  // set constraint
  layer->setConstraintExpression( 0, QString() );

  // build a form for this feature
  QgsAttributeForm form( layer );
  form.setFeature( ft );

  QPushButton *okButton = form.mButtonBox->button( QDialogButtonBox::Ok );

  // get wrapper
  QgsEditorWidgetWrapper *ww;
  ww = qobject_cast<QgsEditorWidgetWrapper*>( form.mWidgets[0] );

  // testing stuff
  QSignalSpy spy1( &form, SIGNAL( attributeChanged( QString, QVariant ) ) );
  QSignalSpy spy2( layer, SIGNAL( editingStarted() ) );
  QSignalSpy spy3( layer, SIGNAL( editingStopped() ) );

  // no constraint but layer not editable : OK button disabled
  QCOMPARE( layer->isEditable(), false );
  QCOMPARE( okButton->isEnabled(), false );

  // no constraint and editable layer : OK button enabled
  layer->startEditing();
  QCOMPARE( spy2.count(), 1 );
  QCOMPARE( layer->isEditable(), true );
  QCOMPARE( okButton->isEnabled(), true );

  // invalid constraint and editable layer : OK button disabled
  layer->setConstraintExpression( 0, QStringLiteral( "col0 = 0" ) );
  QgsAttributeForm form2( layer );
  form2.setFeature( ft );
  ww = qobject_cast<QgsEditorWidgetWrapper*>( form2.mWidgets[0] );
  okButton = form2.mButtonBox->button( QDialogButtonBox::Ok );
  ww->setValue( 1 );
  QCOMPARE( okButton->isEnabled(), false );

  // valid constraint and editable layer : OK button enabled
  layer->setConstraintExpression( 0, QStringLiteral( "col0 = 2" ) );
  QgsAttributeForm form3( layer );
  form3.setFeature( ft );
  ww = qobject_cast<QgsEditorWidgetWrapper*>( form3.mWidgets[0] );
  okButton = form3.mButtonBox->button( QDialogButtonBox::Ok );

  ww->setValue( 2 );
  QCOMPARE( okButton->isEnabled(), true );

  // valid constraint and not editable layer : OK button disabled
  layer->rollBack();
  QCOMPARE( spy3.count(), 1 );
  QCOMPARE( layer->isEditable(), false );
  QCOMPARE( okButton->isEnabled(), false );

  // set soft constraint
  layer->setFieldConstraint( 0, QgsFieldConstraints::ConstraintExpression, QgsFieldConstraints::ConstraintStrengthSoft );
  QgsAttributeForm form4( layer );
  form4.setFeature( ft );
  ww = qobject_cast<QgsEditorWidgetWrapper*>( form4.mWidgets[0] );
  okButton = form4.mButtonBox->button( QDialogButtonBox::Ok );
  ww->setValue( 1 );
  QVERIFY( !okButton->isEnabled() );
  layer->startEditing();
  // just a soft constraint, so OK should be enabled
  QVERIFY( okButton->isEnabled() );
  layer->rollBack();
  QVERIFY( !okButton->isEnabled() );
}
Ejemplo n.º 11
0
void TestQPrefTechnicalDetails::test_signals()
{
	QSignalSpy spy1(qPrefTechnicalDetails::instance(), &qPrefTechnicalDetails::calcalltissuesChanged);
	QSignalSpy spy2(qPrefTechnicalDetails::instance(), &qPrefTechnicalDetails::calcceilingChanged);
	QSignalSpy spy3(qPrefTechnicalDetails::instance(), &qPrefTechnicalDetails::calcceiling3mChanged);
	QSignalSpy spy4(qPrefTechnicalDetails::instance(), &qPrefTechnicalDetails::calcndlttsChanged);
	QSignalSpy spy5(qPrefTechnicalDetails::instance(), &qPrefTechnicalDetails::dcceilingChanged);
	QSignalSpy spy6(qPrefTechnicalDetails::instance(), &qPrefTechnicalDetails::display_deco_modeChanged);
	QSignalSpy spy7(qPrefTechnicalDetails::instance(), &qPrefTechnicalDetails::display_unused_tanksChanged);
	QSignalSpy spy8(qPrefTechnicalDetails::instance(), &qPrefTechnicalDetails::eadChanged);
	QSignalSpy spy9(qPrefTechnicalDetails::instance(), &qPrefTechnicalDetails::gfhighChanged);
	QSignalSpy spy10(qPrefTechnicalDetails::instance(), &qPrefTechnicalDetails::gflowChanged);
	QSignalSpy spy11(qPrefTechnicalDetails::instance(), &qPrefTechnicalDetails::gf_low_at_maxdepthChanged);
	QSignalSpy spy12(qPrefTechnicalDetails::instance(), &qPrefTechnicalDetails::hrgraphChanged);
	QSignalSpy spy13(qPrefTechnicalDetails::instance(), &qPrefTechnicalDetails::modChanged);
	QSignalSpy spy14(qPrefTechnicalDetails::instance(), &qPrefTechnicalDetails::modpO2Changed);
	QSignalSpy spy15(qPrefTechnicalDetails::instance(), &qPrefTechnicalDetails::percentagegraphChanged);
	QSignalSpy spy16(qPrefTechnicalDetails::instance(), &qPrefTechnicalDetails::redceilingChanged);
	QSignalSpy spy17(qPrefTechnicalDetails::instance(), &qPrefTechnicalDetails::rulergraphChanged);
	QSignalSpy spy18(qPrefTechnicalDetails::instance(), &qPrefTechnicalDetails::show_average_depthChanged);
	QSignalSpy spy19(qPrefTechnicalDetails::instance(), &qPrefTechnicalDetails::show_ccr_sensorsChanged);
	QSignalSpy spy20(qPrefTechnicalDetails::instance(), &qPrefTechnicalDetails::show_ccr_setpointChanged);
	QSignalSpy spy21(qPrefTechnicalDetails::instance(), &qPrefTechnicalDetails::show_icdChanged);
	QSignalSpy spy22(qPrefTechnicalDetails::instance(), &qPrefTechnicalDetails::show_pictures_in_profileChanged);
	QSignalSpy spy23(qPrefTechnicalDetails::instance(), &qPrefTechnicalDetails::show_sacChanged);
	QSignalSpy spy24(qPrefTechnicalDetails::instance(), &qPrefTechnicalDetails::show_scr_ocpo2Changed);
	QSignalSpy spy25(qPrefTechnicalDetails::instance(), &qPrefTechnicalDetails::tankbarChanged);
	QSignalSpy spy26(qPrefTechnicalDetails::instance(), &qPrefTechnicalDetails::vpmb_conservatismChanged);
	QSignalSpy spy27(qPrefTechnicalDetails::instance(), &qPrefTechnicalDetails::zoomed_plotChanged);

	prefs.calcalltissues = true;
	qPrefTechnicalDetails::set_calcalltissues(false);
	prefs.calcceiling = true;
	qPrefTechnicalDetails::set_calcceiling(false);
	prefs.calcceiling3m = true;
	qPrefTechnicalDetails::set_calcceiling3m(false);
	prefs.calcndltts = true;
	qPrefTechnicalDetails::set_calcndltts(false);
	prefs.dcceiling = true;
	qPrefTechnicalDetails::set_dcceiling(false);
	qPrefTechnicalDetails::set_display_deco_mode(VPMB);
	prefs.display_unused_tanks = true;
	qPrefTechnicalDetails::set_display_unused_tanks(false);
	prefs.ead = true;
	qPrefTechnicalDetails::set_ead(false);
	qPrefTechnicalDetails::set_gfhigh(-29);
	qPrefTechnicalDetails::set_gflow(-24);
	prefs.gf_low_at_maxdepth = true;
	qPrefTechnicalDetails::set_gf_low_at_maxdepth(false);
	prefs.hrgraph = true;
	qPrefTechnicalDetails::set_hrgraph(false);
	prefs.mod = true;
	qPrefTechnicalDetails::set_mod(false);
	qPrefTechnicalDetails::set_modpO2(-1.12);
	prefs.percentagegraph = true;
	qPrefTechnicalDetails::set_percentagegraph(false);
	prefs.redceiling = true;
	qPrefTechnicalDetails::set_redceiling(false);
	prefs.rulergraph = true;
	qPrefTechnicalDetails::set_rulergraph(false);
	prefs.show_average_depth = true;
	qPrefTechnicalDetails::set_show_average_depth(false);
	prefs.show_ccr_sensors = true;
	qPrefTechnicalDetails::set_show_ccr_sensors(false);
	prefs.show_ccr_setpoint = true;
	qPrefTechnicalDetails::set_show_ccr_setpoint(false);
	prefs.show_icd = true;
	qPrefTechnicalDetails::set_show_icd(false);
	prefs.show_pictures_in_profile = true;
	qPrefTechnicalDetails::set_show_pictures_in_profile(false);
	prefs.show_sac = true;
	qPrefTechnicalDetails::set_show_sac(false);
	prefs.show_scr_ocpo2 = true;
	qPrefTechnicalDetails::set_show_scr_ocpo2(false);
	prefs.tankbar = true;
	qPrefTechnicalDetails::set_tankbar(false);
	qPrefTechnicalDetails::set_vpmb_conservatism(-64);
	prefs.zoomed_plot = true;
	qPrefTechnicalDetails::set_zoomed_plot(false);

	QCOMPARE(spy1.count(), 1);
	QCOMPARE(spy2.count(), 1);
	QCOMPARE(spy3.count(), 1);
	QCOMPARE(spy4.count(), 1);
	QCOMPARE(spy5.count(), 1);
	QCOMPARE(spy6.count(), 1);
	QCOMPARE(spy7.count(), 1);
	QCOMPARE(spy8.count(), 1);
	QCOMPARE(spy9.count(), 1);
	QCOMPARE(spy10.count(), 1);
	QCOMPARE(spy11.count(), 1);
	QCOMPARE(spy12.count(), 1);
	QCOMPARE(spy13.count(), 1);
	QCOMPARE(spy14.count(), 1);
	QCOMPARE(spy15.count(), 1);
	QCOMPARE(spy16.count(), 1);
	QCOMPARE(spy17.count(), 1);
	QCOMPARE(spy18.count(), 1);
	QCOMPARE(spy19.count(), 1);
	QCOMPARE(spy20.count(), 1);
	QCOMPARE(spy21.count(), 1);
	QCOMPARE(spy22.count(), 1);
	QCOMPARE(spy23.count(), 1);
	QCOMPARE(spy24.count(), 1);
	QCOMPARE(spy25.count(), 1);
	QCOMPARE(spy26.count(), 1);
	QCOMPARE(spy27.count(), 1);

	QVERIFY(spy1.takeFirst().at(0).toBool() == false);
	QVERIFY(spy2.takeFirst().at(0).toBool() == false);
	QVERIFY(spy3.takeFirst().at(0).toBool() == false);
	QVERIFY(spy4.takeFirst().at(0).toBool() == false);
	QVERIFY(spy5.takeFirst().at(0).toBool() == false);
	QVERIFY(spy6.takeFirst().at(0).toInt() == VPMB);
	QVERIFY(spy7.takeFirst().at(0).toBool() == false);
	QVERIFY(spy8.takeFirst().at(0).toBool() == false);
	QVERIFY(spy9.takeFirst().at(0).toInt() == -29);
	QVERIFY(spy10.takeFirst().at(0).toInt() == -24);
	QVERIFY(spy11.takeFirst().at(0).toBool() == false);
	QVERIFY(spy12.takeFirst().at(0).toBool() == false);
	QVERIFY(spy13.takeFirst().at(0).toBool() == false);
	QVERIFY(spy14.takeFirst().at(0).toDouble() == -1.12);
	QVERIFY(spy15.takeFirst().at(0).toBool() == false);
	QVERIFY(spy16.takeFirst().at(0).toBool() == false);
	QVERIFY(spy17.takeFirst().at(0).toBool() == false);
	QVERIFY(spy18.takeFirst().at(0).toBool() == false);
	QVERIFY(spy19.takeFirst().at(0).toBool() == false);
	QVERIFY(spy20.takeFirst().at(0).toBool() == false);
	QVERIFY(spy21.takeFirst().at(0).toBool() == false);
	QVERIFY(spy22.takeFirst().at(0).toBool() == false);
	QVERIFY(spy23.takeFirst().at(0).toBool() == false);
	QVERIFY(spy24.takeFirst().at(0).toBool() == false);
	QVERIFY(spy25.takeFirst().at(0).toBool() == false);
	QVERIFY(spy26.takeFirst().at(0).toInt() == -64);
	QVERIFY(spy27.takeFirst().at(0).toBool() == false);
}
Ejemplo n.º 12
0
void TestQPrefDivePlanner::test_signals()
{
	QSignalSpy spy1(qPrefDivePlanner::instance(), &qPrefDivePlanner::ascratelast6mChanged);
	QSignalSpy spy2(qPrefDivePlanner::instance(), &qPrefDivePlanner::ascratestopsChanged);
	QSignalSpy spy3(qPrefDivePlanner::instance(), &qPrefDivePlanner::ascrate50Changed);
	QSignalSpy spy4(qPrefDivePlanner::instance(), &qPrefDivePlanner::ascrate75Changed);
	QSignalSpy spy5(qPrefDivePlanner::instance(), &qPrefDivePlanner::bestmixendChanged);
	QSignalSpy spy6(qPrefDivePlanner::instance(), &qPrefDivePlanner::bottompo2Changed);
	QSignalSpy spy7(qPrefDivePlanner::instance(), &qPrefDivePlanner::bottomsacChanged);
	QSignalSpy spy8(qPrefDivePlanner::instance(), &qPrefDivePlanner::decopo2Changed);
	QSignalSpy spy9(qPrefDivePlanner::instance(), &qPrefDivePlanner::decosacChanged);
	QSignalSpy spy10(qPrefDivePlanner::instance(), &qPrefDivePlanner::descrateChanged);
	QSignalSpy spy11(qPrefDivePlanner::instance(), &qPrefDivePlanner::display_durationChanged);
	QSignalSpy spy12(qPrefDivePlanner::instance(), &qPrefDivePlanner::display_runtimeChanged);
	QSignalSpy spy13(qPrefDivePlanner::instance(), &qPrefDivePlanner::display_transitionsChanged);
	QSignalSpy spy14(qPrefDivePlanner::instance(), &qPrefDivePlanner::display_variationsChanged);
	QSignalSpy spy15(qPrefDivePlanner::instance(), &qPrefDivePlanner::doo2breaksChanged);
	QSignalSpy spy16(qPrefDivePlanner::instance(), &qPrefDivePlanner::drop_stone_modeChanged);
	QSignalSpy spy17(qPrefDivePlanner::instance(), &qPrefDivePlanner::last_stopChanged);
	QSignalSpy spy18(qPrefDivePlanner::instance(), &qPrefDivePlanner::min_switch_durationChanged);
	QSignalSpy spy19(qPrefDivePlanner::instance(), &qPrefDivePlanner::planner_deco_modeChanged);
	QSignalSpy spy20(qPrefDivePlanner::instance(), &qPrefDivePlanner::problemsolvingtimeChanged);
	QSignalSpy spy21(qPrefDivePlanner::instance(), &qPrefDivePlanner::reserve_gasChanged);
	QSignalSpy spy22(qPrefDivePlanner::instance(), &qPrefDivePlanner::sacfactorChanged);
	QSignalSpy spy23(qPrefDivePlanner::instance(), &qPrefDivePlanner::safetystopChanged);
	QSignalSpy spy24(qPrefDivePlanner::instance(), &qPrefDivePlanner::switch_at_req_stopChanged);
	QSignalSpy spy25(qPrefDivePlanner::instance(), &qPrefDivePlanner::verbatim_planChanged);

	qPrefDivePlanner::set_ascratelast6m(-20);
	qPrefDivePlanner::set_ascratestops(-21);
	qPrefDivePlanner::set_ascrate50(-22);
	qPrefDivePlanner::set_ascrate75(-23);
	qPrefDivePlanner::set_bestmixend(-21);
	qPrefDivePlanner::set_bottompo2(-24);
	qPrefDivePlanner::set_bottomsac(-25);
	qPrefDivePlanner::set_decopo2(-26);
	qPrefDivePlanner::set_decosac(-27);
	qPrefDivePlanner::set_descrate(-28);
	prefs.display_duration = true;
	qPrefDivePlanner::set_display_duration(false);
	prefs.display_runtime = true;
	qPrefDivePlanner::set_display_runtime(false);
	prefs.display_transitions = true;
	qPrefDivePlanner::set_display_transitions(false);
	prefs.display_variations = true;
	qPrefDivePlanner::set_display_variations(false);
	prefs.doo2breaks = true;
	qPrefDivePlanner::set_doo2breaks(false);
	prefs.drop_stone_mode = true;
	qPrefDivePlanner::set_drop_stone_mode(false);
	prefs.last_stop = true;
	qPrefDivePlanner::set_last_stop(false);
	qPrefDivePlanner::set_min_switch_duration(-29);
	qPrefDivePlanner::set_planner_deco_mode(VPMB);
	qPrefDivePlanner::set_problemsolvingtime(-30);
	qPrefDivePlanner::set_reserve_gas(-31);
	qPrefDivePlanner::set_sacfactor(-32);
	prefs.safetystop = true;
	qPrefDivePlanner::set_safetystop(false);
	prefs.switch_at_req_stop = true;
	qPrefDivePlanner::set_switch_at_req_stop(false);
	prefs.verbatim_plan = true;
	qPrefDivePlanner::set_verbatim_plan(false);

	QCOMPARE(spy1.count(), 1);
	QCOMPARE(spy2.count(), 1);
	QCOMPARE(spy3.count(), 1);
	QCOMPARE(spy4.count(), 1);
	QCOMPARE(spy5.count(), 1);
	QCOMPARE(spy6.count(), 1);
	QCOMPARE(spy7.count(), 1);
	QCOMPARE(spy8.count(), 1);
	QCOMPARE(spy9.count(), 1);
	QCOMPARE(spy10.count(), 1);
	QCOMPARE(spy11.count(), 1);
	QCOMPARE(spy12.count(), 1);
	QCOMPARE(spy13.count(), 1);
	QCOMPARE(spy14.count(), 1);
	QCOMPARE(spy15.count(), 1);
	QCOMPARE(spy16.count(), 1);
	QCOMPARE(spy17.count(), 1);
	QCOMPARE(spy18.count(), 1);
	QCOMPARE(spy19.count(), 1);
	QCOMPARE(spy20.count(), 1);
	QCOMPARE(spy21.count(), 1);
	QCOMPARE(spy22.count(), 1);
	QCOMPARE(spy23.count(), 1);
	QCOMPARE(spy24.count(), 1);
	QCOMPARE(spy25.count(), 1);

	QVERIFY(spy1.takeFirst().at(0).toInt() == -20);
	QVERIFY(spy2.takeFirst().at(0).toInt() == -21);
	QVERIFY(spy3.takeFirst().at(0).toInt() == -22);
	QVERIFY(spy4.takeFirst().at(0).toInt() == -23);
	QVERIFY(spy5.takeFirst().at(0).toInt() == -21);
	QVERIFY(spy6.takeFirst().at(0).toInt() == -24);
	QVERIFY(spy7.takeFirst().at(0).toInt() == -25);
	QVERIFY(spy8.takeFirst().at(0).toInt() == -26);
	QVERIFY(spy9.takeFirst().at(0).toInt() == -27);
	QVERIFY(spy10.takeFirst().at(0).toInt() == -28);
	QVERIFY(spy11.takeFirst().at(0).toBool() == false);
	QVERIFY(spy12.takeFirst().at(0).toBool() == false);
	QVERIFY(spy13.takeFirst().at(0).toBool() == false);
	QVERIFY(spy14.takeFirst().at(0).toBool() == false);
	QVERIFY(spy15.takeFirst().at(0).toBool() == false);
	QVERIFY(spy16.takeFirst().at(0).toBool() == false);
	QVERIFY(spy17.takeFirst().at(0).toBool() == false);
	QVERIFY(spy18.takeFirst().at(0).toInt() == -29);
	QVERIFY(spy19.takeFirst().at(0).toInt() == VPMB);
	QVERIFY(spy20.takeFirst().at(0).toInt() == -30);
	QVERIFY(spy21.takeFirst().at(0).toInt() == -31);
	QVERIFY(spy22.takeFirst().at(0).toInt() == -32);
	QVERIFY(spy23.takeFirst().at(0).toBool() == false);
	QVERIFY(spy24.takeFirst().at(0).toBool() == false);
	QVERIFY(spy25.takeFirst().at(0).toBool() == false);
}