Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Simplify and revise Testing #43

Open
1 task done
stefan-kolb opened this issue Jul 29, 2015 · 5 comments
Open
1 task done

Simplify and revise Testing #43

stefan-kolb opened this issue Jul 29, 2015 · 5 comments

Comments

@stefan-kolb
Copy link
Owner

stefan-kolb commented Jul 29, 2015

The current testing structure is very complex.
Especially the adapter tests use so many dependencies and complex helpers (11 files).
Maybe we can clean this up a bit and make it easier to understand and use for developers.
We should also document it a little more if we need to keep it this way.

Additional restriction I'd like to remove if possible:

You must be allowed to create at least 3 additional applications with your account, otherwise the quota restrictions will invalidate the test results

Maybe we can also drop the 3 applications quota restriction that need to be allowed in each account to be able to run the tests.

cloudControl requires you to change the application names if the previous recording was made within the last 2 days, otherwise if fails because the name is still locked. Change the name in the spec/adapter/v1/cloud_control_spec.rb.

  • We should just auto generate a random name or number for the tests. This should not be done manually.

Credential file syntax and example does not match
https://github.com/croeck/paasal/blob/master/wiki/adapter_tests.md#recording

Syntax only uses user and password whereas the example below uses additional attributes usernameand id which is unclear to me.

@stefan-kolb stefan-kolb added this to the v0.2.0 milestone Jul 29, 2015
@croeck
Copy link
Collaborator

croeck commented Jul 29, 2015

You must be allowed to create at least 3 additional applications with your account, otherwise the quota restrictions will invalidate the test results

Maybe we can also drop the 3 applications quota restriction that need to be allowed in each account to be able to run the tests.

Situation is as follows:
The tests create 2 applications (this could maybe be reduced to one application by executing the tests in a new sequential order) and a third application is attempted to be created but should fail due to a duplicate name. However, some platforms raise the Quota error instead of the obvious naming error. This is why I wrote this requirement.

cloudControl requires you to change the application names if the previous recording was made within the last 2 days, otherwise if fails because the name is still locked. Change the name in the spec/adapter/v1/cloud_control_spec.rb.

We should just auto generate a random name or number for the tests. This should not be done manually.

I fear this is not as simple as it seems. The difficulty are the recorded tests, which expect the same name as when they were recorded. So if the name is auto-generated it won't match the recordings. The obvious workaround to anonymize the application name probably causes more difficulties and complexity than it saves

Credential file syntax and example does not match
https://github.com/croeck/paasal/blob/master/wiki/adapter_tests.md#recording

Syntax only uses user and password whereas the example below uses additional attributes username and id which is unclear to me.

The id is not used at all, but is included in the response objects. I thought It would be better to leave no trace to your personal account.

@stefan-kolb
Copy link
Owner Author

cloudControl naming:
Ouch, yeah i forgot about that, good point. Hm...I need to dig deaper into the tests first for a good evaluation.

Credential file:
I got the id thing, but what about the username field? Typo?

@croeck
Copy link
Collaborator

croeck commented Jul 29, 2015

Credential file: I got the id thing, but what about the username field? Typo?

No, actually not. As written in the file at the very bottom, all information in this file is simply filtered out. So for instance on cloudControl you have your username (more a nickname), lets say crazypaasfrog123 and your email address as user. Even though (as with the id) only the user and password fields are used for authentication, I would not want anyone to know that my username is crazypaasfrog123. Therefore it is named to be filtered out.

Still unclear?

@stefan-kolb
Copy link
Owner Author

No, I understand. But it was just not clear in the context of the example listing, i.e. why it includes more attributes.

stefan-kolb added a commit that referenced this issue Jul 29, 2015
@stefan-kolb
Copy link
Owner Author

The included examples (the right file) are also not super easy to find.

@stefan-kolb stefan-kolb removed this from the v0.3.0 milestone Mar 7, 2016
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants